Details
-
Bug
-
Status: Stalled (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.2, 10.3, 10.4, 10.5
-
None
Description
We do not seem to have a multi-table-specific variation for this assertion failure yet.
CREATE TABLE t (f INT NOT NULL); |
INSERT INTO t VALUES (0),(0); |
--error WARN_DATA_TRUNCATED
|
UPDATE t AS t1 LEFT JOIN t AS t2 ON t1.f <=> t2.f SET t2.f = NULL; |
|
# Cleanup
|
DROP TABLE t; |
10.2 3e617b8b |
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.
|
200817 19:12:27 [ERROR] mysqld got signal 6 ;
|
|
#7 0x00007fc7c6802f12 in __GI___assert_fail (assertion=0x558f1ed576d8 "!is_set() || (m_status == DA_OK_BULK && is_bulk_op())", file=0x558f1ed57610 "/data/src/10.2/sql/sql_error.cc", line=380, function=0x558f1ed57a20 <Diagnostics_area::set_ok_status(unsigned long long, unsigned long long, char const*)::__PRETTY_FUNCTION__> "void Diagnostics_area::set_ok_status(ulonglong, ulonglong, const char*)") at assert.c:101
|
#8 0x0000558f1e2ac413 in Diagnostics_area::set_ok_status (this=0x7fc7b0005ca0, affected_rows=0, last_insert_id=0, message=0x7fc7c0b356b0 "Rows matched: 2 Changed: 0 Warnings: 2") at /data/src/10.2/sql/sql_error.cc:380
|
#9 0x0000558f1e25f6c9 in my_ok (thd=0x7fc7b0000af0, affected_rows=0, id=0, message=0x7fc7c0b356b0 "Rows matched: 2 Changed: 0 Warnings: 2") at /data/src/10.2/sql/sql_class.h:4560
|
#10 0x0000558f1e3d0506 in multi_update::send_eof (this=0x7fc7b0013f08) at /data/src/10.2/sql/sql_update.cc:2652
|
#11 0x0000558f1e348978 in do_select (join=0x7fc7b0013fd0, procedure=0x0) at /data/src/10.2/sql/sql_select.cc:18454
|
#12 0x0000558f1e32235b in JOIN::exec_inner (this=0x7fc7b0013fd0) at /data/src/10.2/sql/sql_select.cc:3638
|
#13 0x0000558f1e321816 in JOIN::exec (this=0x7fc7b0013fd0) at /data/src/10.2/sql/sql_select.cc:3433
|
#14 0x0000558f1e3229cc in mysql_select (thd=0x7fc7b0000af0, tables=0x7fc7b0012598, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=1342177408, result=0x7fc7b0013f08, unit=0x7fc7b00046e8, select_lex=0x7fc7b0004e28) at /data/src/10.2/sql/sql_select.cc:3833
|
#15 0x0000558f1e3cce0b in mysql_multi_update (thd=0x7fc7b0000af0, table_list=0x7fc7b0012598, fields=0x7fc7b0004f50, values=0x7fc7b0005430, conds=0x0, options=0, handle_duplicates=DUP_ERROR, ignore=false, unit=0x7fc7b00046e8, select_lex=0x7fc7b0004e28, result=0x7fc7c0b35d30) at /data/src/10.2/sql/sql_update.cc:1629
|
#16 0x0000558f1e2da826 in mysql_execute_command (thd=0x7fc7b0000af0) at /data/src/10.2/sql/sql_parse.cc:4074
|
#17 0x0000558f1e2e630d in mysql_parse (thd=0x7fc7b0000af0, rawbuf=0x7fc7b0012458 "UPDATE t AS t1 LEFT JOIN t AS t2 ON t1.f <=> t2.f SET t2.f = NULL", length=65, parser_state=0x7fc7c0b36610, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:7733
|
#18 0x0000558f1e2d4639 in dispatch_command (command=COM_QUERY, thd=0x7fc7b0000af0, packet=0x7fc7b008cdb1 "UPDATE t AS t1 LEFT JOIN t AS t2 ON t1.f <=> t2.f SET t2.f = NULL", packet_length=65, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:1824
|
#19 0x0000558f1e2d30b4 in do_command (thd=0x7fc7b0000af0) at /data/src/10.2/sql/sql_parse.cc:1377
|
#20 0x0000558f1e4292a1 in do_handle_one_connection (connect=0x558f20cdf190) at /data/src/10.2/sql/sql_connect.cc:1336
|
#21 0x0000558f1e42900c in handle_one_connection (arg=0x558f20cdf190) at /data/src/10.2/sql/sql_connect.cc:1241
|
#22 0x0000558f1ec3f96c in pfs_spawn_thread (arg=0x558f20c2bea0) at /data/src/10.2/storage/perfschema/pfs.cc:1869
|
#23 0x00007fc7c878b4a4 in start_thread (arg=0x7fc7c0b37700) at pthread_create.c:456
|
#24 0x00007fc7c68bfd0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
|
Reproducible with at least MyISAM and InnoDB.
Not reproducible on 10.1.
No obvious problem on a non-debug build.