Commit graph

65987 commits

Author SHA1 Message Date
Sergei Golubchik
735a4a17c2 MDEV-10508 Mariadb crash on out of disk space during dump import
update info->write_end and info->write_pos together, with no
"return on error" in between, otherwise write_end might end up being
smaller than write_pos
2016-09-28 17:59:11 +02:00
Sergei Golubchik
66d9696596 Merge branch '10.0' into 10.1 2016-09-28 17:55:28 +02:00
Sergei Golubchik
77ce4ead81 Merge branch '5.5' into 10.0 2016-09-27 09:21:19 +02:00
Jan Lindström
661d08c36c MDEV-10887: innodb.innodb_stats_fetch_nonexistent fails in buildbot on Windows
Problem was that test innodb.innodb_stats_fetch_corrupted will post
a error InnoDB: Error: Table "mysql"."innodb_index_stats" not found
to a error log and test ignores that message. However, following tests
might see this error also and they might not ignore this error.
Force a server restart after innodb.innodb_stats_fetch_corrupted
to get clean log.
2016-09-27 07:54:27 +03:00
Jan Lindström
4e2a0c34b0 MDEV-10888: encryption.filekeys_emptyfile fails in buildbot with valgrind
Problem was that length of the filekeys file was not checked and if
length is less than OpenSSL_prefix_len uninitialized memory was
accessed.
2016-09-27 07:54:27 +03:00
Sergei Golubchik
d61e5260fb MDEV-10441 Document the server_audit_loc_info variable
fix PLUGIN_VAR_NOSYSVAR | PLUGIN_VAR_NOCMDOPT plugin thdvars to work.
use that for server_audit_loc_info
2016-09-26 17:48:08 +02:00
Vladislav Vaintroub
c91fdb66db Windows , mtr : allow cdb to print core dumps also if --parallel > 1 2016-09-26 13:03:02 +02:00
Sergei Golubchik
677c44f0c3 MDEV-10775 System table in InnoDB format allowed in MariaDB could lead to crash
when opening a system table for a SELECT-like read, pretend
(for the sake of engines) it's SQLCOM_SELECT
2016-09-23 20:27:58 +02:00
Jan Lindström
e136aa1ba7 Fix test failure. Need to mask more tablespace numbers as they
are not consistent on parallel mtr runs.
2016-09-23 09:11:11 +03:00
Jan Lindström
1d55cfce10 Do not use os_file_read() directly for reading first page of the
tablespace. Instead use fil_read() with syncronous setting.
Fix test failures and mask tablespace number as it could
change in concurrent mtr runs.
2016-09-22 21:47:27 +03:00
Jan Lindström
2bedc3978b MDEV-9931: InnoDB reads first page of every .ibd file at startup
Analysis: By design InnoDB was reading first page of every .ibd file
at startup to find out is tablespace encrypted or not. This is
because tablespace could have been encrypted always, not
encrypted newer or encrypted based on configuration and this
information can be find realible only from first page of .ibd file.

Fix: Do not read first page of every .ibd file at startup. Instead
whenever tablespace is first time accedded we will read the first
page to find necessary information about tablespace encryption
status.

TODO: Add support for SYS_TABLEOPTIONS where all table options
encryption information included will be stored.
2016-09-22 16:38:24 +03:00
Alexander Barkov
9f837c6e1a MDEV-10864 Wrong result for WHERE .. (f2=COMPRESS('test') OR f2=COMPRESS('TEST')) 2016-09-22 10:03:12 +04:00
Alexander Barkov
7e4eb990ad MDEV-10425 Assertion `collation.derivation == DERIVATION_IMPLICIT' failed in Item_func_conv_charset::fix_length_and_dec()
MDEV-10850 Wrong result for WHERE .. (f2=TO_BASE64('test') OR f2=TO_BASE64('TEST'))

Problem N1: MDEV-10425
Item_func_{md5|sha|sha2}::fix_length_and_dec() changed args[0]->collation
to force binary comparison in args[0]->eq().
It was done to treat e.g. MD5('a') and MD5('A') as different values.
It is wrong for a Item_func_xxx to modify its arguments.
Item_func_conv_charset did not expect that and crashed on assert.

Problem N2: MDEV-10850
Item_func_to_base64, Item_func_password, Item_func_hex are also case sensitive
hash functions, but they did not compare their arguments as binary.

Solution:
- Removing the code changing args[0]->collation
- Introducing Item_str_ascii_checksum_func as a common parent
  for Item_func_{md5|sha|sha2|password|hex|to_base64}
  and overriding its eq() method to compare arguments binary.
2016-09-22 07:00:10 +04:00
Alexander Barkov
ec7e0b7b30 MDEV-10556 Assertion `0' failed in virtual void Item_sum_field::set_result_field(Field*) 2016-09-21 09:13:33 +04:00
Nirbhay Choubey
6eca463cae Fix typo in valgrind.supp 2016-09-20 15:17:57 -04:00
iangilfillan
fd0c114c5d Update contributors 2016-09-19 12:31:19 +04:00
Sergei Golubchik
0da39cacee fix BIGINT+MEDIUMINT type aggregation 2016-09-12 16:42:05 +02:00
Sergei Golubchik
a229091953 potential signedness issue
different fix for 07a33cdcef:

Bug #23296299 : HANDLE_FATAL_SIGNAL (SIG=11) IN MY_TOSORT_UTF32
2016-09-12 16:41:54 +02:00
Sergei Golubchik
7ae555c114 Merge branch 'mysql/5.5' into 5.5
80% reverted
2016-09-11 20:51:09 +02:00
Kristian Nielsen
b34d7fba31 Debian bug#837369 - test failures on hppa
ENOTEMPTY is 247 on hppa, not 39 like on Linux, according to this report:

  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=837369

So add another replacement for this to rpl.rpl_drop_db and
binlog.binlog_databasae tests (there were already a couple similar
replacements for other platforms).

Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
2016-09-11 11:18:27 +02:00
Kristian Nielsen
577f3c1dce Fix use of require in mysql-test-run.
The motivation for this is that Perl is moving towards not having
current directory ./ in @INC by default. This is causing
mysql-test-run.pl to fail in latest Debian Unstable:

  https://lists.debian.org/debian-devel-announce/2016/08/msg00013.html

However, we have `use "lib"`, there is no need for current directory
in @INC, except for a gross hack. In mtr_cases.pm, there is a
`require "mtr_misc.pl"`, which hides mtr_misc.pl away in mtr_cases
namespace. And things only work because mysql-test-run.pl loads it
with a different name, `require "lib/mtr_misc.pl"`! (Perl will
`require` only once for each unique filename).

Fix this by only using `require` in main program, and referencing
functions with :: scope from other namespaces. For multi-use in
different namespaces, proper `use` modules should be used.

Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
2016-09-10 17:50:32 +02:00
Kristian Nielsen
bb2c1a52c6 Merge parallel replication async deadlock kill into 10.1 2016-09-09 11:53:50 +02:00
Alexander Barkov
de7f87708a MDEV-10702 Crash in SET STATEMENT FOR EXECUTE 2016-09-09 08:40:24 +04:00
Kristian Nielsen
7e0c9de864 Parallel replication async deadlock kill
When a deadlock kill is detected inside the storage engine, the kill
is not done immediately, to avoid calling back into the storage engine
kill_query method with various lock subsystem mutexes held. Instead the
kill is queued and done later by a slave background thread.

This patch in preparation for fixing TokuDB optimistic parallel
replication, as well as for removing locking hacks in InnoDB/XtraDB in
10.2.

Signed-off-by: Kristian Nielsen <knielsen at knielsen-hq.org>
2016-09-08 15:25:40 +02:00
Sergei Golubchik
8494039757 fix the test to work
without preceding sys_vars.wsrep_provider_basic
2016-09-06 16:34:25 +02:00
Sergei Golubchik
61fd38a1de update plugin maturities 2016-09-05 17:11:14 +02:00
Sergei Petrunia
a14f61ef74 MDEV-7142: main.index_merge_innodb fails sporadically in buildbot
Attempt to stabilize the testcase.
2016-09-05 12:28:35 +03:00
Nirbhay Choubey
747893a854 MDEV-10545: Update perfschema.nesting result 2016-09-02 14:40:09 -04:00
Oleksandr Byelkin
b9631e310b MDEV-8833 Crash of server on prepared statement with conversion to semi-join
Correct context chain made to allow outer fields pullout.
2016-09-02 18:34:37 +02:00
Oleksandr Byelkin
a322651b8a MDEV-10017: Get unexpected Empty Set for correlated subquery with aggregate functions
take into account all arguments of aggregate function
2016-08-31 19:12:35 +02:00
Oleksandr Byelkin
a02642b66e MDEV-10017: Get unexpected Empty Set for correlated subquery with aggregate functions (part 1)
Make aggregate function dependency visible.
2016-08-29 16:17:46 +02:00
Elena Stepanova
7d115e73b8 MDEV-10604 Create a list of unstable MTR tests to be disabled in distribution builds
List of unstable tests for 10.1
2016-08-27 19:50:42 +03:00
Sergei Golubchik
a66092f2eb Merge branch 'bb-10.1-serg' into 10.1 2016-08-26 10:12:47 +02:00
Nirbhay Choubey
3575618237 Post merge fixes. 2016-08-25 21:28:26 -04:00
Nirbhay Choubey
90266e8a0e Merge branch '10.0-galera' into bb-10.1-serg 2016-08-25 15:39:39 -04:00
Sergei Golubchik
dfa3046db4 fix a test for windows 2016-08-25 15:11:21 +02:00
Sergei Golubchik
6b1863b830 Merge branch '10.0' into 10.1 2016-08-25 12:40:09 +02:00
Monty
ee97274ca7 DEV-10595 MariaDB daemon leaks memory with specific query
The issue was that in some extreme cases when doing GROUP BY,
buffers for temporary blobs where not properly cleared.
2016-08-25 09:50:04 +03:00
Nirbhay Choubey
c309e99ff9 Merge branch '10.0' into 10.0-galera 2016-08-24 19:30:32 -04:00
Nirbhay Choubey
8b09db8bfb Fixes/improvements in galera test suite 2016-08-24 17:13:20 -04:00
Nirbhay Choubey
1b7c5dedf7 MDEV-10566: Create role statement replicated inconsistently in Galera Cluster
In galera cluster, the definer (and thus binlog invoker) must be set
for CREATE ROLE before Query_log_event is created during TOI on the
originating node.
2016-08-24 15:32:48 -04:00
Sergei Golubchik
ea91bb6801 MDEV-10361 Crash in pam_securid.so with auth_pam connecting from SQLyog
auth_pam: debug output
2016-08-24 20:41:26 +02:00
Elena Stepanova
5bbe929d70 MDEV-10604 Create a list of unstable MTR tests to be disabled in distribution builds
- mysql-test/unstable-tests list is created, it includes
  = tests identified as unstable by Debian;
  = tests which failed in buildbot on 10.0 over the last ~6 months and were not fixed;
  = tests which have been recently modified or newly added
- '*' wildcard is now supported in skip lists
2016-08-24 17:39:57 +03:00
Nirbhay Choubey
2024cddaa4 MDEV-10518: Large wsrep_gtid_domain_id may break IST
wsrep_gtid_domain_id was incorrectly being parsed and stored
as a signed long number on the joiner node.
2016-08-22 21:27:20 -04:00
Monty
b51109693e MDEV-10630 rpl.rpl_mdev6020 fails in buildbot with timeout
The issue was that when running with valgrind the wait for master_pos_Wait()
was not long enough.

This patch also fixes two other failures that could affect rpl_mdev6020:
- check_if_conflicting_replication_locks() didn't properly check domains
- 'did_mark_start_commit' was after signals to other threads was sent which could
  get the variable read too early.
2016-08-22 10:16:00 +03:00
Nirbhay Choubey
3f481e52e4 Fixes for failing tests (post-merge). 2016-08-21 20:09:05 -04:00
Philip Stoev
f01a16b541 Galera MTR Tests: fortify galera_bf_abort_flush_for_export against sporadic failures. 2016-08-21 16:20:07 -04:00
Philip Stoev
30c6ac3cd1 Galera MTR Tests: Attempt to fortify galera_kill_ddl.test against sporadic failures 2016-08-21 16:20:07 -04:00
Philip Stoev
0656453135 Galera MTR Tests: increase timeouts and adjust some sporadically-failing tests so that the Galera suites can be run with --parallel=4 2016-08-21 16:17:18 -04:00
Philip Stoev
85b9718b22 Galera MTR Tests: Test case for galera#414 - crash on shutdown with gcs.max_packet_size=2 2016-08-21 16:17:18 -04:00