Commit graph

182270 commits

Author SHA1 Message Date
Eugene Kosov
26c389b7b7 Merge 10.1 into 10.2 2019-07-09 13:22:22 +03:00
Jan Lindström
b9557418cc Galera test adjustments.
Changes to be committed:
	modified:   ../galera/disabled.def
	modified:   ../galera/r/GAL-419.result
	modified:   ../galera/t/GAL-419.test
	modified:   ../galera/t/galera_ist_innodb_flush_logs.test
	modified:   ../galera/t/galera_ist_mariabackup_innodb_flush_logs.test
2019-07-09 08:32:13 +03:00
Varun Gupta
fd08f95322 MDEV-17963: Assertion field_pos < field_count' failed in Protocol_text::store, Assertion field_handlers == 0 || field_pos < field_count'
The problem was that sp_head::MULTI_RESULTS was not set correctly for ANALYZE statement
with SELECT ... INTO variable.
This is a follow up fix for MDEV-7023
2019-07-09 10:25:22 +05:30
Aleksey Midenkov
1153950ad0 Fix test blocking for MDEV-16222 on 10.2
No known reproduction on 10.2

MDEV-16222 Assertion `0' failed in row_purge_remove_sec_if_poss_leaf on table with virtual columns and indexes
2019-07-08 21:12:37 +03:00
Aleksey Midenkov
53dd0e4f75 MDEV-16222 Assertion `0' failed in row_purge_remove_sec_if_poss_leaf on table with virtual columns and indexes
Cause
Stale thd->m_stmt_da->m_sql_errno which is from different invocation.

Fix
Reset error state before attempt to open table.
2019-07-08 20:14:51 +03:00
Aleksey Midenkov
0fe212a880 MDEV-19785 Storage CONNECT compilation error: unknown type name 'UNZFAM'
Another fail fix:

undefined reference to `ZipLoadFile`
2019-07-08 20:14:51 +03:00
Eugene Kosov
838bb9fad4 fix Galera memory leak
This was caused by 7f2cfa8f47
2019-07-08 17:04:18 +03:00
Sergei Petrunia
9abdf11ed1 Update RocksDB the revision that fixes the compile error on power8 2019-07-07 18:17:17 +03:00
HF
02a0ebc613 Make Win compiler happy about the SERVER_AUDIT code. 2019-07-06 12:22:45 +01:00
Eugene Kosov
5ebef42238 MDEV-19292 "Row size too large" error when creating table with lots columns when row format is DYNAMIC or COMPRESSED
Basic idea of the patch: disallow creating tables which allow to create
rows which are too big to insert. In other words, if user created a table user
should never see an errors like 'can not insert row as it is too big for current
page size'.

SET innodb_strict_mode=OFF; will allow to create very long tables and only a
warning will be issued.

dict_table_t::get_overflow_field_local_len(): this function lets know a maximum
local field len for overflow fields for every file and row format.

innobase_check_column_length(): improve name to too_big_key_part_length()
and reuse in a different part of code.

create_table_info_t::prepare_create_table(): add check for maximum allowed
key part length to keep ALGORITHM=COPY behavior similar to ALGORITHM=INPLACE
behavior. Affected test is innodb.strict_mode

Rename dict_index_too_big_for_tree() to
dict_index_t::rec_potentially_too_big(): copy overflow-related size computation
from dtuple_convert_big_rec(). A lot of tests was changed because of that.
I wonder whether users will complain about it?

Test innodb.max_record_size tests dict_index_t::rec_potentially_too_big()
for different row formats and page sizes.
2019-07-05 17:02:21 +03:00
HF
d04961cdb3 Make Win compiler happy. 2019-07-05 12:22:04 +01:00
Alexander Barkov
be22d1ff39 Adding tests for MDEV-17857 Assertion `tmp != ((long long) 0x8000000000000000LL)' failed in TIME_from_longlong_datetime_packed upon SELECT with GROUP BY
(they were forgotten in the previous commit)
2019-07-05 12:06:34 +04:00
Jan Lindström
044d0ffcf3 Disable MW-329 (badly written test case). 2019-07-05 10:25:55 +03:00
Sergei Golubchik
d3c21484be MDEV-19942 Default installation of mariadb-server doesn't allow clients to use client plugins
while client tools technically don't need or depend on libmariadb3.so,
they need client plugins, that come with it.
2019-07-05 08:38:47 +02:00
Alexander Barkov
11f13bff21 MDEV-17857 Assertion `tmp != ((long long) 0x8000000000000000LL)' failed in TIME_from_longlong_datetime_packed upon SELECT with GROUP BY 2019-07-05 09:15:40 +04:00
Jan Lindström
7d56bddfcf Galera test fixes
Changes to be committed:
	modified:   suite/galera/disabled.def
	modified:   suite/galera/r/MW-329.result
	modified:   suite/galera/r/galera_var_notify_cmd.result
	modified:   suite/galera/t/MW-329.test
	modified:   suite/galera/t/galera_binlog_stmt_autoinc.test
	modified:   suite/galera/t/galera_var_notify_cmd.test
2019-07-05 06:51:29 +03:00
Jan Lindström
fee61edd44 MDEV-19939: Galera test failure on galera_toi_ddl_fk_insert
Add sync wait to make sure selects see correct consistent db.
2019-07-04 19:42:55 +03:00
Jan Lindström
24aa723a28 Update Galera failing test list and record correct results
for passing ones.

Changes to be committed:
	new file:   mysql-test/std_data/galera-cert.pem
	new file:   mysql-test/std_data/galera-key.pem
	new file:   mysql-test/std_data/galera-upgrade-ca-cert.pem
	new file:   mysql-test/std_data/galera-upgrade-server-cert.pem
	new file:   mysql-test/std_data/galera-upgrade-server-key.pem
	modified:   mysql-test/suite/galera/disabled.def
	modified:   mysql-test/suite/galera/r/MW-416.result
	modified:   mysql-test/suite/galera/r/MW-44.result
	modified:   mysql-test/suite/galera/r/galera_sst_mysqldump_with_key,debug.rdiff
	modified:   mysql-test/suite/galera/r/galera_sst_mysqldump_with_key.result
	modified:   mysql-test/suite/galera/t/MW-416.test
	modified:   mysql-test/suite/galera/t/galera_kill_applier.test
2019-07-04 19:42:30 +03:00
Sergei Golubchik
bee24fe181 MDEV-19726 MariaDB server or backup RPM install assumes mysql user exists
mysqld_safe shouldn't try to mkdir or chown if --dry-run
2019-07-04 18:19:52 +02:00
Sergei Golubchik
1003c76eb4 fix incorrect shell usage 2019-07-04 18:19:52 +02:00
Sergei Golubchik
971bef89ab MDEV-19481 mariadb-10.3.15-linux-systemd-x86_64/bin/mysqld: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' and 'GLIBCXX_3.4.21' not found
don't ignore LIBSYSTEMD_LDFLAGS when trying out systemd

(and put them in LIBSYSTEMD, because MYSQLD_LINK_FLAGS has stuff like
-lmtmalloc and is used only for mysqld, not for, say, explain_filename-t)

LIBSYSTEMD_LDFLAGS come from libsystemd.pc via pkg-config
2019-07-04 18:19:52 +02:00
Sergei Petrunia
c17b0b734c MDEV-19936: MyRocks: compile fails on Windows
(Cumulative diff, back-port to 10.2)
Remove other unneeded files which cause compile
warnings-treated-as-errors errors on Windows.
2019-07-04 00:53:07 +03:00
Alexey Botchkov
a099284b71 MDEV-19851 server_audit plugin should not allow server_audit_output_type=SYSLOG on Windows.
'syslog' output type disabled on Windows.
2019-07-03 16:41:01 +04:00
Jan Lindström
69e1d65cce Update Galera failing test list. 2019-07-03 15:16:37 +03:00
Marko Mäkelä
24403da91a Remove unused const TABLE_HASH_SIZE 2019-07-03 14:42:04 +03:00
Robert Bindar
666730ee52 Fix gcc-8 warning in rocksdb 2019-07-03 14:32:24 +03:00
Marko Mäkelä
a946b36601 Fix the compilation after the parent commit
Up to MariaDB 10.2, field_name is still a C-style string.
2019-07-02 22:25:48 +03:00
Marko Mäkelä
c1cb5c17be MDEV-19869: Correct the logic, and avoid type mismatch 2019-07-02 21:40:34 +03:00
Marko Mäkelä
0c6514eece MDEV-19781: Skip the test for embedded server 2019-07-02 21:33:54 +03:00
Marko Mäkelä
7f1e1309bb MDEV-12626: Import innodb_buffer_pool_dump_pct adjusted for MDEV-11454 2019-07-02 15:24:23 +03:00
Marko Mäkelä
6bb922e58e MDEV-13626: Import and adjust innodb.blob-crash 2019-07-02 15:18:12 +03:00
Anel Husakovic
bf37b9fce9 MDEV-19636 Usage message for plugin activation - add FORCE_PLUS_PERMANENT 2019-07-02 12:03:39 +03:00
Jan Lindström
b105427745 MDEV-19660: wsrep_rec_get_foreign_key() is dereferencing a stale pointer to a page that was previously latched
In row_ins_foreign_check_on_constraint(), clustered index record is being passed to wsrep_append_foreign_key() after releasing the latch. If a record has been changed by other thread in the meantime then it could lead to a crash when
wsrep_rec_get_foreign_key () tries to access the record.

row_ins_foreign_check_on_constraint
	Use cascade->pcur->old_rec instead of clust_rec.

row_ins_check_foreign_constraint
	Add missing error printout.
2019-07-02 10:06:13 +03:00
Thirunarayanan Balathandayuthapani
41f6e68878 MDEV-19781 Add page id matching check in innochecksum tool
- Changed the assert to ignore SRV_LOG_SPACE_FIRST_ID. Post push
fix to address the previous commit failure.
2019-07-01 21:58:20 +05:30
Thirunarayanan Balathandayuthapani
40c1f4bd4c MDEV-19781 Add page id matching check in innochecksum tool
Changed the debug insert inside fil_io() to check whether it writes
the page to wrong offset only for user tablespace.
2019-07-01 20:21:26 +05:30
Thirunarayanan Balathandayuthapani
dca9792a24 MDEV-17228 Encrypted temporary tables are not encrypted
- log_crypt_init() should be called from create_log_files(). Because
it should re-create the new random nonce compared to the old ones.
2019-07-01 18:50:44 +05:30
Marko Mäkelä
5a136d84f3 MDEV-19766: Disable page dump output in debug builds
The test innodb.leaf_page_corrupted_during_recovery
fails on buildbot with

Warning	1406	Data too long for column 'line' at row 10
line
 len 16384; hex ...

because of a page dumps that InnoDB is generating for a corrupted page

Since this test is using debug instrumentation, we will solve the
issue by disabling page dumps in debug builds altogether. Users of
debug builds will likely know how to extract page dumps in other means.

Page dump output could sometimes be useful when diagnosing problems
that users are facing. Hence we will keep the page dump output in
non-debug (release) builds.
2019-07-01 13:27:12 +03:00
Vicențiu Ciorbaru
82bb108ea9 Update test case 2019-07-01 13:15:20 +03:00
YunQiang Su
3816c411bf repair_symlink-5543 fails: ELOOP is 90
On mips,  ELOOP is 90, instead of 40 or 20.
So we need to replace_regex 90 to 20, too.
2019-07-01 13:13:35 +03:00
Thirunarayanan Balathandayuthapani
85d0a1955f MDEV-19914 Server startup fails while dropping garbage encrypted tablespace if innodb_encryption_threads > 0
- Avoiding accessing encryption thread mutex before initiating
the encryption threads
2019-07-01 15:21:17 +05:30
Thirunarayanan Balathandayuthapani
ed6da51f3e MDEV-19869 Port innodb_fts.fulltext2 from mysql to mariadb.
- Ported mysql Bug#20597981 test case to mariadb-10.2
- InnoDB never used fts_doc_id_in_read_set. Basically it tells
innodb to read the fts_doc_id from the index record itself.
2019-07-01 13:46:56 +05:30
Sachin
85f1022410 Fix galera_log_bin
Cleanup the nodes before and after test run
2019-06-29 01:08:30 +05:30
Sujatha
49ec78ab70 MDEV-19370: rpl.kill_race_condition failed in buildbot with Wrong value for slave parameter
Problem:
=======
Executing test with following options will result in test failure.

./mtr rpl.kill_race_condition{,,,,,,,,,,} --repeat=10 --par 12 --mem

Fix:
====
Test simulates applier thread kill scenario while applying a row event.  But it
doesn't wait for applier to catch the error stop.

Added :wait_for_slave_sql_error.inc to catch the error.

Test uses START SLAVE as a final step and doesn't wait for both threads to
start.

Added: start_slave.inc
2019-06-28 19:54:15 +03:00
Andrei Elkin
5c1f51835a MDEV-19904 poradic buildbot failures in rpl.rpl_semi_sync_uninstall_plugin
The test allowed non-deterministic execution thanks to unresetable status
var of Slave_connections.

Fixed with expecting a correct value for Slaves_connected.
2019-06-28 18:34:58 +03:00
Thirunarayanan Balathandayuthapani
723a4b1d78 MDEV-17228 Encrypted temporary tables are not encrypted
- Introduce a new variable called innodb_encrypt_temporary_tables which is
a boolean variable. It decides whether to encrypt the temporary tablespace.
- Encrypts the temporary tablespace based on full checksum format.
- Introduced a new counter to track encrypted and decrypted temporary
tablespace pages.
- Warnings issued if temporary table creation has conflict value with
innodb_encrypt_temporary_tables
- Added a new test case which reads and writes the pages from/to temporary
tablespace.
2019-06-28 19:07:59 +05:30
Thirunarayanan Balathandayuthapani
e4a0dbfb4a MDEV-19781 Add page id matching check in innochecksum tool
Added the condition in innochecksum tool to check page id mismatch.
This could catch the write corruption caused by InnoDB.

Added the debug insert inside fil_io() to check whether it writes
the page to wrong offset.
2019-06-28 18:58:52 +05:30
Monty
f7a4a8719b MDEV-14996 kill during FLUSH TABLES FOR EXPORT causes assert 2019-06-27 20:57:25 +03:00
Vladislav Vaintroub
51c3a5c840 MDEV-19893 Do not send error packets with seqno= 0 2019-06-27 16:50:39 +02:00
Vladislav Vaintroub
dc11aab9b3 MDEV-19889 In CMakeLists.txt, use ${CMAKE_CPACK_COMMAND},rather than just cpack 2019-06-27 15:18:02 +02:00
Marko Mäkelä
92feac53a6 MDEV-19886 InnoDB returns misleading ER_NO_SUCH_TABLE_IN_ENGINE
A fix in MySQL 5.7.6 was not completely merged to MariaDB:
Bug#19419026 WHEN A TABLESPACE IS NOT FOUND, DO NOT REPORT "TABLE NOT FOUND"
2019-06-27 15:39:04 +03:00