[MDEV-15472] Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failure or unexpected ER_REQUIRE_ROW_BINLOG_FORMAT Created: 2018-03-05  Updated: 2018-04-07  Resolved: 2018-03-29

Status: Closed
Project: MariaDB Server
Component/s: Admin statements, Storage Engine - RocksDB
Affects Version/s: 10.2, 10.3
Fix Version/s: 10.2.14

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Sergei Petrunia
Resolution: Fixed Votes: 0
Labels: affects-tests

Sprint: 10.2.14

 Description   

Run with --plugin-load-add=ha_rocksdb.

--source include/have_binlog_format_row.inc
 
CREATE OR REPLACE TABLE t1 (i INT) ENGINE=RocksDB;
LOCK TABLE t1 WRITE;
FLUSH TABLES;
 
# Cleanup
DROP TABLE t1;

10.2 d0cc7a52255fd39 debug

mysqld: /data/src/10.2/sql/sql_error.cc:380: void Diagnostics_area::set_ok_status(ulonglong, ulonglong, const char*): Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed.
180305 19:01:20 [ERROR] mysqld got signal 6 ;
 
#8  0x00005607bb3172f3 in Diagnostics_area::set_ok_status (this=0x7f9f7c005c90, affected_rows=0, last_insert_id=0, message=0x0) at /data/src/10.2/sql/sql_error.cc:380
#9  0x00005607bb2c9a4b in my_ok (thd=0x7f9f7c000b00, affected_rows=0, id=0, message=0x0) at /data/src/10.2/sql/sql_class.h:4492
#10 0x00005607bb34a18b in mysql_execute_command (thd=0x7f9f7c000b00) at /data/src/10.2/sql/sql_parse.cc:5427
#11 0x00005607bb3515d1 in mysql_parse (thd=0x7f9f7c000b00, rawbuf=0x7f9f7c0125f8 "FLUSH TABLES", length=12, parser_state=0x7f9fa9fc2200, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:7902
#12 0x00005607bb33f4f1 in dispatch_command (command=COM_QUERY, thd=0x7f9f7c000b00, packet=0x7f9f7c18bd31 "FLUSH TABLES", packet_length=12, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:1806
#13 0x00005607bb33de54 in do_command (thd=0x7f9f7c000b00) at /data/src/10.2/sql/sql_parse.cc:1360
#14 0x00005607bb48c646 in do_handle_one_connection (connect=0x5607bef1cea0) at /data/src/10.2/sql/sql_connect.cc:1335
#15 0x00005607bb48c3d3 in handle_one_connection (arg=0x5607bef1cea0) at /data/src/10.2/sql/sql_connect.cc:1241
#16 0x00005607bb8ac1f8 in pfs_spawn_thread (arg=0x5607bef22430) at /data/src/10.2/storage/perfschema/pfs.cc:1862
#17 0x00007f9fb7d32494 in start_thread (arg=0x7f9fa9fc3700) at pthread_create.c:333
#18 0x00007f9fb611893f in clone () from /lib/x86_64-linux-gnu/libc.so.6

10.2 non-debug 8f98835bb865

mysqltest: At line 5: query 'FLUSH TABLES' failed: 4056: Can't execute updates on master with binlog_format != ROW.



 Comments   
Comment by Elena Stepanova [ 2018-03-21 ]

I am disabling RocksDB runs in regular regression tests until this bug is fixed. Most of them fail with it anyway.

Comment by Sergei Petrunia [ 2018-03-29 ]

The upstream is not affected. (They don't call ha_rocksdb::external_lock for FLUSH TABLES when it is done under LOCK TABLES, for some reason)

Generated at Thu Feb 08 08:21:35 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.