summaryrefslogtreecommitdiff
path: root/storage/rocksdb/mysql-test/rocksdb/r/mariadb_plugin.result
diff options
context:
space:
mode:
Diffstat (limited to 'storage/rocksdb/mysql-test/rocksdb/r/mariadb_plugin.result')
-rw-r--r--storage/rocksdb/mysql-test/rocksdb/r/mariadb_plugin.result35
1 files changed, 35 insertions, 0 deletions
diff --git a/storage/rocksdb/mysql-test/rocksdb/r/mariadb_plugin.result b/storage/rocksdb/mysql-test/rocksdb/r/mariadb_plugin.result
new file mode 100644
index 00000000000..6d6cb1db54e
--- /dev/null
+++ b/storage/rocksdb/mysql-test/rocksdb/r/mariadb_plugin.result
@@ -0,0 +1,35 @@
+#
+# MDEV-14843: Assertion `s_tx_list.size() == 0' failed in myrocks::Rdb_transaction::term_mutex
+#
+INSTALL SONAME 'ha_rocksdb';
+connect con1,localhost,root,,test;
+CREATE TABLE t1 (i INT) ENGINE=RocksDB;
+insert into t1 values (1);
+DROP TABLE t1;
+connection default;
+UNINSTALL SONAME 'ha_rocksdb';
+Warnings:
+Warning 1620 Plugin is busy and will be uninstalled on shutdown
+SELECT ENGINE, SUPPORT FROM INFORMATION_SCHEMA.ENGINES WHERE ENGINE='ROCKSDB';
+ENGINE SUPPORT
+ROCKSDB NO
+disconnect con1;
+#
+# MDEV-15686: Loading MyRocks plugin back after it has been unloaded causes a crash
+#
+call mtr.add_suppression("Plugin 'ROCKSDB.*' init function returned error.");
+call mtr.add_suppression("Plugin 'ROCKSDB.*' registration as a INFORMATION SCHEMA failed.");
+call mtr.add_suppression("Plugin 'ROCKSDB' registration as a STORAGE ENGINE failed");
+#
+# There are two possible scenarios:
+# ha_rocksdb.{dll,so} is still loaded into mysqld's address space. Its
+# global variables are in the state that doesn't allow it to be
+# initialized back (this is what MDEV-15686 is about). This is handled
+# by intentionally returning an error from rocksdb_init_func.
+#
+# The second case is when ha_rocksdb.{ddl,so} has been fully unloaded
+# and so it will be now loaded as if it happens for the first time.
+INSTALL SONAME 'ha_rocksdb';
+# Whatever happened on the previous step, restore things to the way they
+# were at testcase start.
+UNINSTALL SONAME 'ha_rocksdb';