Browse Source
MDEV-36441 MDEV-35452 Fix extra spider_same_server_link warnings in view-protocol
With --view-protocol, mtr transforms a SELECT query to two queries:
1. CREATE OR REPLACE VIEW mysqltest_tmp_v AS ...
2. SELECT * FROM mysqltest_tmp_v
where ... is the original query. Further mtr may run the first query
in a separate connection.
On the other hand if the data node is the same as the spider node,
spider_same_server_link is required for connection to the data node.
Therefore, for mtr --view-protocol tests often spider_same_server_link
needs to be set on both session and global levels. In this patch we
add the missing "SET GLOBAL spider_same_server_link=1" queries to
tests that fail with wrong results due to this issue.
It does not fix --view-protocol for all the affected tests, because
there are other issues fixed in subsequent patches.
bb-10.5-mdev-36442
Yuchen Pei
6 months ago
No known key found for this signature in database
GPG Key ID: 3DD1B35105743563
24 changed files with
24 additions and
0 deletions
storage/spider/mysql-test/spider/bugfix/r/mdev_26345.result
storage/spider/mysql-test/spider/bugfix/r/mdev_29002.result
storage/spider/mysql-test/spider/bugfix/r/mdev_29163.result
storage/spider/mysql-test/spider/bugfix/r/mdev_29502.result
storage/spider/mysql-test/spider/bugfix/r/mdev_29962.result
storage/spider/mysql-test/spider/bugfix/r/mdev_30392.result
storage/spider/mysql-test/spider/bugfix/r/mdev_30408.result
storage/spider/mysql-test/spider/bugfix/r/mdev_31338.result
storage/spider/mysql-test/spider/bugfix/r/mdev_31645.result
storage/spider/mysql-test/spider/bugfix/r/mdev_34003.result
storage/spider/mysql-test/spider/bugfix/r/mdev_35874.result
storage/spider/mysql-test/spider/bugfix/r/subquery.result
storage/spider/mysql-test/spider/bugfix/t/mdev_26345.test
storage/spider/mysql-test/spider/bugfix/t/mdev_29002.test
storage/spider/mysql-test/spider/bugfix/t/mdev_29163.test
storage/spider/mysql-test/spider/bugfix/t/mdev_29502.test
storage/spider/mysql-test/spider/bugfix/t/mdev_29962.test
storage/spider/mysql-test/spider/bugfix/t/mdev_30392.test
storage/spider/mysql-test/spider/bugfix/t/mdev_30408.test
storage/spider/mysql-test/spider/bugfix/t/mdev_31338.test
storage/spider/mysql-test/spider/bugfix/t/mdev_31645.test
storage/spider/mysql-test/spider/bugfix/t/mdev_34003.test
storage/spider/mysql-test/spider/bugfix/t/mdev_35874.test
storage/spider/mysql-test/spider/bugfix/t/subquery.test
@ -5,6 +5,7 @@ for child3
MDEV-26345 SELECT MIN on Spider table returns more rows than expected
set spider_same_server_link= 1;
set global spider_same_server_link= 1;
CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
create table t2 (a int, b int, PRIMARY KEY (a, b));
@ -2,6 +2,7 @@ for master_1
for child2
for child3
SET spider_same_server_link= on;
SET global spider_same_server_link= on;
CREATE SERVER s FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t (a INT);
@ -5,6 +5,7 @@ for master_1
for child2
for child3
set spider_same_server_link=1;
set global spider_same_server_link=1;
CREATE SERVER s FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t1 (a INT);
CREATE TABLE t2 (b INT);
@ -5,6 +5,7 @@ for master_1
for child2
for child3
set spider_same_server_link=1;
set global spider_same_server_link=1;
CREATE SERVER $srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t (a INT);
INSERT INTO t VALUES (23),(48);
@ -5,6 +5,7 @@ for master_1
for child2
for child3
set spider_same_server_link= 1;
set global spider_same_server_link= 1;
CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t (c INT) ENGINE=InnoDB;
@ -5,6 +5,7 @@ for master_1
for child2
for child3
set spider_same_server_link=1;
set global spider_same_server_link=1;
CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1),(2);
@ -3,6 +3,7 @@ for child2
for child3
set @@optimizer_switch="semijoin=off";
set spider_same_server_link= 1;
set global spider_same_server_link=1;
CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
create table ten(a int primary key);
@ -5,6 +5,7 @@ for master_1
for child2
for child3
set spider_same_server_link=1;
set global spider_same_server_link=1;
CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t (c BLOB) ENGINE=InnoDB;
CREATE TABLE ts (c BLOB) ENGINE=Spider COMMENT='WRAPPER "mysql",srv "srv",TABLE "t"';
@ -5,6 +5,7 @@ for master_1
for child2
for child3
set spider_same_server_link=1;
set global spider_same_server_link=1;
CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t1 ( a bigint(20) NOT NULL, b bigint(20) DEFAULT 0, PRIMARY KEY (a));
CREATE TABLE t2 ( a bigint(20) NOT NULL, b bigint(20) DEFAULT 0, PRIMARY KEY (a)) ENGINE=SPIDER COMMENT='srv "srv", WRAPPER "mysql", TABLE "t1"';
@ -2,6 +2,7 @@ for master_1
for child2
for child3
set spider_same_server_link= 1;
set global spider_same_server_link= 1;
CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
create table t2 (c INT KEY,c1 BLOB,c2 TEXT) ENGINE=InnoDB;
@ -5,6 +5,7 @@ for master_1
for child2
for child3
set spider_same_server_link= 1;
set global spider_same_server_link= 1;
CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t1 (c6 decimal(6,0)) ENGINE=InnoDB;
@ -5,6 +5,7 @@ for master_1
for child2
for child3
set spider_same_server_link=1;
set global spider_same_server_link=1;
CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
create table t1 (c1 int);
create table t2 (c2 int);
@ -11,6 +11,7 @@
--echo
set spider_same_server_link= 1;
set global spider_same_server_link= 1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
@ -4,6 +4,7 @@
--enable_result_log
--enable_query_log
SET spider_same_server_link= on;
SET global spider_same_server_link= on;
evalp CREATE SERVER s FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
@ -7,6 +7,7 @@
--enable_result_log
--enable_query_log
set spider_same_server_link=1;
set global spider_same_server_link=1;
evalp CREATE SERVER s FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t1 (a INT);
@ -9,6 +9,7 @@
--enable_query_log
set spider_same_server_link=1;
set global spider_same_server_link=1;
--let $srv=srv_mdev_29502
evalp CREATE SERVER $srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
@ -8,6 +8,7 @@
--enable_query_log
set spider_same_server_link= 1;
set global spider_same_server_link= 1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
@ -7,6 +7,7 @@
--enable_result_log
--enable_query_log
set spider_same_server_link=1;
set global spider_same_server_link=1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t1 (a INT);
@ -6,6 +6,7 @@
set @@optimizer_switch="semijoin=off";
set spider_same_server_link= 1;
set global spider_same_server_link=1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
@ -10,6 +10,7 @@
--enable_query_log
set spider_same_server_link=1;
set global spider_same_server_link=1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t (c BLOB) ENGINE=InnoDB;
CREATE TABLE ts (c BLOB) ENGINE=Spider COMMENT='WRAPPER "mysql",srv "srv",TABLE "t"';
@ -7,6 +7,7 @@
--enable_result_log
--enable_query_log
set spider_same_server_link=1;
set global spider_same_server_link=1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
CREATE TABLE t1 ( a bigint(20) NOT NULL, b bigint(20) DEFAULT 0, PRIMARY KEY (a));
@ -4,6 +4,7 @@
--enable_result_log
--enable_query_log
set spider_same_server_link= 1;
set global spider_same_server_link= 1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
create table t2 (c INT KEY,c1 BLOB,c2 TEXT) ENGINE=InnoDB;
@ -9,6 +9,7 @@
--enable_query_log
--source include/have_innodb.inc
set spider_same_server_link= 1;
set global spider_same_server_link= 1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER mysql
OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
@ -7,6 +7,7 @@
--enable_result_log
--enable_query_log
set spider_same_server_link=1;
set global spider_same_server_link=1;
evalp CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$MASTER_1_MYSOCK", DATABASE 'test',user 'root');
create table t1 (c1 int);
create table t2 (c2 int);