Skip to content

Commit

Permalink
PS-6789 (Merge MySQL 8.0.20): Fixed RocksDB issues
Browse files Browse the repository at this point in the history
https://jira.percona.com/browse/PS-6789

***
Changed use of 'Field::real_maybe_null()' to 'Field::is_nullable()' due to
changes in the fix for Bug #30460528
"RENAME FIELD::REAL_MAYBE_NULL() TO FIELD::IS_NULLABLE()"
(mysql/mysql-server@c5f8a62).

***
'binary_log::transaction::compression::ZSTD' enum value renamed to
'binary_log::transaction::compression::ALGORITHM_ZSTD' to avoid conflicts with
'RocksDB' that has 'ZSTD' defined as a macro.

***
Restored '+x' file system attribute for the 'mysql-test/mysql-test-run.pl' that
was lost by mistake in one of the previous commits.

***
Re-recorded 'rocksdb.read_only_tx' MTR test case because of the changes in
the implementation of WL percona#3549 "Binlog: compression"
(https://dev.mysql.com/worklog/task/?id=3549)
(commit mysql/mysql-server@1e5ae34)
that caused increasing 'Format_description_event' binlog event size and
therefore some pre-recorded binary log positions in the '.result' files.

***
Re-recorded 'rocksdb.type_enum_indexes' MTR test case due to new
'EXPLAIN SELECT' results introduced in the implementation of
WL #13538 "Add index hints based on new hint infrastructure"
(https://dev.mysql.com/worklog/task/?id=13538)
(commit mysql/mysql-server@3f8e507)

***
Re-recorded 'rocksdb.index_merge_rocksdb2' MTR test case because of the
changed execution plan (more hash joins instead of nested block loops)
introduced in these improvements Bug #30528604
"DELETE THE PRE-ITERATOR EXECUTOR"
(commit mysql/mysql-server@ef166f8),
Bug #30473261
"CONVERT THE INDEX SUBQUERY ENGINES INTO USING THE ITERATOR EXECUTOR"
(commit mysql/mysql-server@cb4116e)
(commit mysql/mysql-server@629b549)
(commit mysql/mysql-server@5a41fba)
(commit mysql/mysql-server@31bd903)
(commit mysql/mysql-server@75bbe1b)
(commit mysql/mysql-server@6226c1a)
(commit mysql/mysql-server@0b45e96)
(commit mysql/mysql-server@8e45d7e)
(commit mysql/mysql-server@7493ae4)
(commit mysql/mysql-server@a5f60bf)
(commit mysql/mysql-server@609b86e),
Bug #30912972
"ASSERTION `KEYLEN == M_START_KEY.LENGTH' FAILED"
(commit mysql/mysql-server@b28bea5).

***
Re-recorded 'rocksdb.rocksdb' and 'rocksdb.insert_with_keys' MTR test cases
because of the new deprecation warning introduced in the implementation of
WL #13325 "Deprecate VALUES syntax in INSERT ... ON DUPLICATE KEY UPDATE"
(https://dev.mysql.com/worklog/task/?id=13325)
(commit mysql/mysql-server@6f3b9df)

***
Re-recorded 'rocksdb_rppl.rpl_rocksdb_stm_mixed_crash_safe' and
'rocksdb_rpl.rpl_rocksdb_row_crash_safe' MTR test cases due to new column
'Require_table_primary_key_check' appearing in
'SHOW CREATE TABLE mysql.slave_relay_log_info' introduced in the
implementation of WL #13239 "Enable/disable primary key checks on slaves"
(https://dev.mysql.com/worklog/task/?id=13239)
(commit mysql/mysql-server@e51bdc3).

***
Re-recorded 'rocksdb_rpl.rpl_rocksdb_stm_mixed_crash_safe' and
'rocksdb_rpl.rpl_rocksdb_row_crash_safe' MTR test cases because of the
changes in the 'mysql-test/extra/rpl_tests/rpl_mixing_engines.inc'
include file introduced in the implementation of WL percona#3549
"Binlog: compression"
(https://dev.mysql.com/worklog/task/?id=3549)
(commit mysql/mysql-server@1e5ae34).
  • Loading branch information
George O. Lorch III authored and inikep committed Aug 25, 2022
1 parent dac40db commit 07e52a0
Show file tree
Hide file tree
Showing 9 changed files with 340 additions and 347 deletions.
6 changes: 3 additions & 3 deletions mysql-test/suite/rocksdb/r/index_merge_rocksdb2.result
Original file line number Diff line number Diff line change
Expand Up @@ -388,7 +388,7 @@ explain select * from t0,t1 where t0.key1 = 5 and
(t1.key1 = t0.key1 or t1.key8 = t0.key1);
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
1 SIMPLE t0 NULL ref i1 i1 4 const 2 100.00 NULL
1 SIMPLE t1 NULL index_merge i1,i8 i1,i8 4,4 NULL 4 100.00 Using union(i1,i8); Using where; Using join buffer (Block Nested Loop)
1 SIMPLE t1 NULL index_merge i1,i8 i1,i8 4,4 NULL 4 100.00 Using union(i1,i8); Using where; Using join buffer (hash join)
Warnings:
Note 1003 /* select#1 */ select `test`.`t0`.`key1` AS `key1`,`test`.`t0`.`key2` AS `key2`,`test`.`t0`.`key3` AS `key3`,`test`.`t0`.`key4` AS `key4`,`test`.`t0`.`key5` AS `key5`,`test`.`t0`.`key6` AS `key6`,`test`.`t0`.`key7` AS `key7`,`test`.`t0`.`key8` AS `key8`,`test`.`t1`.`key1` AS `key1`,`test`.`t1`.`key2` AS `key2`,`test`.`t1`.`key3` AS `key3`,`test`.`t1`.`key4` AS `key4`,`test`.`t1`.`key5` AS `key5`,`test`.`t1`.`key6` AS `key6`,`test`.`t1`.`key7` AS `key7`,`test`.`t1`.`key8` AS `key8` from `test`.`t0` join `test`.`t1` where ((`test`.`t0`.`key1` = 5) and ((`test`.`t1`.`key1` = 5) or (`test`.`t1`.`key8` = 5)))
# Fix for bug#1974
Expand Down Expand Up @@ -489,7 +489,7 @@ where (a.key1 < 500000 or a.key2 < 3)
and (b.key1 < 500000 or b.key2 < 3);
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
1 SIMPLE a NULL index_merge i1,i2 i1,i2 4,4 NULL # 100.00 Using sort_union(i1,i2); Using where
1 SIMPLE b NULL index_merge i1,i2 i1,i2 4,4 NULL # 100.00 Using sort_union(i1,i2); Using where; Using join buffer (Block Nested Loop)
1 SIMPLE b NULL index_merge i1,i2 i1,i2 4,4 NULL # 100.00 Using sort_union(i1,i2); Using where; Using join buffer (hash join)
Warnings:
Note 1003 /* select#1 */ select max((((((((((`test`.`a`.`key1` + `test`.`b`.`key1`) + `test`.`a`.`key2`) + `test`.`b`.`key2`) + `test`.`a`.`key3`) + `test`.`b`.`key3`) + `test`.`a`.`key4`) + `test`.`b`.`key4`) + `test`.`a`.`key5`) + `test`.`b`.`key5`)) AS `max(a.key1 + b.key1 + a.key2 + b.key2 + a.key3 + b.key3 + a.key4 + b.key4 + a.key5 + b.key5)` from `test`.`t0` `a` FORCE INDEX (`i2`) FORCE INDEX (`i1`) join `test`.`t0` `b` FORCE INDEX (`i2`) FORCE INDEX (`i1`) where (((`test`.`a`.`key1` < 500000) or (`test`.`a`.`key2` < 3)) and ((`test`.`b`.`key1` < 500000) or (`test`.`b`.`key2` < 3)))
select max(a.key1 + b.key1 + a.key2 + b.key2 + a.key3 + b.key3 + a.key4 + b.key4 + a.key5 + b.key5)
Expand All @@ -505,7 +505,7 @@ where (a.key1 = 1 or a.key2 = 1)
and (b.key1 = 1 or b.key2 = 1);
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
1 SIMPLE a NULL index_merge i1,i2 i1,i2 4,4 NULL # # Using union(i1,i2); Using where
1 SIMPLE b NULL index_merge i1,i2 i1,i2 4,4 NULL # # Using union(i1,i2); Using where; Using join buffer (Block Nested Loop)
1 SIMPLE b NULL index_merge i1,i2 i1,i2 4,4 NULL # # Using union(i1,i2); Using where; Using join buffer (hash join)
Warnings:
Note 1003 /* select#1 */ select max((((((((((`test`.`a`.`key1` + `test`.`b`.`key1`) + `test`.`a`.`key2`) + `test`.`b`.`key2`) + `test`.`a`.`key3`) + `test`.`b`.`key3`) + `test`.`a`.`key4`) + `test`.`b`.`key4`) + `test`.`a`.`key5`) + `test`.`b`.`key5`)) AS `max(a.key1 + b.key1 + a.key2 + b.key2 + a.key3 + b.key3 + a.key4 + b.key4 + a.key5 + b.key5)` from `test`.`t0` `a` FORCE INDEX (`i2`) FORCE INDEX (`i1`) join `test`.`t0` `b` FORCE INDEX (`i2`) FORCE INDEX (`i1`) where (((`test`.`a`.`key1` = 1) or (`test`.`a`.`key2` = 1)) and ((`test`.`b`.`key1` = 1) or (`test`.`b`.`key2` = 1)))
select max(a.key1 + b.key1 + a.key2 + b.key2 + a.key3 + b.key3 + a.key4 + b.key4 + a.key5 + b.key5)
Expand Down
2 changes: 2 additions & 0 deletions mysql-test/suite/rocksdb/r/insert_with_keys.result
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,8 @@ INSERT IGNORE INTO t1 (a,b) VALUES (1,'a'),(12345,'z');
Warnings:
Warning 1062 Duplicate entry '1-a' for key 't1.a'
INSERT INTO t1 (a,b) VALUES (1,'a'),(12345,'z') ON DUPLICATE KEY UPDATE a = a+VALUES(a);
Warnings:
Warning 1287 'VALUES function' is deprecated and will be removed in a future release. Please use an alias (INSERT INTO ... VALUES (...) AS alias) and replace VALUES(col) in the ON DUPLICATE KEY UPDATE clause with alias.col instead
SELECT a,b FROM t1;
a b
100 a
Expand Down
2 changes: 1 addition & 1 deletion mysql-test/suite/rocksdb/r/read_only_tx.result
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Variable_name Value
Binlog_snapshot_file binlog.000001
SHOW STATUS LIKE 'binlog_snapshot_position';
Variable_name Value
Binlog_snapshot_position 672
Binlog_snapshot_position 673
select case when variable_value-@p < 1000 then 'true' else variable_value-@p end from performance_schema.global_status where variable_name='rocksdb_number_sst_entry_put';
case when variable_value-@p < 1000 then 'true' else variable_value-@p end
true
Expand Down
4 changes: 4 additions & 0 deletions mysql-test/suite/rocksdb/r/rocksdb.result
Original file line number Diff line number Diff line change
Expand Up @@ -1991,7 +1991,11 @@ blob_col text,
PRIMARY KEY (id)
) ENGINE=ROCKSDB CHARSET=latin1;
INSERT INTO t1 SET id=123, blob_col=repeat('z',64000) ON DUPLICATE KEY UPDATE blob_col=VALUES(blob_col);
Warnings:
Warning 1287 'VALUES function' is deprecated and will be removed in a future release. Please use an alias (INSERT INTO ... VALUES (...) AS alias) and replace VALUES(col) in the ON DUPLICATE KEY UPDATE clause with alias.col instead
INSERT INTO t1 SET id=123, blob_col='' ON DUPLICATE KEY UPDATE blob_col=VALUES(blob_col);
Warnings:
Warning 1287 'VALUES function' is deprecated and will be removed in a future release. Please use an alias (INSERT INTO ... VALUES (...) AS alias) and replace VALUES(col) in the ON DUPLICATE KEY UPDATE clause with alias.col instead
DROP TABLE t1;
#
# Issue #17: Automatic per-index column families
Expand Down
2 changes: 1 addition & 1 deletion mysql-test/suite/rocksdb/r/type_enum_indexes.result
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ test3
test4
EXPLAIN SELECT DISTINCT b FROM t1 IGNORE INDEX (b);
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
1 SIMPLE t1 NULL ALL b NULL NULL NULL # 100.00 Using temporary
1 SIMPLE t1 NULL ALL NULL NULL NULL NULL # 100.00 Using temporary
Warnings:
Note 1003 /* select#1 */ select distinct `test`.`t1`.`b` AS `b` from `test`.`t1` IGNORE INDEX (`b`)
SELECT DISTINCT b FROM t1 IGNORE INDEX (b);
Expand Down
Loading

0 comments on commit 07e52a0

Please sign in to comment.