Commit 33366b10 authored by Sergei Golubchik's avatar Sergei Golubchik

remove @@system_versioning_innodb_algorithm_simple

and delete few garbage-in-garbage-out tests
parent b9c70b88
...@@ -38,14 +38,14 @@ ...@@ -38,14 +38,14 @@
--sort-buffer-size=# --sort-buffer-size=#
Each thread that needs to do a sort allocates a buffer of Each thread that needs to do a sort allocates a buffer of
@@ -1190,6 +1197,7 @@ The following options may be given as the first argument: @@ -1190,6 +1197,7 @@ The following options may be given as the first argument:
EMPTY_STRING_IS_NULL EMPTY_STRING_IS_NULL, SIMULTANEOUS_ASSIGNMENT
--stack-trace Print a symbolic stack trace on failure --stack-trace Print a symbolic stack trace on failure
(Defaults to on; use --skip-stack-trace to disable.) (Defaults to on; use --skip-stack-trace to disable.)
+ --standalone Dummy option to start as a standalone program (NT). + --standalone Dummy option to start as a standalone program (NT).
--standard-compliant-cte --standard-compliant-cte
Allow only CTEs compliant to SQL standard Allow only CTEs compliant to SQL standard
(Defaults to on; use --skip-standard-compliant-cte to disable.) (Defaults to on; use --skip-standard-compliant-cte to disable.)
@@ -1261,6 +1269,11 @@ The following options may be given as the first argument: @@ -1257,6 +1265,11 @@ The following options may be given as the first argument:
--thread-pool-max-threads=# --thread-pool-max-threads=#
Maximum allowed number of worker threads in the thread Maximum allowed number of worker threads in the thread
pool pool
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
--thread-pool-oversubscribe=# --thread-pool-oversubscribe=#
How many additional active worker threads in a group are How many additional active worker threads in a group are
allowed. allowed.
@@ -1299,8 +1312,8 @@ The following options may be given as the first argument: @@ -1295,8 +1308,8 @@ The following options may be given as the first argument:
automatically convert it to an on-disk MyISAM or Aria automatically convert it to an on-disk MyISAM or Aria
table. table.
-t, --tmpdir=name Path for temporary files. Several paths may be specified, -t, --tmpdir=name Path for temporary files. Several paths may be specified,
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
--transaction-alloc-block-size=# --transaction-alloc-block-size=#
Allocation block size for transactions to be stored in Allocation block size for transactions to be stored in
binary log binary log
@@ -1434,7 +1447,6 @@ key-cache-block-size 1024 @@ -1430,7 +1443,6 @@ key-cache-block-size 1024
key-cache-division-limit 100 key-cache-division-limit 100
key-cache-file-hash-size 512 key-cache-file-hash-size 512
key-cache-segments 0 key-cache-segments 0
...@@ -76,7 +76,7 @@ ...@@ -76,7 +76,7 @@
lc-messages en_US lc-messages en_US
lc-messages-dir MYSQL_SHAREDIR/ lc-messages-dir MYSQL_SHAREDIR/
lc-time-names en_US lc-time-names en_US
@@ -1506,6 +1518,7 @@ myisam-sort-buffer-size 134216704 @@ -1502,6 +1514,7 @@ myisam-sort-buffer-size 134216704
myisam-stats-method NULLS_UNEQUAL myisam-stats-method NULLS_UNEQUAL
myisam-use-mmap FALSE myisam-use-mmap FALSE
mysql56-temporal-format TRUE mysql56-temporal-format TRUE
...@@ -84,7 +84,7 @@ ...@@ -84,7 +84,7 @@
net-buffer-length 16384 net-buffer-length 16384
net-read-timeout 30 net-read-timeout 30
net-retry-count 10 net-retry-count 10
@@ -1616,6 +1629,8 @@ session-track-schema TRUE @@ -1612,6 +1625,8 @@ session-track-schema TRUE
session-track-state-change FALSE session-track-state-change FALSE
session-track-system-variables autocommit,character_set_client,character_set_connection,character_set_results,time_zone session-track-system-variables autocommit,character_set_client,character_set_connection,character_set_results,time_zone
session-track-transaction-info OFF session-track-transaction-info OFF
...@@ -93,7 +93,7 @@ ...@@ -93,7 +93,7 @@
show-slave-auth-info FALSE show-slave-auth-info FALSE
silent-startup FALSE silent-startup FALSE
skip-grant-tables TRUE skip-grant-tables TRUE
@@ -1642,6 +1657,7 @@ slave-transaction-retry-interval 0 @@ -1638,6 +1653,7 @@ slave-transaction-retry-interval 0
slave-type-conversions slave-type-conversions
slow-launch-time 2 slow-launch-time 2
slow-query-log FALSE slow-query-log FALSE
...@@ -101,10 +101,10 @@ ...@@ -101,10 +101,10 @@
sort-buffer-size 2097152 sort-buffer-size 2097152
sql-mode STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION sql-mode STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
stack-trace TRUE stack-trace TRUE
@@ -1657,9 +1673,9 @@ sync-relay-log-info 10000 @@ -1652,9 +1668,9 @@ sync-relay-log 10000
sync-relay-log-info 10000
sysdate-is-now FALSE sysdate-is-now FALSE
system-versioning-alter-history ERROR system-versioning-alter-history ERROR
system-versioning-innodb-algorithm-simple TRUE
-table-cache 431 -table-cache 431
+table-cache 2000 +table-cache 2000
table-definition-cache 400 table-definition-cache 400
...@@ -113,7 +113,7 @@ ...@@ -113,7 +113,7 @@
table-open-cache-instances 8 table-open-cache-instances 8
tc-heuristic-recover OFF tc-heuristic-recover OFF
tcp-keepalive-interval 0 tcp-keepalive-interval 0
@@ -1668,6 +1684,8 @@ tcp-keepalive-time 0 @@ -1663,6 +1679,8 @@ tcp-keepalive-time 0
thread-cache-size 151 thread-cache-size 151
thread-pool-idle-timeout 60 thread-pool-idle-timeout 60
thread-pool-max-threads 65536 thread-pool-max-threads 65536
......
...@@ -1223,10 +1223,6 @@ The following options may be given as the first argument: ...@@ -1223,10 +1223,6 @@ The following options may be given as the first argument:
Versioning ALTER TABLE mode. ERROR: Fail ALTER with Versioning ALTER TABLE mode. ERROR: Fail ALTER with
error; KEEP: Keep historical system rows and subject them error; KEEP: Keep historical system rows and subject them
to ALTER; to ALTER;
--system-versioning-innodb-algorithm-simple
Use simple algorithm of timestamp handling in InnoDB
instead of TRX_SEES
(Defaults to on; use --skip-system-versioning-innodb-algorithm-simple to disable.)
--table-cache=# Deprecated; use --table-open-cache instead. --table-cache=# Deprecated; use --table-open-cache instead.
--table-definition-cache=# --table-definition-cache=#
The number of cached table definitions The number of cached table definitions
...@@ -1656,7 +1652,6 @@ sync-relay-log 10000 ...@@ -1656,7 +1652,6 @@ sync-relay-log 10000
sync-relay-log-info 10000 sync-relay-log-info 10000
sysdate-is-now FALSE sysdate-is-now FALSE
system-versioning-alter-history ERROR system-versioning-alter-history ERROR
system-versioning-innodb-algorithm-simple TRUE
table-cache 431 table-cache 431
table-definition-cache 400 table-definition-cache 400
table-open-cache 431 table-open-cache 431
......
...@@ -4086,20 +4086,6 @@ NUMERIC_BLOCK_SIZE NULL ...@@ -4086,20 +4086,6 @@ NUMERIC_BLOCK_SIZE NULL
ENUM_VALUE_LIST DEFAULT ENUM_VALUE_LIST DEFAULT
READ_ONLY NO READ_ONLY NO
COMMAND_LINE_ARGUMENT NULL COMMAND_LINE_ARGUMENT NULL
VARIABLE_NAME SYSTEM_VERSIONING_INNODB_ALGORITHM_SIMPLE
SESSION_VALUE ON
GLOBAL_VALUE ON
GLOBAL_VALUE_ORIGIN COMPILE-TIME
DEFAULT_VALUE ON
VARIABLE_SCOPE SESSION
VARIABLE_TYPE BOOLEAN
VARIABLE_COMMENT Use simple algorithm of timestamp handling in InnoDB instead of TRX_SEES
NUMERIC_MIN_VALUE NULL
NUMERIC_MAX_VALUE NULL
NUMERIC_BLOCK_SIZE NULL
ENUM_VALUE_LIST OFF,ON
READ_ONLY NO
COMMAND_LINE_ARGUMENT OPTIONAL
VARIABLE_NAME TABLE_DEFINITION_CACHE VARIABLE_NAME TABLE_DEFINITION_CACHE
SESSION_VALUE NULL SESSION_VALUE NULL
GLOBAL_VALUE 400 GLOBAL_VALUE 400
......
...@@ -5038,20 +5038,6 @@ NUMERIC_BLOCK_SIZE NULL ...@@ -5038,20 +5038,6 @@ NUMERIC_BLOCK_SIZE NULL
ENUM_VALUE_LIST DEFAULT ENUM_VALUE_LIST DEFAULT
READ_ONLY NO READ_ONLY NO
COMMAND_LINE_ARGUMENT NULL COMMAND_LINE_ARGUMENT NULL
VARIABLE_NAME SYSTEM_VERSIONING_INNODB_ALGORITHM_SIMPLE
SESSION_VALUE ON
GLOBAL_VALUE ON
GLOBAL_VALUE_ORIGIN COMPILE-TIME
DEFAULT_VALUE ON
VARIABLE_SCOPE SESSION
VARIABLE_TYPE BOOLEAN
VARIABLE_COMMENT Use simple algorithm of timestamp handling in InnoDB instead of TRX_SEES
NUMERIC_MIN_VALUE NULL
NUMERIC_MAX_VALUE NULL
NUMERIC_BLOCK_SIZE NULL
ENUM_VALUE_LIST OFF,ON
READ_ONLY NO
COMMAND_LINE_ARGUMENT OPTIONAL
VARIABLE_NAME TABLE_DEFINITION_CACHE VARIABLE_NAME TABLE_DEFINITION_CACHE
SESSION_VALUE NULL SESSION_VALUE NULL
GLOBAL_VALUE 400 GLOBAL_VALUE 400
......
...@@ -330,25 +330,14 @@ trx_start_good ...@@ -330,25 +330,14 @@ trx_start_good
select x from t1 for system_time as of timestamp @ts; select x from t1 for system_time as of timestamp @ts;
x x
1 1
select x from t1 for system_time as of timestamp unix_timestamp(@ts);
x
1
select x from t1 for system_time as of timestamp @trx_start;
x
set @ts= timestamp'1-1-1 0:0:0'; set @ts= timestamp'1-1-1 0:0:0';
## TRANSACTION specifier ## TRANSACTION specifier
select x from t1 for system_time as of transaction @ts;
x
select x from t1 for system_time as of transaction unix_timestamp(@ts);
x
select x from t1 for system_time as of transaction @trx_start; select x from t1 for system_time as of transaction @trx_start;
x x
1 1
## no specifier (auto-detection) ## no specifier (auto-detection)
select x from t1 for system_time as of @ts; select x from t1 for system_time as of @ts;
x x
select x from t1 for system_time as of unix_timestamp(@ts);
x
select x from t1 for system_time as of @trx_start; select x from t1 for system_time as of @trx_start;
x x
1 1
......
...@@ -103,32 +103,6 @@ select @trx_id1 < @trx_id2, @trx_id2 < @trx_id3; ...@@ -103,32 +103,6 @@ select @trx_id1 < @trx_id2, @trx_id2 < @trx_id3;
select @ts1 < @ts2, @ts2 < @ts3; select @ts1 < @ts2, @ts2 < @ts3;
@ts1 < @ts2 @ts2 < @ts3 @ts1 < @ts2 @ts2 < @ts3
1 1 1 1
# MVCC is not resolved
select * from t1 for system_time as of transaction @trx_id1;
x
1
select * from t1 for system_time as of timestamp @ts1;
x
3
select * from t1 for system_time as of transaction @trx_id2;
x
1
2
select * from t1 for system_time as of timestamp @ts2;
x
2
3
select * from t1 for system_time as of transaction @trx_id3;
x
1
2
3
select * from t1 for system_time as of timestamp @ts3;
x
1
2
3
set system_versioning_innodb_algorithm_simple= off;
# MVCC is resolved # MVCC is resolved
select * from t1 for system_time as of transaction @trx_id1; select * from t1 for system_time as of transaction @trx_id1;
x x
......
...@@ -216,19 +216,14 @@ select @trx_start < unix_timestamp(@ts) - 100 as trx_start_good; ...@@ -216,19 +216,14 @@ select @trx_start < unix_timestamp(@ts) - 100 as trx_start_good;
--echo ## TIMESTAMP specifier --echo ## TIMESTAMP specifier
select x from t1 for system_time as of timestamp @ts; select x from t1 for system_time as of timestamp @ts;
select x from t1 for system_time as of timestamp unix_timestamp(@ts);
select x from t1 for system_time as of timestamp @trx_start;
set @ts= timestamp'1-1-1 0:0:0'; set @ts= timestamp'1-1-1 0:0:0';
--echo ## TRANSACTION specifier --echo ## TRANSACTION specifier
select x from t1 for system_time as of transaction @ts;
select x from t1 for system_time as of transaction unix_timestamp(@ts);
select x from t1 for system_time as of transaction @trx_start; select x from t1 for system_time as of transaction @trx_start;
--echo ## no specifier (auto-detection) --echo ## no specifier (auto-detection)
select x from t1 for system_time as of @ts; select x from t1 for system_time as of @ts;
select x from t1 for system_time as of unix_timestamp(@ts);
select x from t1 for system_time as of @trx_start; select x from t1 for system_time as of @trx_start;
......
...@@ -108,15 +108,6 @@ select sys_start from t1 where x = 3 into @trx_id3; ...@@ -108,15 +108,6 @@ select sys_start from t1 where x = 3 into @trx_id3;
select @trx_id1 < @trx_id2, @trx_id2 < @trx_id3; select @trx_id1 < @trx_id2, @trx_id2 < @trx_id3;
select @ts1 < @ts2, @ts2 < @ts3; select @ts1 < @ts2, @ts2 < @ts3;
--echo # MVCC is not resolved
select * from t1 for system_time as of transaction @trx_id1;
select * from t1 for system_time as of timestamp @ts1;
select * from t1 for system_time as of transaction @trx_id2;
select * from t1 for system_time as of timestamp @ts2;
select * from t1 for system_time as of transaction @trx_id3;
select * from t1 for system_time as of timestamp @ts3;
set system_versioning_innodb_algorithm_simple= off;
--echo # MVCC is resolved --echo # MVCC is resolved
select * from t1 for system_time as of transaction @trx_id1; select * from t1 for system_time as of transaction @trx_id1;
select * from t1 for system_time as of timestamp @ts1; select * from t1 for system_time as of timestamp @ts1;
......
...@@ -726,7 +726,6 @@ typedef struct system_variables ...@@ -726,7 +726,6 @@ typedef struct system_variables
uint in_subquery_conversion_threshold; uint in_subquery_conversion_threshold;
vers_asof_timestamp_t vers_asof_timestamp; vers_asof_timestamp_t vers_asof_timestamp;
my_bool vers_innodb_algorithm_simple;
ulong vers_alter_history; ulong vers_alter_history;
} SV; } SV;
......
...@@ -865,8 +865,7 @@ int SELECT_LEX::vers_setup_conds(THD *thd, TABLE_LIST *tables, COND **where_expr ...@@ -865,8 +865,7 @@ int SELECT_LEX::vers_setup_conds(THD *thd, TABLE_LIST *tables, COND **where_expr
// have uint64 type of sys_trx_(start|end) field. // have uint64 type of sys_trx_(start|end) field.
// They need special handling. // They need special handling.
TABLE *t= table->table; TABLE *t= table->table;
if (t->versioned(VERS_TIMESTAMP) || if (t->versioned(VERS_TIMESTAMP))
thd->variables.vers_innodb_algorithm_simple)
{ {
if (vers_conditions) if (vers_conditions)
{ {
......
...@@ -396,12 +396,6 @@ static Sys_var_vers_asof Sys_vers_asof_timestamp( ...@@ -396,12 +396,6 @@ static Sys_var_vers_asof Sys_vers_asof_timestamp(
SESSION_VAR(vers_asof_timestamp.type), NO_CMD_LINE, SESSION_VAR(vers_asof_timestamp.type), NO_CMD_LINE,
Sys_var_vers_asof::asof_keywords, DEFAULT(SYSTEM_TIME_UNSPECIFIED)); Sys_var_vers_asof::asof_keywords, DEFAULT(SYSTEM_TIME_UNSPECIFIED));
static Sys_var_mybool Sys_vers_innodb_algorithm_simple(
"system_versioning_innodb_algorithm_simple",
"Use simple algorithm of timestamp handling in InnoDB instead of TRX_SEES",
SESSION_VAR(vers_innodb_algorithm_simple), CMD_LINE(OPT_ARG),
DEFAULT(TRUE));
static const char *vers_alter_history_keywords[]= {"ERROR", "KEEP",/* "SURVIVE", "DROP",*/ NULL}; static const char *vers_alter_history_keywords[]= {"ERROR", "KEEP",/* "SURVIVE", "DROP",*/ NULL};
static Sys_var_enum Sys_vers_alter_history( static Sys_var_enum Sys_vers_alter_history(
"system_versioning_alter_history", "Versioning ALTER TABLE mode. " "system_versioning_alter_history", "Versioning ALTER TABLE mode. "
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment