75 changed files with 1504 additions and 275 deletions
-
10appveyor.yml
-
13include/my_rdtsc.h
-
4man/myisamchk.1
-
4man/mysql_upgrade.1
-
2man/mysqladmin.1
-
8man/mysqlbinlog.1
-
2man/mysqlcheck.1
-
2man/mysqld_safe.1
-
2man/mysqldump.1
-
11mysql-test/main/func_json.result
-
12mysql-test/main/func_json.test
-
2mysql-test/main/sp-vars.result
-
40mysql-test/main/type_char.result
-
19mysql-test/main/type_char.test
-
8mysql-test/main/type_varchar.result
-
174mysql-test/main/win.result
-
93mysql-test/main/win.test
-
12mysql-test/main/xml.result
-
8mysql-test/mariadb-test-run.pl
-
174mysql-test/suite/encryption/r/tempfiles_encrypted.result
-
16mysql-test/suite/funcs_1/r/innodb_func_view.result
-
16mysql-test/suite/funcs_1/r/memory_func_view.result
-
16mysql-test/suite/funcs_1/r/myisam_func_view.result
-
1mysql-test/suite/galera/disabled.def
-
3mysql-test/suite/galera/galera_2nodes_as_master.cnf
-
3mysql-test/suite/galera/galera_2nodes_as_slave.cnf
-
6mysql-test/suite/galera/galera_2x2nodes.cnf
-
3mysql-test/suite/galera/galera_3nodes_as_slave.cnf
-
3mysql-test/suite/galera/galera_4nodes.cnf
-
6mysql-test/suite/galera/r/MDEV-33523.result
-
6mysql-test/suite/galera/r/galera_as_slave_gtid_myisam.result
-
11mysql-test/suite/galera/r/galera_bf_kill.result
-
13mysql-test/suite/galera/r/galera_create_table_as_select.result
-
71mysql-test/suite/galera/r/galera_replica_no_gtid.result
-
11mysql-test/suite/galera/t/MDEV-33523.test
-
14mysql-test/suite/galera/t/galera_as_slave_gtid_myisam.test
-
28mysql-test/suite/galera/t/galera_bf_kill.test
-
22mysql-test/suite/galera/t/galera_create_table_as_select.test
-
9mysql-test/suite/galera/t/galera_replica_no_gtid.cnf
-
124mysql-test/suite/galera/t/galera_replica_no_gtid.test
-
3mysql-test/suite/galera_3nodes/galera_2x3nodes.cnf
-
3mysql-test/suite/galera_3nodes/galera_3nodes.cnf
-
166mysql-test/suite/galera_3nodes/r/galera_gtid_2_cluster.result
-
8mysql-test/suite/galera_3nodes/t/galera_gtid_2_cluster.cnf
-
39mysql-test/suite/galera_3nodes/t/galera_gtid_2_cluster.test
-
63mysql-test/suite/innodb_fts/r/fts_sync_commit_resiliency.result
-
1mysql-test/suite/innodb_fts/t/fts_sync_commit_resiliency.opt
-
47mysql-test/suite/innodb_fts/t/fts_sync_commit_resiliency.test
-
6mysql-test/suite/maria/range.result
-
22mysql-test/suite/maria/range.test
-
12scripts/wsrep_sst_mariabackup.sh
-
40sql/field.cc
-
1sql/field.h
-
3sql/ha_partition.cc
-
20sql/item_jsonfunc.cc
-
4sql/item_sum.cc
-
14sql/log.cc
-
5sql/log_event_server.cc
-
16sql/rpl_gtid.cc
-
4sql/sql_locale.cc
-
2sql/transaction.cc
-
4storage/innobase/fil/fil0fil.cc
-
165storage/innobase/fts/fts0fts.cc
-
26storage/innobase/include/ut0counter.h
-
2storage/innobase/log/log0sync.cc
-
15storage/maria/ma_range.c
-
12storage/mroonga/vendor/groonga/lib/CMakeLists.txt
-
36storage/spider/mysql-test/spider/bugfix/r/mdev_27186.result
-
4storage/spider/mysql-test/spider/bugfix/r/mdev_33538_fail_init.result
-
1storage/spider/mysql-test/spider/bugfix/t/mdev_27186.opt
-
37storage/spider/mysql-test/spider/bugfix/t/mdev_27186.test
-
4storage/spider/spd_db_mysql.cc
-
2storage/spider/spd_db_oracle.cc
-
8storage/spider/spd_err.h
-
2wsrep-lib
@ -0,0 +1,40 @@ |
|||
# |
|||
# Start of 10.5 tests |
|||
# |
|||
# |
|||
# MDEV-34295 CAST(char_col AS DOUBLE) prints redundant spaces in a warning |
|||
# |
|||
CREATE TABLE t1 (a CHAR(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci); |
|||
INSERT INTO t1 VALUES ('1x'), ('x'); |
|||
SELECT a, CAST(a AS DOUBLE) FROM t1 ORDER BY a; |
|||
a CAST(a AS DOUBLE) |
|||
1x 1 |
|||
x 0 |
|||
Warnings: |
|||
Warning 1292 Truncated incorrect DOUBLE value: '1x' |
|||
Warning 1292 Truncated incorrect DOUBLE value: 'x' |
|||
SELECT a, CAST(a AS DECIMAL(20,2)) FROM t1 ORDER BY a; |
|||
a CAST(a AS DECIMAL(20,2)) |
|||
1x 1.00 |
|||
x 0.00 |
|||
Warnings: |
|||
Warning 1292 Truncated incorrect DECIMAL value: '1x' |
|||
Warning 1292 Truncated incorrect DECIMAL value: 'x' |
|||
SELECT a, CAST(a AS SIGNED) FROM t1 ORDER BY a; |
|||
a CAST(a AS SIGNED) |
|||
1x 1 |
|||
x 0 |
|||
Warnings: |
|||
Warning 1292 Truncated incorrect INTEGER value: '1x' |
|||
Warning 1292 Truncated incorrect INTEGER value: 'x' |
|||
SELECT a, CAST(a AS UNSIGNED) FROM t1 ORDER BY a; |
|||
a CAST(a AS UNSIGNED) |
|||
1x 1 |
|||
x 0 |
|||
Warnings: |
|||
Warning 1292 Truncated incorrect INTEGER value: '1x' |
|||
Warning 1292 Truncated incorrect INTEGER value: 'x' |
|||
DROP TABLE t1; |
|||
# |
|||
# End of 10.5 tests |
|||
# |
@ -0,0 +1,19 @@ |
|||
--echo # |
|||
--echo # Start of 10.5 tests |
|||
--echo # |
|||
|
|||
--echo # |
|||
--echo # MDEV-34295 CAST(char_col AS DOUBLE) prints redundant spaces in a warning |
|||
--echo # |
|||
|
|||
CREATE TABLE t1 (a CHAR(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci); |
|||
INSERT INTO t1 VALUES ('1x'), ('x'); |
|||
SELECT a, CAST(a AS DOUBLE) FROM t1 ORDER BY a; |
|||
SELECT a, CAST(a AS DECIMAL(20,2)) FROM t1 ORDER BY a; |
|||
SELECT a, CAST(a AS SIGNED) FROM t1 ORDER BY a; |
|||
SELECT a, CAST(a AS UNSIGNED) FROM t1 ORDER BY a; |
|||
DROP TABLE t1; |
|||
|
|||
--echo # |
|||
--echo # End of 10.5 tests |
|||
--echo # |
@ -0,0 +1,6 @@ |
|||
connection node_2; |
|||
connection node_1; |
|||
SET SESSION wsrep_on=OFF; |
|||
BEGIN; |
|||
ROLLBACK; |
|||
SET SESSION wsrep_on=OFF; |
@ -0,0 +1,71 @@ |
|||
connection node_2; |
|||
connection node_1; |
|||
connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3; |
|||
create user repl@'%' identified by 'repl'; |
|||
grant all on *.* to repl@'%'; |
|||
flush privileges; |
|||
ALTER TABLE mysql.gtid_slave_pos ENGINE=InnoDB; |
|||
connection node_1; |
|||
connection node_2; |
|||
connection node_2; |
|||
START SLAVE; |
|||
connection node_3; |
|||
CREATE TABLE t1 (id bigint primary key, msg varchar(100)) engine=innodb; |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
EXPECT_10000 |
|||
10000 |
|||
connection node_2; |
|||
SELECT COUNT(*) > 0 AS EXPECT_1 FROM mysql.gtid_slave_pos; |
|||
EXPECT_1 |
|||
1 |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
EXPECT_10000 |
|||
10000 |
|||
connection node_1; |
|||
SELECT COUNT(*) AS EXPECT_0 FROM mysql.gtid_slave_pos; |
|||
EXPECT_0 |
|||
0 |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
EXPECT_10000 |
|||
10000 |
|||
connection node_2; |
|||
# Verify that graceful shutdown succeeds. |
|||
# Force SST |
|||
connection node_1; |
|||
# Waiting until node_2 is not part of cluster anymore |
|||
connection node_2; |
|||
# Start node_2 again |
|||
¤ Wait until node_2 is back on cluster |
|||
connection node_2; |
|||
call mtr.add_suppression("Slave: Operation CREATE USER failed for .*"); |
|||
SELECT COUNT(*) AS EXPECT_0 FROM mysql.gtid_slave_pos; |
|||
EXPECT_0 |
|||
0 |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
EXPECT_10000 |
|||
10000 |
|||
connection node_1; |
|||
SELECT COUNT(*) AS EXPECT_0 FROM mysql.gtid_slave_pos; |
|||
EXPECT_0 |
|||
0 |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
EXPECT_10000 |
|||
10000 |
|||
connection node_3; |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
EXPECT_10000 |
|||
10000 |
|||
connection node_2; |
|||
STOP SLAVE; |
|||
RESET SLAVE ALL; |
|||
connection node_3; |
|||
RESET MASTER; |
|||
drop table t1; |
|||
connection node_2; |
|||
DROP TABLE t1; |
|||
connection node_1; |
|||
connection node_1; |
|||
disconnect node_3; |
|||
disconnect node_2; |
|||
disconnect node_1; |
|||
# End of test |
@ -0,0 +1,11 @@ |
|||
# |
|||
# MDEV-33523: Spurious deadlock error when wsrep_on=OFF |
|||
# |
|||
--source include/galera_cluster.inc |
|||
|
|||
SET SESSION wsrep_on=OFF; |
|||
BEGIN; |
|||
# If bug is present, the following rollback |
|||
# results in ER_LOCK_DEADLOCK error. |
|||
ROLLBACK; |
|||
SET SESSION wsrep_on=OFF; |
@ -0,0 +1,9 @@ |
|||
!include ../galera_2nodes_as_slave.cnf |
|||
|
|||
[mysqld] |
|||
wsrep-debug=1 |
|||
server_id=15 |
|||
wsrep_gtid_mode=OFF |
|||
wsrep_gtid_domain_id=16 |
|||
gtid_domain_id=11 |
|||
gtid_strict_mode=OFF |
@ -0,0 +1,124 @@ |
|||
# |
|||
# Test Galera as a replica to a MySQL async replication |
|||
# |
|||
# The galera/galera_2node_slave.cnf describes the setup of the nodes |
|||
# |
|||
--source include/force_restart.inc |
|||
--source include/galera_cluster.inc |
|||
--source include/have_innodb.inc |
|||
--source include/have_sequence.inc |
|||
|
|||
# As node #3 is not a Galera node, and galera_cluster.inc does not open connetion to it |
|||
# we open the node_3 connection here |
|||
--connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 |
|||
|
|||
create user repl@'%' identified by 'repl'; |
|||
grant all on *.* to repl@'%'; |
|||
flush privileges; |
|||
ALTER TABLE mysql.gtid_slave_pos ENGINE=InnoDB; |
|||
|
|||
--let $node_1 = node_1 |
|||
--let $node_2 = node_2 |
|||
--source include/auto_increment_offset_save.inc |
|||
|
|||
--connection node_2 |
|||
--disable_query_log |
|||
--eval CHANGE MASTER TO master_host='127.0.0.1', master_user='repl', master_password='repl', master_port=$NODE_MYPORT_3, master_use_gtid=slave_pos; |
|||
--enable_query_log |
|||
START SLAVE; |
|||
|
|||
--connection node_3 |
|||
|
|||
CREATE TABLE t1 (id bigint primary key, msg varchar(100)) engine=innodb; |
|||
--disable_query_log |
|||
INSERT INTO t1 SELECT seq, 'test' from seq_1_to_10000; |
|||
--enable_query_log |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
|
|||
--connection node_2 |
|||
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; |
|||
--source include/wait_condition.inc |
|||
|
|||
--let $wait_condition = SELECT COUNT(*) = 10000 FROM t1; |
|||
--source include/wait_condition.inc |
|||
|
|||
# |
|||
# Node_2 is slave so mysql.gtid_slave_pos table is also replicated |
|||
# |
|||
SELECT COUNT(*) > 0 AS EXPECT_1 FROM mysql.gtid_slave_pos; |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
|
|||
--connection node_1 |
|||
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; |
|||
--source include/wait_condition.inc |
|||
|
|||
--let $wait_condition = SELECT COUNT(*) = 10000 FROM t1; |
|||
--source include/wait_condition.inc |
|||
|
|||
# |
|||
# mysql-gtid_slave_pos table should not be replicated by Galera |
|||
# |
|||
SELECT COUNT(*) AS EXPECT_0 FROM mysql.gtid_slave_pos; |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
|
|||
--connection node_2 |
|||
--echo # Verify that graceful shutdown succeeds. |
|||
--source include/shutdown_mysqld.inc |
|||
--echo # Force SST |
|||
--remove_file $MYSQLTEST_VARDIR/mysqld.2/data/grastate.dat |
|||
|
|||
--connection node_1 |
|||
--echo # Waiting until node_2 is not part of cluster anymore |
|||
--let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; |
|||
--source include/wait_condition.inc |
|||
--let $wait_condition = SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; |
|||
--source include/wait_condition.inc |
|||
|
|||
--connection node_2 |
|||
--echo # Start node_2 again |
|||
--source include/start_mysqld.inc |
|||
|
|||
--echo ¤ Wait until node_2 is back on cluster |
|||
--let $wait_condition = SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; |
|||
--source include/wait_condition.inc |
|||
--let $wait_condition = SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; |
|||
--source include/wait_condition.inc |
|||
--let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; |
|||
--source include/wait_condition.inc |
|||
|
|||
--connection node_2 |
|||
call mtr.add_suppression("Slave: Operation CREATE USER failed for .*"); |
|||
SELECT COUNT(*) AS EXPECT_0 FROM mysql.gtid_slave_pos; |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
|
|||
--connection node_1 |
|||
SELECT COUNT(*) AS EXPECT_0 FROM mysql.gtid_slave_pos; |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
|
|||
--connection node_3 |
|||
SELECT COUNT(*) AS EXPECT_10000 FROM t1; |
|||
|
|||
# |
|||
# Cleanup |
|||
# |
|||
--connection node_2 |
|||
STOP SLAVE; |
|||
RESET SLAVE ALL; |
|||
|
|||
--connection node_3 |
|||
RESET MASTER; |
|||
drop table t1; |
|||
|
|||
--connection node_2 |
|||
DROP TABLE t1; |
|||
|
|||
--connection node_1 |
|||
--let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; |
|||
--source include/wait_condition.inc |
|||
|
|||
--connection node_1 |
|||
--disconnect node_3 |
|||
|
|||
--source include/auto_increment_offset_restore.inc |
|||
--source include/galera_end.inc |
|||
--echo # End of test |
@ -0,0 +1,63 @@ |
|||
CREATE TABLE opening_lines ( |
|||
id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, |
|||
opening_line TEXT(500), |
|||
author VARCHAR(200), |
|||
title VARCHAR(200) |
|||
) ENGINE=InnoDB; |
|||
CREATE FULLTEXT INDEX idx ON opening_lines(opening_line); |
|||
CREATE FULLTEXT INDEX ft_idx1 ON opening_lines(title); |
|||
INSERT INTO opening_lines(opening_line,author,title) VALUES |
|||
('Call me Ishmael.','Herman Melville','Moby Dick'), |
|||
('A screaming comes across the sky.','Thomas Pynchon','Gravity\'s Rainbow'), |
|||
('I am an invisible man.','Ralph Ellison','Invisible Man'), |
|||
('Where now? Who now? When now?','Samuel Beckett','The Unnamable'), |
|||
('It was love at first sight.','Joseph Heller','Catch-22'), |
|||
('All this happened, more or less.','Kurt Vonnegut','Slaughterhouse-Five'), |
|||
('Mrs. Dalloway said she would buy the flowers herself.','Virginia Woolf','Mrs. Dalloway'), |
|||
('It was a pleasure to burn.','Ray Bradbury','Fahrenheit 451'); |
|||
SET GLOBAL innodb_ft_aux_table='test/opening_lines'; |
|||
SELECT * FROM information_schema.innodb_ft_config; |
|||
KEY VALUE |
|||
optimize_checkpoint_limit 180 |
|||
synced_doc_id 0 |
|||
stopword_table_name |
|||
use_stopword 1 |
|||
SELECT * FROM opening_lines WHERE MATCH(opening_line) AGAINST('Ishmael'); |
|||
id opening_line author title |
|||
1 Call me Ishmael. Herman Melville Moby Dick |
|||
SELECT * FROM opening_lines WHERE MATCH(opening_line) AGAINST('invisible'); |
|||
id opening_line author title |
|||
3 I am an invisible man. Ralph Ellison Invisible Man |
|||
SELECT * FROM opening_lines; |
|||
id opening_line author title |
|||
1 Call me Ishmael. Herman Melville Moby Dick |
|||
2 A screaming comes across the sky. Thomas Pynchon Gravity's Rainbow |
|||
3 I am an invisible man. Ralph Ellison Invisible Man |
|||
4 Where now? Who now? When now? Samuel Beckett The Unnamable |
|||
5 It was love at first sight. Joseph Heller Catch-22 |
|||
6 All this happened, more or less. Kurt Vonnegut Slaughterhouse-Five |
|||
7 Mrs. Dalloway said she would buy the flowers herself. Virginia Woolf Mrs. Dalloway |
|||
8 It was a pleasure to burn. Ray Bradbury Fahrenheit 451 |
|||
SET GLOBAL innodb_optimize_fulltext_only=ON; |
|||
SET DEBUG_SYNC='fts_crash_before_commit_sync SIGNAL hung WAIT_FOR ever'; |
|||
OPTIMIZE TABLE opening_lines; |
|||
connect con1,localhost,root,,; |
|||
SET DEBUG_SYNC='now WAIT_FOR hung'; |
|||
# restart |
|||
SELECT * FROM opening_lines WHERE MATCH(opening_line) AGAINST('Ishmael'); |
|||
id opening_line author title |
|||
1 Call me Ishmael. Herman Melville Moby Dick |
|||
SELECT * FROM opening_lines WHERE MATCH(opening_line) AGAINST('invisible'); |
|||
id opening_line author title |
|||
3 I am an invisible man. Ralph Ellison Invisible Man |
|||
SELECT * FROM opening_lines; |
|||
id opening_line author title |
|||
1 Call me Ishmael. Herman Melville Moby Dick |
|||
2 A screaming comes across the sky. Thomas Pynchon Gravity's Rainbow |
|||
3 I am an invisible man. Ralph Ellison Invisible Man |
|||
4 Where now? Who now? When now? Samuel Beckett The Unnamable |
|||
5 It was love at first sight. Joseph Heller Catch-22 |
|||
6 All this happened, more or less. Kurt Vonnegut Slaughterhouse-Five |
|||
7 Mrs. Dalloway said she would buy the flowers herself. Virginia Woolf Mrs. Dalloway |
|||
8 It was a pleasure to burn. Ray Bradbury Fahrenheit 451 |
|||
DROP TABLE opening_lines; |
@ -0,0 +1 @@ |
|||
--innodb_ft_config |
@ -0,0 +1,47 @@ |
|||
# Test database resiliency against scenario where the server crashes |
|||
# right before fts_sync_commit commits its transaction |
|||
source include/have_innodb.inc; |
|||
source include/have_debug.inc; |
|||
source include/not_embedded.inc; |
|||
source include/have_debug_sync.inc; |
|||
|
|||
CREATE TABLE opening_lines ( |
|||
id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, |
|||
opening_line TEXT(500), |
|||
author VARCHAR(200), |
|||
title VARCHAR(200) |
|||
) ENGINE=InnoDB; |
|||
|
|||
CREATE FULLTEXT INDEX idx ON opening_lines(opening_line); |
|||
CREATE FULLTEXT INDEX ft_idx1 ON opening_lines(title); |
|||
|
|||
INSERT INTO opening_lines(opening_line,author,title) VALUES |
|||
('Call me Ishmael.','Herman Melville','Moby Dick'), |
|||
('A screaming comes across the sky.','Thomas Pynchon','Gravity\'s Rainbow'), |
|||
('I am an invisible man.','Ralph Ellison','Invisible Man'), |
|||
('Where now? Who now? When now?','Samuel Beckett','The Unnamable'), |
|||
('It was love at first sight.','Joseph Heller','Catch-22'), |
|||
('All this happened, more or less.','Kurt Vonnegut','Slaughterhouse-Five'), |
|||
('Mrs. Dalloway said she would buy the flowers herself.','Virginia Woolf','Mrs. Dalloway'), |
|||
('It was a pleasure to burn.','Ray Bradbury','Fahrenheit 451'); |
|||
|
|||
SET GLOBAL innodb_ft_aux_table='test/opening_lines'; |
|||
SELECT * FROM information_schema.innodb_ft_config; |
|||
|
|||
SELECT * FROM opening_lines WHERE MATCH(opening_line) AGAINST('Ishmael'); |
|||
SELECT * FROM opening_lines WHERE MATCH(opening_line) AGAINST('invisible'); |
|||
SELECT * FROM opening_lines; |
|||
|
|||
SET GLOBAL innodb_optimize_fulltext_only=ON; |
|||
SET DEBUG_SYNC='fts_crash_before_commit_sync SIGNAL hung WAIT_FOR ever'; |
|||
send OPTIMIZE TABLE opening_lines; |
|||
|
|||
connect(con1,localhost,root,,); |
|||
SET DEBUG_SYNC='now WAIT_FOR hung'; |
|||
let $shutdown_timeout=0; |
|||
--source include/restart_mysqld.inc |
|||
|
|||
SELECT * FROM opening_lines WHERE MATCH(opening_line) AGAINST('Ishmael'); |
|||
SELECT * FROM opening_lines WHERE MATCH(opening_line) AGAINST('invisible'); |
|||
SELECT * FROM opening_lines; |
|||
DROP TABLE opening_lines; |
@ -0,0 +1,6 @@ |
|||
# |
|||
# MDEV-22935 Erroneous Aria Index / Optimizer behaviour |
|||
# |
|||
create table t1 (a char(255), b datetime, primary key(a,b)) engine=aria transactional=0 pack_keys=0; |
|||
insert into t1 select concat("hello world hello world", truncate(seq/100,0)),from_unixtime(seq+1) from seq_1_to_20000; |
|||
drop table t1; |
@ -0,0 +1,22 @@ |
|||
--source include/have_sequence.inc |
|||
|
|||
--echo # |
|||
--echo # MDEV-22935 Erroneous Aria Index / Optimizer behaviour |
|||
--echo # |
|||
|
|||
create table t1 (a char(255), b datetime, primary key(a,b)) engine=aria transactional=0 pack_keys=0; |
|||
insert into t1 select concat("hello world hello world", truncate(seq/100,0)),from_unixtime(seq+1) from seq_1_to_20000; |
|||
|
|||
let $i= 200; |
|||
--disable_query_log |
|||
while ($i) |
|||
{ |
|||
let $tmp= `select count(*) from t1 where a="hello world hello world$i" and b <= from_unixtime($i*100+1)`; |
|||
if (`SELECT $tmp != 1`) |
|||
{ |
|||
--echo "Found $tmp rows, expected 1, for value $i" |
|||
} |
|||
dec $i; |
|||
} |
|||
--enable_query_log |
|||
drop table t1; |
@ -0,0 +1,36 @@ |
|||
INSTALL SONAME 'ha_spider'; |
|||
Warnings: |
|||
Warning 1105 Cannot enable tc-log at run-time. XA features of SPIDER are disabled |
|||
CREATE TABLE t (s INT) ENGINE=SPIDER PARTITION BY HASH (s); |
|||
LOAD INDEX INTO CACHE t PARTITION (p,p1); |
|||
Table Op Msg_type Msg_text |
|||
test.t preload_keys Error Unable to connect to foreign data source: localhost |
|||
test.t preload_keys Error Unable to connect to foreign data source: localhost |
|||
test.t preload_keys Error Unable to connect to foreign data source: localhost |
|||
test.t preload_keys Error Unable to connect to foreign data source: localhost |
|||
test.t preload_keys Error Unable to connect to foreign data source: localhost |
|||
test.t preload_keys Error Unable to connect to foreign data source: localhost |
|||
test.t preload_keys error Corrupt |
|||
DROP TABLE t; |
|||
CREATE TABLE t (c INT PRIMARY KEY) ENGINE=SPIDER PARTITION BY KEY() PARTITIONS 2; |
|||
HANDLER t OPEN AS h; |
|||
ERROR HY000: Unable to connect to foreign data source: localhost |
|||
DROP TABLE t; |
|||
CREATE TABLE t (c INT PRIMARY KEY) ENGINE=SPIDER PARTITION BY HASH (c) PARTITIONS 2; |
|||
CREATE TRIGGER t AFTER INSERT ON t FOR EACH ROW INSERT INTO t VALUES(0); |
|||
ERROR HY000: Unable to connect to foreign data source: localhost |
|||
DROP TABLE t; |
|||
CREATE TABLE t (b INT) ENGINE=InnoDB; |
|||
PREPARE s FROM 'SELECT * FROM t LIMIT 2'; |
|||
DROP TABLE t; |
|||
CREATE TABLE t (a INT) ENGINE=Spider PARTITION BY LIST (a) PARTITIONS 2 (PARTITION p1 VALUES IN (0,1),PARTITION p2 VALUES IN (2,3)); |
|||
EXECUTE s; |
|||
ERROR HY000: Unable to connect to foreign data source: localhost |
|||
DROP TABLE t; |
|||
CREATE TABLE t (c INT) ENGINE=InnoDB; |
|||
LOCK TABLES t WRITE; |
|||
CREATE OR REPLACE TABLE t (d INT) ENGINE=Spider PARTITION BY LIST COLUMNS (d) (PARTITION p VALUES IN (0)); |
|||
ERROR HY000: Unable to connect to foreign data source: localhost |
|||
drop table t; |
|||
Warnings: |
|||
Warning 1620 Plugin is busy and will be uninstalled on shutdown |
@ -0,0 +1 @@ |
|||
--skip-log-bin |
@ -0,0 +1,37 @@ |
|||
INSTALL SONAME 'ha_spider'; |
|||
|
|||
# MDEV-27186 |
|||
CREATE TABLE t (s INT) ENGINE=SPIDER PARTITION BY HASH (s); |
|||
LOAD INDEX INTO CACHE t PARTITION (p,p1); |
|||
DROP TABLE t; |
|||
|
|||
# MDEV-27237 |
|||
CREATE TABLE t (c INT PRIMARY KEY) ENGINE=SPIDER PARTITION BY KEY() PARTITIONS 2; |
|||
--error ER_CONNECT_TO_FOREIGN_DATA_SOURCE |
|||
HANDLER t OPEN AS h; |
|||
DROP TABLE t; |
|||
|
|||
# MDEV-27334 |
|||
CREATE TABLE t (c INT PRIMARY KEY) ENGINE=SPIDER PARTITION BY HASH (c) PARTITIONS 2; |
|||
--error ER_CONNECT_TO_FOREIGN_DATA_SOURCE |
|||
CREATE TRIGGER t AFTER INSERT ON t FOR EACH ROW INSERT INTO t VALUES(0); |
|||
DROP TABLE t; |
|||
|
|||
# MDEV-28241 |
|||
CREATE TABLE t (b INT) ENGINE=InnoDB; |
|||
PREPARE s FROM 'SELECT * FROM t LIMIT 2'; |
|||
DROP TABLE t; |
|||
CREATE TABLE t (a INT) ENGINE=Spider PARTITION BY LIST (a) PARTITIONS 2 (PARTITION p1 VALUES IN (0,1),PARTITION p2 VALUES IN (2,3)); |
|||
--error ER_CONNECT_TO_FOREIGN_DATA_SOURCE |
|||
EXECUTE s; |
|||
DROP TABLE t; |
|||
|
|||
# MDEV-34101 |
|||
CREATE TABLE t (c INT) ENGINE=InnoDB; |
|||
LOCK TABLES t WRITE; |
|||
--error ER_CONNECT_TO_FOREIGN_DATA_SOURCE |
|||
CREATE OR REPLACE TABLE t (d INT) ENGINE=Spider PARTITION BY LIST COLUMNS (d) (PARTITION p VALUES IN (0)); |
|||
drop table t; |
|||
|
|||
--disable_query_log |
|||
--source ../../include/clean_up_spider.inc |
@ -1 +1 @@ |
|||
Subproject commit dfc4bdb8a5dcbd6fbea007ad3beff899a6b5b7bd |
|||
Subproject commit 31db8476768ba68296ad91b6785bb06a6a9abf71 |
Write
Preview
Loading…
Cancel
Save
Reference in new issue