mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
Merge spider fixes.
This commit is contained in:
commit
0aef90d65e
5 changed files with 61 additions and 60 deletions
|
@ -1 +0,0 @@
|
|||
spider_fixes: MDEV-6320
|
|
@ -245,7 +245,7 @@ a b c
|
|||
direct order limit
|
||||
SHOW STATUS LIKE 'Spider_direct_order_limit';
|
||||
Variable_name Value
|
||||
Spider_direct_order_limit 2
|
||||
Spider_direct_order_limit 0
|
||||
SELECT a, b, c FROM ta_l_int ORDER BY a LIMIT 3;
|
||||
a b c
|
||||
1 2 4
|
||||
|
@ -253,7 +253,7 @@ a b c
|
|||
3 4 5
|
||||
SHOW STATUS LIKE 'Spider_direct_order_limit';
|
||||
Variable_name Value
|
||||
Spider_direct_order_limit 3
|
||||
Spider_direct_order_limit 0
|
||||
|
||||
2.26
|
||||
lock tables
|
||||
|
@ -297,83 +297,79 @@ PRIMARY KEY (id)
|
|||
INSERT INTO t1 () VALUES ();
|
||||
SELECT LAST_INSERT_ID();
|
||||
LAST_INSERT_ID()
|
||||
2
|
||||
777
|
||||
SELECT MAX(id) FROM t1;
|
||||
MAX(id)
|
||||
2
|
||||
777
|
||||
INSERT INTO t1 () VALUES ();
|
||||
SELECT LAST_INSERT_ID();
|
||||
LAST_INSERT_ID()
|
||||
6
|
||||
1554
|
||||
SELECT MAX(id) FROM t1;
|
||||
MAX(id)
|
||||
6
|
||||
1554
|
||||
INSERT INTO t1 (id) VALUES (null);
|
||||
SELECT LAST_INSERT_ID();
|
||||
LAST_INSERT_ID()
|
||||
10
|
||||
2331
|
||||
SELECT MAX(id) FROM t1;
|
||||
MAX(id)
|
||||
10
|
||||
2331
|
||||
INSERT INTO t1 (id) VALUES (null);
|
||||
SELECT LAST_INSERT_ID();
|
||||
LAST_INSERT_ID()
|
||||
14
|
||||
3108
|
||||
SELECT MAX(id) FROM t1;
|
||||
MAX(id)
|
||||
14
|
||||
3108
|
||||
INSERT INTO t1 () VALUES (),(),(),();
|
||||
Warnings:
|
||||
Note 12520 Binlog's auto-inc value is probably different from linked table's auto-inc value
|
||||
Note 12520 Binlog's auto-inc value is probably different from linked table's auto-inc value
|
||||
Note 12520 Binlog's auto-inc value is probably different from linked table's auto-inc value
|
||||
SELECT LAST_INSERT_ID();
|
||||
LAST_INSERT_ID()
|
||||
18
|
||||
3885
|
||||
SELECT id FROM t1 ORDER BY id;
|
||||
id
|
||||
2
|
||||
6
|
||||
10
|
||||
14
|
||||
18
|
||||
22
|
||||
26
|
||||
30
|
||||
777
|
||||
1554
|
||||
2331
|
||||
3108
|
||||
3885
|
||||
4662
|
||||
5439
|
||||
6216
|
||||
SET INSERT_ID=5000;
|
||||
INSERT INTO t1 () VALUES ();
|
||||
SELECT LAST_INSERT_ID();
|
||||
LAST_INSERT_ID()
|
||||
34
|
||||
5000
|
||||
SELECT MAX(id) FROM t1;
|
||||
MAX(id)
|
||||
34
|
||||
6216
|
||||
INSERT INTO t1 (id) VALUES (10000);
|
||||
SELECT LAST_INSERT_ID();
|
||||
LAST_INSERT_ID()
|
||||
38
|
||||
5000
|
||||
SELECT MAX(id) FROM t1;
|
||||
MAX(id)
|
||||
38
|
||||
10000
|
||||
INSERT INTO t1 (id) VALUES (1000);
|
||||
SELECT LAST_INSERT_ID();
|
||||
LAST_INSERT_ID()
|
||||
42
|
||||
5000
|
||||
SELECT MAX(id) FROM t1;
|
||||
MAX(id)
|
||||
42
|
||||
10000
|
||||
SELECT id FROM t1 ORDER BY id;
|
||||
id
|
||||
2
|
||||
6
|
||||
10
|
||||
14
|
||||
18
|
||||
34
|
||||
777
|
||||
1000
|
||||
1554
|
||||
2331
|
||||
3108
|
||||
3885
|
||||
4662
|
||||
5000
|
||||
5439
|
||||
6216
|
||||
10000
|
||||
|
||||
read only
|
||||
|
@ -384,22 +380,22 @@ PRIMARY KEY (id)
|
|||
) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_READONLY1_1
|
||||
SELECT id FROM t1 ORDER BY id;
|
||||
id
|
||||
2
|
||||
6
|
||||
10
|
||||
14
|
||||
18
|
||||
22
|
||||
26
|
||||
30
|
||||
34
|
||||
38
|
||||
42
|
||||
777
|
||||
1000
|
||||
1554
|
||||
2331
|
||||
3108
|
||||
3885
|
||||
4662
|
||||
5000
|
||||
5439
|
||||
6216
|
||||
10000
|
||||
INSERT INTO t1 (id) VALUES (1);
|
||||
ERROR HY000: Table 'auto_test_local.t1' is read only
|
||||
UPDATE t1 SET id = 4 WHERE id = 2;
|
||||
UPDATE t1 SET id = 4 WHERE id = 777;
|
||||
ERROR HY000: Table 'auto_test_local.t1' is read only
|
||||
DELETE FROM t1 WHERE id = 2;
|
||||
DELETE FROM t1 WHERE id = 777;
|
||||
ERROR HY000: Table 'auto_test_local.t1' is read only
|
||||
DELETE FROM t1;
|
||||
ERROR HY000: Table 'auto_test_local.t1' is read only
|
||||
|
@ -424,7 +420,6 @@ Error 1146 Table 'auto_test_remote.ter1_1' doesn't exist
|
|||
DELETE FROM t1;
|
||||
Warnings:
|
||||
Error 12702 Remote table 'auto_test_remote.ter1_1' is not found
|
||||
Error 12702 Remote table 'auto_test_remote.ter1_1' is not found
|
||||
Error 1146 Table 'auto_test_remote.ter1_1' doesn't exist
|
||||
TRUNCATE t1;
|
||||
Warnings:
|
||||
|
|
|
@ -46,6 +46,7 @@
|
|||
#include "spd_table.h"
|
||||
|
||||
extern struct charset_info_st *spd_charset_utf8_bin;
|
||||
extern bool volatile *spd_abort_loop;
|
||||
|
||||
extern handlerton *spider_hton_ptr;
|
||||
extern pthread_mutex_t spider_open_conn_mutex;
|
||||
|
@ -1504,10 +1505,10 @@ int spider_db_mysql::connect(
|
|||
DBUG_PRINT("info",("spider thd->killed=%s",
|
||||
thd ? (thd->killed ? "TRUE" : "FALSE") : "NULL"));
|
||||
DBUG_PRINT("info",("spider abort_loop=%s",
|
||||
abort_loop ? "TRUE" : "FALSE"));
|
||||
*spd_abort_loop ? "TRUE" : "FALSE"));
|
||||
if (
|
||||
(thd && thd->killed) ||
|
||||
abort_loop
|
||||
*spd_abort_loop
|
||||
) {
|
||||
DBUG_RETURN(ER_SPIDER_COND_SKIP_NUM);
|
||||
}
|
||||
|
@ -1581,10 +1582,10 @@ int spider_db_mysql::connect(
|
|||
DBUG_PRINT("info",("spider thd->killed=%s",
|
||||
thd ? (thd->killed ? "TRUE" : "FALSE") : "NULL"));
|
||||
DBUG_PRINT("info",("spider abort_loop=%s",
|
||||
abort_loop ? "TRUE" : "FALSE"));
|
||||
*spd_abort_loop ? "TRUE" : "FALSE"));
|
||||
if (
|
||||
(thd && thd->killed) ||
|
||||
abort_loop
|
||||
*spd_abort_loop
|
||||
) {
|
||||
DBUG_RETURN(ER_SPIDER_COND_SKIP_NUM);
|
||||
}
|
||||
|
|
|
@ -40,6 +40,8 @@
|
|||
#include "spd_udf.h"
|
||||
#include "spd_malloc.h"
|
||||
|
||||
extern bool volatile *spd_abort_loop;
|
||||
|
||||
extern handlerton *spider_hton_ptr;
|
||||
|
||||
#ifdef HAVE_PSI_INTERFACE
|
||||
|
@ -1276,10 +1278,10 @@ int spider_ping_table_mon_from_table(
|
|||
DBUG_PRINT("info",("spider thd->killed=%s",
|
||||
thd ? (thd->killed ? "TRUE" : "FALSE") : "NULL"));
|
||||
DBUG_PRINT("info",("spider abort_loop=%s",
|
||||
abort_loop ? "TRUE" : "FALSE"));
|
||||
*spd_abort_loop ? "TRUE" : "FALSE"));
|
||||
if (
|
||||
(thd && thd->killed) ||
|
||||
abort_loop
|
||||
*spd_abort_loop
|
||||
) {
|
||||
DBUG_RETURN(ER_SPIDER_COND_SKIP_NUM);
|
||||
}
|
||||
|
@ -1338,10 +1340,10 @@ int spider_ping_table_mon_from_table(
|
|||
DBUG_PRINT("info",("spider thd->killed=%s",
|
||||
thd ? (thd->killed ? "TRUE" : "FALSE") : "NULL"));
|
||||
DBUG_PRINT("info",("spider abort_loop=%s",
|
||||
abort_loop ? "TRUE" : "FALSE"));
|
||||
*spd_abort_loop ? "TRUE" : "FALSE"));
|
||||
if (
|
||||
(thd && thd->killed) ||
|
||||
abort_loop
|
||||
*spd_abort_loop
|
||||
) {
|
||||
error_num = ER_SPIDER_COND_SKIP_NUM;
|
||||
break;
|
||||
|
@ -1449,10 +1451,10 @@ int spider_ping_table_mon_from_table(
|
|||
DBUG_PRINT("info",("spider thd->killed=%s",
|
||||
thd ? (thd->killed ? "TRUE" : "FALSE") : "NULL"));
|
||||
DBUG_PRINT("info",("spider abort_loop=%s",
|
||||
abort_loop ? "TRUE" : "FALSE"));
|
||||
*spd_abort_loop ? "TRUE" : "FALSE"));
|
||||
if (
|
||||
(thd && thd->killed) ||
|
||||
abort_loop
|
||||
*spd_abort_loop
|
||||
) {
|
||||
error_num = ER_SPIDER_COND_SKIP_NUM;
|
||||
} else {
|
||||
|
|
|
@ -51,6 +51,7 @@ HASH *spd_db_att_xid_cache;
|
|||
struct charset_info_st *spd_charset_utf8_bin;
|
||||
const char **spd_defaults_extra_file;
|
||||
const char **spd_defaults_file;
|
||||
bool volatile *spd_abort_loop;
|
||||
|
||||
handlerton *spider_hton_ptr;
|
||||
SPIDER_DBTON spider_dbton[SPIDER_DBTON_SIZE];
|
||||
|
@ -6215,6 +6216,8 @@ int spider_db_init(
|
|||
GetProcAddress(current_module, "my_defaults_extra_file");
|
||||
spd_defaults_file = (const char **)
|
||||
GetProcAddress(current_module, "my_defaults_file");
|
||||
spd_abort_loop = (bool volatile *)
|
||||
GetProcAddress(current_module, "?abort_loop@@3_NC");
|
||||
#else
|
||||
spd_db_att_thread_id = &thread_id;
|
||||
#ifdef XID_CACHE_IS_SPLITTED
|
||||
|
@ -6228,6 +6231,7 @@ int spider_db_init(
|
|||
spd_charset_utf8_bin = &my_charset_utf8_bin;
|
||||
spd_defaults_extra_file = &my_defaults_extra_file;
|
||||
spd_defaults_file = &my_defaults_file;
|
||||
spd_abort_loop = &abort_loop;
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_PSI_INTERFACE
|
||||
|
|
Loading…
Reference in a new issue