1
0
mirror of https://github.com/MariaDB/server.git synced 2025-10-12 12:25:37 +03:00
Commit Graph

185563 Commits

Author SHA1 Message Date
Marko Mäkelä
1933cf98e8 Merge 5.5 into 10.0 2019-03-26 14:13:46 +02:00
Marko Mäkelä
42fd537244 Merge 10.0 into 10.1 2019-03-26 13:51:40 +02:00
Marko Mäkelä
065ba53ccb MDEV-12711 mariabackup --backup is refused for multi-file system tablespace
Before MDEV-12113 (MariaDB Server 10.1.25), on shutdown InnoDB would write
the current LSN to the first page of each file of the system tablespace.
This is incompatible with MariaDB's InnoDB table encryption, because
encryption repurposed the field for an encryption key ID and checksum.

buf_page_is_corrupted(): For the InnoDB system tablespace, skip
FIL_PAGE_FILE_FLUSH_LSN when checking if a page is all zero,
because the first page of each file in the system tablespace can
contain nonzero bytes in the field.
2019-03-26 13:51:15 +02:00
Alexander Barkov
6fbbb0853e MDEV-18968 Both (WHERE 0.1) and (WHERE NOT 0.1) return empty set 2019-03-26 11:37:18 +04:00
Sergey Vojtovich
e890711279 Fixed ps-protocol thread_pool_server_audit failure
By applying 7bd258c.
2019-03-26 00:56:41 +04:00
Bernhard M. Wiedemann
cfe0fe1ad1 Fix tests in 2020
unfortunately, the year 2038 problem prevented me from pushing
the deadline even further into the future.
2019-03-26 00:56:41 +04:00
Daniel Bartholomew
b30bbb7d9a bump the VERSION 2019-03-25 12:53:20 -04:00
Marko Mäkelä
8b480df63e Merge 10.3 into 10.4 2019-03-25 17:18:15 +02:00
Marko Mäkelä
07096ada9b Fix the Windows build
btr_cur_compress_recommendation(): Backport a change from 10.3.

This is a follow-up to commit 1bd9815479.
2019-03-25 17:15:34 +02:00
Marko Mäkelä
dbc0d576a3 Merge 10.2 into 10.3 2019-03-25 16:14:39 +02:00
Marko Mäkelä
525e79b057 MDEV-19022: InnoDB fails to cleanup useless B-tree pages
The test case for reproducing MDEV-14126 demonstrates that InnoDB can
end up with an index tree where a non-leaf page has only one child page.

The test case innodb.innodb_bug14676111 demonstrates that such pages
are sometimes unavoidable, because InnoDB does not implement any sort
of B-tree rotation.

But, there is no reason to allow a root page with only one child page.

btr_cur_node_ptr_delete(): Replaces btr_node_ptr_delete().

btr_page_get_father(): Declare globally.

btr_discard_only_page_on_level(): Declare with ATTRIBUTE_COLD.
It turns out that this function is not covered by the
innodb.innodb_bug14676111 test case after all.

btr_discard_page(): If the root page ends up having only one child
page, shrink the tree by invoking btr_lift_page_up().
2019-03-25 16:03:24 +02:00
Marko Mäkelä
ade0a0e9d5 Avoid sign mismatch in comparisons
This is follow-up to commit 1bd9815479.
2019-03-25 16:00:06 +02:00
Marko Mäkelä
1bd9815479 MDEV-14126: Fix type mismatch
Backport some changes to B-tree page accessor functions from 10.3,
including changing page_get_n_recs() to return uint16_t.
2019-03-25 11:27:29 +02:00
Marko Mäkelä
c3a6c683e2 Merge 10.2 into 10.3 2019-03-25 11:03:19 +02:00
Marko Mäkelä
72b934e3f7 MDEV-14126: Detect unexpected emptying of B-tree pages
If an index page becomes empty, btr_page_empty() should be called.
2019-03-25 10:53:01 +02:00
Marko Mäkelä
a4d0d6828b MDEV-14126: Improve assertions in btr_pcur_store_position() 2019-03-25 10:53:00 +02:00
Marko Mäkelä
b59d484696 MDEV-14126: Remove page_is_root()
The predicate page_is_root(), which was added in MariaDB Server 10.2.2,
is based on a wrong assumption.

Under some circumstances, InnoDB can transform B-trees into a degenerate
state where a non-leaf page has no sibling pages. Because of this,
we cannot assume that a page that has no siblings is the root page.
This bug will be tracked as MDEV-19022.

Because of the bug that may affect many InnoDB data files, we must remove
and replace the wrong predicate. Using the wrong predicate can cause
corruption. A leaf page is not allowed to be empty except if it is the
root page, and the entire table is empty.
2019-03-25 10:53:00 +02:00
Marko Mäkelä
71c781bfe7 MDEV-18090 Assertion failures due to virtual columns after upgrading to 10.2
MariaDB before MDEV-5800 in version 10.2.2 did not support
indexed virtual columns. Non-persistent virtual columns were
hidden from storage engines. Only starting with MDEV-5800, InnoDB
would create internal metadata on virtual columns.

Similar to what was done in MDEV-18084 and MDEV-18960, we adjust two more
code paths for the old tables.

ha_innobase::build_template(): Do not invoke
dict_index_contains_col_or_prefix() for virtual columns if InnoDB
does not store the metadata.

innobase_build_col_map(): Relax an assertion about the number of columns.

ha_innobase::omits_virtual_cols(): Renamed from omits_virtual_cols().
2019-03-25 10:29:48 +02:00
Alexander Barkov
f03f4da663 SEQUENCE tests for MDEV-18892 Regression in slow log and admin statements
Adding tests to cover how SEQUENCE related statements work in combination
with the slow log configuration commands.
2019-03-25 07:43:07 +04:00
Chris Calender
c61e8a6597 Fix for MDEV-17449, typo in error message (#1146) 2019-03-24 21:24:28 +04:00
Sergei Golubchik
77e2aca3f0 cmake 3.14
new location for CPackRPM.cmake
mariadb-10.2.23
2019-03-23 14:33:36 +01:00
Sergey Vojtovich
c0ba036b77 Fixed build failure 2019-03-23 17:12:23 +04:00
Sachin
901e3ddf79 MDEV-18904 Assertion `m_part_spec.start_part >= m_part_spec.end_part' failed in ha_partition::index_read_idx_map
Remove the DBUG_ASSERT
2019-03-23 18:26:50 +05:30
Sachin
0c567648a4 Revert (MDEV-18888)2b06de8064660c5c, fix it in different way And add test case for MDEV-18953 2019-03-23 18:25:58 +05:30
Elena Stepanova
0e56eba9d5 Updated list of unstable tests for 10.2.23 2019-03-23 11:29:24 +01:00
Andrey
ef33e26f6e Add Clion folder to gitignore (#928) 2019-03-23 01:47:29 +04:00
Chris Calender
2d6e627a9f Fix for MDEV-18276, typo in error message + all other occurrences of refering 2019-03-23 00:10:18 +04:00
Chris Calender
d8b7e76c37 Fix for MDEV-18276, typo in error message + all other occurrences of refering 2019-03-23 00:00:47 +04:00
Eugene Kosov
dcdeb39480 remove dead code
found by @marko
2019-03-22 23:08:46 +04:00
Eugene Kosov
1d77a566ea remove dead code 2019-03-22 23:08:19 +04:00
Eugene Kosov
92d1c9611e remove dead code 2019-03-22 23:07:13 +04:00
Eugene Kosov
2327d4e430 remove unused method 2019-03-22 23:00:42 +04:00
Eugene Kosov
67b601c503 remove unused argument 2019-03-22 22:57:16 +04:00
Eugene Kosov
8e9c5d1057 remove dead code 2019-03-22 22:53:16 +04:00
Eugene Kosov
a07e29a0e5 cleanup TABLE_SHARE 2019-03-22 22:50:17 +04:00
Eugene Kosov
53216091dd remove dead code 2019-03-22 22:33:27 +04:00
Eugene Kosov
a97ca9fe5b remove dead code 2019-03-22 22:31:26 +04:00
Eugene Kosov
a523444eda remove dead code 2019-03-22 22:30:36 +04:00
Sergei Golubchik
07c3e90210 MDEV-18954 numa dynamic dependency
don't link with libnuma in release builds
2019-03-22 15:42:10 +01:00
Sergei Golubchik
a794db9ade cmake: remove unused variable 2019-03-22 15:40:30 +01:00
FaramosCZ
ed643f4bb3 Fix resource leak
The 'bitmap_dir' has to be closed when no longer needed
2019-03-22 16:19:30 +04:00
Alexander Barkov
f704361cd6 Backporting slow log simulation logic details from 10.2 to 10.1
Simulate slow statements only for COM_QUERY and COM_STMT_EXECUTE commands,
to exclude mysqld_stmt_prepare() and mysqld_stmt_close() entries from the log,
as they are not relevant for log_slow_debug.test. This simplifies the test.
2019-03-22 15:56:45 +04:00
FaramosCZ
9c9bf9642e Fix resource leak 2019-03-22 15:48:26 +04:00
FaramosCZ
89e390b7ce Fix resource leak 2019-03-22 15:20:56 +04:00
Marko Mäkelä
ca80e14a88 Merge 10.3 into 10.4 2019-03-22 13:20:44 +02:00
FaramosCZ
9ff713d33a Fix resource leak 2019-03-22 14:52:30 +04:00
Alexander Barkov
1c60f40868 Merge remote-tracking branch 'origin/10.2' into 10.3 2019-03-22 14:41:36 +04:00
Marko Mäkelä
50a8fc5298 MDEV-18224 MTR's internal check of the test case 'innodb.recovery_shutdown' failed due to extra #sql-ib*.ibd files
The test innodb.recovery_shutdown would occasionally fail,
because recovered incomplete transactions would be conflicting
with DROP TABLE, causing the background drop table queue to be invoked.

Add a slow shutdown before dropping the tables, so that the
recovered transactions will be rolled back. Starting with MDEV-14705,
normal shutdown would abort the rollback of recovered transactions.
2019-03-22 11:16:06 +02:00
Marko Mäkelä
031fa8f1d2 Merge 10.1 into 10.2 2019-03-22 11:15:21 +02:00
sachin
778c525ff8 MDEV-17119 replicate_rewrite_db does not work for single chardatabase name
Fixed issue in logic.
2019-03-22 12:13:24 +05:30