diff options
author | Monty <monty@mariadb.org> | 2019-08-08 20:10:00 +0300 |
---|---|---|
committer | Monty <monty@mariadb.org> | 2019-08-08 23:08:23 +0300 |
commit | 6765cc607764c920bc5fbf4128bb526b73f15c2e (patch) | |
tree | af87f7f234df58df44e666fc5abd398113978fbb /storage/rocksdb | |
parent | dbac2039e81f6d371acdacfb65eba10e395bb9a2 (diff) | |
download | mariadb-git-6765cc607764c920bc5fbf4128bb526b73f15c2e.tar.gz |
Fixed assertion Assertion `!table->pos_in_locked_tables' failed
MDEV-17717
Assertion `!table->pos_in_locked_tables' failed in tc_release_table on
flushing RocksDB table under SERIALIZABLE
MDEV-17998
Deadlock and eventual Assertion `!table->pos_in_locked_tables' failed
in tc_release_table on KILL_TIMEOUT
MDEV-19591
Assertion `!table->pos_in_locked_tables' failed in tc_release_table upon
altering table into S3 under lock.
The problem was that thd->open_tables->pos_in_locked_tables was not reset
when alter table failed to reopen a locked table.
Diffstat (limited to 'storage/rocksdb')
-rw-r--r-- | storage/rocksdb/mysql-test/rocksdb/r/kill.result | 6 | ||||
-rw-r--r-- | storage/rocksdb/mysql-test/rocksdb/t/kill.test | 9 |
2 files changed, 15 insertions, 0 deletions
diff --git a/storage/rocksdb/mysql-test/rocksdb/r/kill.result b/storage/rocksdb/mysql-test/rocksdb/r/kill.result new file mode 100644 index 00000000000..19614e1fd95 --- /dev/null +++ b/storage/rocksdb/mysql-test/rocksdb/r/kill.result @@ -0,0 +1,6 @@ +CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=RocksDB; +LOCK TABLE t1 WRITE; +SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE; +FLUSH TABLES; +ERROR HY000: MyRocks supports only READ COMMITTED and REPEATABLE READ isolation levels. Please change from current isolation level SERIALIZABLE +DROP TABLE t1; diff --git a/storage/rocksdb/mysql-test/rocksdb/t/kill.test b/storage/rocksdb/mysql-test/rocksdb/t/kill.test new file mode 100644 index 00000000000..a2809d969d5 --- /dev/null +++ b/storage/rocksdb/mysql-test/rocksdb/t/kill.test @@ -0,0 +1,9 @@ +--source include/have_binlog_format_row.inc +--source include/have_rocksdb.inc + +CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=RocksDB; +LOCK TABLE t1 WRITE; +SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE; +--error ER_ISOLATION_MODE_NOT_SUPPORTED +FLUSH TABLES; +DROP TABLE t1; |