Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
MDEV-19238 Mariadb spider - crashes on where null
(fix and explanation came with MDEV-20753 (duplicate of this bug))
- Loading branch information
1 parent
b7408be
commit 896b869
Showing
5 changed files
with
200 additions
and
0 deletions.
There are no files selected for viewing
11 changes: 11 additions & 0 deletions
11
storage/spider/mysql-test/spider/bugfix/include/select_by_null_deinit.inc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
--let $MASTER_1_COMMENT_2_1= $MASTER_1_COMMENT_2_1_BACKUP | ||
--let $CHILD2_1_DROP_TABLES= $CHILD2_1_DROP_TABLES_BACKUP | ||
--let $CHILD2_1_CREATE_TABLES= $CHILD2_1_CREATE_TABLES_BACKUP | ||
--let $CHILD2_1_SELECT_TABLES= $CHILD2_1_SELECT_TABLES_BACKUP | ||
--disable_warnings | ||
--disable_query_log | ||
--disable_result_log | ||
--source ../t/test_deinit.inc | ||
--enable_result_log | ||
--enable_query_log | ||
--enable_warnings |
24 changes: 24 additions & 0 deletions
24
storage/spider/mysql-test/spider/bugfix/include/select_by_null_init.inc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
--disable_warnings | ||
--disable_query_log | ||
--disable_result_log | ||
--source ../t/test_init.inc | ||
--enable_result_log | ||
--enable_query_log | ||
--enable_warnings | ||
--let $MASTER_1_COMMENT_2_1_BACKUP= $MASTER_1_COMMENT_2_1 | ||
let $MASTER_1_COMMENT_2_1= | ||
COMMENT='table "tbl_a", srv "s_2_1"'; | ||
--let $CHILD2_1_DROP_TABLES_BACKUP= $CHILD2_1_DROP_TABLES | ||
let $CHILD2_1_DROP_TABLES= | ||
DROP TABLE IF EXISTS tbl_a; | ||
--let $CHILD2_1_CREATE_TABLES_BACKUP= $CHILD2_1_CREATE_TABLES | ||
let $CHILD2_1_CREATE_TABLES= | ||
CREATE TABLE tbl_a ( | ||
pkey int NOT NULL, | ||
PRIMARY KEY (pkey) | ||
) $CHILD2_1_ENGINE $CHILD2_1_CHARSET; | ||
--let $CHILD2_1_SELECT_TABLES_BACKUP= $CHILD2_1_SELECT_TABLES | ||
let $CHILD2_1_SELECT_TABLES= | ||
SELECT pkey FROM tbl_a ORDER BY pkey; | ||
let $CHILD2_1_SELECT_ARGUMENT1= | ||
SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; |
90 changes: 90 additions & 0 deletions
90
storage/spider/mysql-test/spider/bugfix/r/select_by_null.result
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
for master_1 | ||
for child2 | ||
child2_1 | ||
child2_2 | ||
child2_3 | ||
for child3 | ||
|
||
this test is for MDEV-16279 | ||
|
||
drop and create databases | ||
connection master_1; | ||
CREATE DATABASE auto_test_local; | ||
USE auto_test_local; | ||
connection child2_1; | ||
SET @old_log_output = @@global.log_output; | ||
SET GLOBAL log_output = 'TABLE,FILE'; | ||
CREATE DATABASE auto_test_remote; | ||
USE auto_test_remote; | ||
|
||
create table and insert | ||
connection child2_1; | ||
CHILD2_1_CREATE_TABLES | ||
TRUNCATE TABLE mysql.general_log; | ||
connection master_1; | ||
CREATE TABLE tbl_a ( | ||
pkey int NOT NULL, | ||
PRIMARY KEY (pkey) | ||
) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_2_1 | ||
INSERT INTO tbl_a (pkey) VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); | ||
INSERT INTO tbl_a (pkey) VALUES (10),(11),(12),(13),(14),(15),(16),(17),(18),(19); | ||
INSERT INTO tbl_a (pkey) VALUES (20),(21),(22),(23),(24),(25),(26),(27),(28),(29); | ||
FLUSH TABLES; | ||
|
||
select test 1 | ||
connection child2_1; | ||
TRUNCATE TABLE mysql.general_log; | ||
connection master_1; | ||
SELECT pkey FROM tbl_a WHERE NULL; | ||
pkey | ||
connection child2_1; | ||
SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; | ||
argument | ||
SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %' | ||
SELECT pkey FROM tbl_a ORDER BY pkey; | ||
pkey | ||
0 | ||
1 | ||
2 | ||
3 | ||
4 | ||
5 | ||
6 | ||
7 | ||
8 | ||
9 | ||
10 | ||
11 | ||
12 | ||
13 | ||
14 | ||
15 | ||
16 | ||
17 | ||
18 | ||
19 | ||
20 | ||
21 | ||
22 | ||
23 | ||
24 | ||
25 | ||
26 | ||
27 | ||
28 | ||
29 | ||
|
||
deinit | ||
connection master_1; | ||
DROP DATABASE IF EXISTS auto_test_local; | ||
connection child2_1; | ||
DROP DATABASE IF EXISTS auto_test_remote; | ||
SET GLOBAL log_output = @old_log_output; | ||
for master_1 | ||
for child2 | ||
child2_1 | ||
child2_2 | ||
child2_3 | ||
for child3 | ||
|
||
end of test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
!include include/default_mysqld.cnf | ||
!include ../my_1_1.cnf | ||
!include ../my_2_1.cnf |
72 changes: 72 additions & 0 deletions
72
storage/spider/mysql-test/spider/bugfix/t/select_by_null.test
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
--source ../include/select_by_null_init.inc | ||
--echo | ||
--echo this test is for MDEV-16279 | ||
--echo | ||
--echo drop and create databases | ||
|
||
--connection master_1 | ||
--disable_warnings | ||
CREATE DATABASE auto_test_local; | ||
USE auto_test_local; | ||
|
||
--connection child2_1 | ||
SET @old_log_output = @@global.log_output; | ||
SET GLOBAL log_output = 'TABLE,FILE'; | ||
CREATE DATABASE auto_test_remote; | ||
USE auto_test_remote; | ||
--enable_warnings | ||
|
||
--echo | ||
--echo create table and insert | ||
|
||
--connection child2_1 | ||
--disable_query_log | ||
echo CHILD2_1_CREATE_TABLES; | ||
eval $CHILD2_1_CREATE_TABLES; | ||
--enable_query_log | ||
TRUNCATE TABLE mysql.general_log; | ||
|
||
--connection master_1 | ||
--disable_query_log | ||
echo CREATE TABLE tbl_a ( | ||
pkey int NOT NULL, | ||
PRIMARY KEY (pkey) | ||
) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_2_1; | ||
eval CREATE TABLE tbl_a ( | ||
pkey int NOT NULL, | ||
PRIMARY KEY (pkey) | ||
) $MASTER_1_ENGINE $MASTER_1_CHARSET $MASTER_1_COMMENT_2_1; | ||
--enable_query_log | ||
INSERT INTO tbl_a (pkey) VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); | ||
INSERT INTO tbl_a (pkey) VALUES (10),(11),(12),(13),(14),(15),(16),(17),(18),(19); | ||
INSERT INTO tbl_a (pkey) VALUES (20),(21),(22),(23),(24),(25),(26),(27),(28),(29); | ||
FLUSH TABLES; | ||
|
||
--echo | ||
--echo select test 1 | ||
|
||
--connection child2_1 | ||
TRUNCATE TABLE mysql.general_log; | ||
|
||
--connection master_1 | ||
SELECT pkey FROM tbl_a WHERE NULL; | ||
|
||
--connection child2_1 | ||
eval $CHILD2_1_SELECT_ARGUMENT1; | ||
eval $CHILD2_1_SELECT_TABLES; | ||
|
||
--echo | ||
--echo deinit | ||
--disable_warnings | ||
|
||
--connection master_1 | ||
DROP DATABASE IF EXISTS auto_test_local; | ||
|
||
--connection child2_1 | ||
DROP DATABASE IF EXISTS auto_test_remote; | ||
SET GLOBAL log_output = @old_log_output; | ||
|
||
--enable_warnings | ||
--source ../include/select_by_null_deinit.inc | ||
--echo | ||
--echo end of test |