Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
10.6, 10.11, 11.2, 11.4, 11.6
-
None
Description
I'm setting it to critical because innodb_snapshot_isolation=ON has been made default in 11.6 which is going GA soon; so, as far as default settings are concerned, it can be considered a regression while technically it is not.
--source include/have_innodb.inc
|
|
CREATE TABLE t1 (a INT) ENGINE=InnoDB; |
CREATE TABLE t2 (b INT) ENGINE=InnoDB; |
START TRANSACTION; |
INSERT INTO t1 VALUES (0); |
|
--connect (con1,localhost,root,,)
|
SET innodb_snapshot_isolation=ON; |
START TRANSACTION; |
SELECT * FROM t2; |
SAVEPOINT sp1;
|
--error ER_CHECKREAD
|
UPDATE t1 SET a = 1; |
SAVEPOINT sp1;
|
|
# Cleanup
|
ROLLBACK; |
--disconnect con1
|
--connection default
|
DROP TABLE t1, t2; |
10.6 1ed30e08af4780a2b1f6d2b52f91fea89f892ef3 |
mariadbd: /data/bld/10.6-asan/sql/sql_error.h:1066: uint Diagnostics_area::sql_errno() const: Assertion `m_status == DA_ERROR' failed.
|
241022 23:31:51 [ERROR] mysqld got signal 6 ;
|
|
#9 0x00007fb320253e32 in __GI___assert_fail (assertion=0x55698d59c020 "m_status == DA_ERROR", file=0x55698d59bf60 "/data/bld/10.6-asan/sql/sql_error.h", line=1066, function=0x55698d59c060 "uint Diagnostics_area::sql_errno() const") at ./assert/assert.c:101
|
#10 0x000055698b1dc274 in Diagnostics_area::sql_errno (this=0x62b0000f41f8) at /data/bld/10.6-asan/sql/sql_error.h:1066
|
#11 0x000055698b373422 in thd_get_error_number (thd=0x62b0000ee218) at /data/bld/10.6-asan/sql/sql_class.cc:537
|
#12 0x000055698cd9723f in trx_state_eq (trx=0x7fb31831ff40, state=TRX_STATE_ACTIVE, relaxed=true) at /data/bld/10.6-asan/storage/innobase/include/trx0trx.inl:65
|
#13 0x000055698cd996de in trx_release_savepoint_for_mysql (trx=0x7fb31831ff40, savepoint_name=0x7fb31005ba00 "127W7W53LC") at /data/bld/10.6-asan/storage/innobase/trx/trx0roll.cc:553
|
#14 0x000055698c7c0a93 in innobase_release_savepoint (hton=0x615000002398, thd=0x62b0000ee218, savepoint=0x6210000dfd70) at /data/bld/10.6-asan/storage/innobase/handler/ha_innodb.cc:4961
|
#15 0x000055698bd59c26 in ha_release_savepoint (thd=0x62b0000ee218, sv=0x6210000dfd38) at /data/bld/10.6-asan/sql/handler.cc:3074
|
#16 0x000055698b973bd7 in trans_savepoint (thd=0x62b0000ee218, name=...) at /data/bld/10.6-asan/sql/transaction.cc:632
|
#17 0x000055698b4c85bb in mysql_execute_command (thd=0x62b0000ee218, is_called_from_prepared_stmt=false) at /data/bld/10.6-asan/sql/sql_parse.cc:5843
|
#18 0x000055698b4d79d6 in mysql_parse (thd=0x62b0000ee218, rawbuf=0x62b0000f5238 "SAVEPOINT sp1", length=13, parser_state=0x7fb31005ca30) at /data/bld/10.6-asan/sql/sql_parse.cc:8181
|
#19 0x000055698b4acee5 in dispatch_command (command=COM_QUERY, thd=0x62b0000ee218, packet=0x6290002cb219 "SAVEPOINT sp1", packet_length=13, blocking=true) at /data/bld/10.6-asan/sql/sql_parse.cc:1897
|
#20 0x000055698b4a9c19 in do_command (thd=0x62b0000ee218, blocking=true) at /data/bld/10.6-asan/sql/sql_parse.cc:1410
|
#21 0x000055698b929f4c in do_handle_one_connection (connect=0x6080000147b8, put_in_cache=true) at /data/bld/10.6-asan/sql/sql_connect.cc:1417
|
#22 0x000055698b929908 in handle_one_connection (arg=0x6080000147b8) at /data/bld/10.6-asan/sql/sql_connect.cc:1319
|
#23 0x000055698c5a152a in pfs_spawn_thread (arg=0x617000008598) at /data/bld/10.6-asan/storage/perfschema/pfs.cc:2201
|
#24 0x00007fb3202a8044 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
|
#25 0x00007fb32032861c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
|
On a non-debug build, SAVEPOINT does not produce any error, and the error upon the preceding UPDATE is the same, ER_CHECKREAD.