midenok / mariadb

MariaDB server is a community developed fork of MySQL server. Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry.
GNU General Public License v2.0
0 stars 0 forks source link

MDEV-20661 Corruption errors or Assertion `btr_validate_index(index, 0)' failed in row_upd_sec_index_entry upon DELETE HISTORY #76

Open midenok opened 4 years ago

midenok commented 4 years ago

Reproduce

--source include/have_innodb.inc

create table t1 (
  a varchar(4096),
  unique key (a)
) engine=innodb with system versioning;

insert into t1 values ('foo'),('bar');
update ignore t1 set a = 'qux';
delete history from t1;

# cleanup
drop table t1;

Result

#3  0x00007f9880213006 in __GI___assert_fail (assertion=0x1839e16 "btr_validate_index(index, 0)", file=0x18386d0 "/home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc", line=2423, function=0x1839d8a "dberr_t row_upd_sec_index_entry(upd_node_t *, que_thr_t *)") at assert.c:101
#4  0x00000000010c3e7f in row_upd_sec_index_entry (node=0x7f9814079290, thr=0x7f98140795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2423
#5  0x00000000010be5aa in row_upd_sec_step (node=0x7f9814079290, thr=0x7f98140795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2547
#6  0x00000000010babc7 in row_upd (node=0x7f9814079290, thr=0x7f98140795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3327
#7  0x00000000010ba475 in row_upd_step (thr=0x7f98140795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3442
#8  0x000000000104dfd1 in row_update_for_mysql (prebuilt=0x7f981401b870) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1889
#9  0x0000000000e5ff27 in ha_innobase::delete_row (this=0x7f981401a8c0, record=0x7f98140315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8941
#10 0x0000000000bc76be in handler::ha_delete_row (this=0x7f981401a8c0, buf=0x7f98140315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6814
#11 0x0000000000dd70fe in TABLE::delete_row (this=0x7f981401e4a8) at /home/midenok/src/mariadb/10.4/src/sql/sql_delete.cc:289
#12 0x0000000000dd3040 in mysql_delete (thd=0x7f9814000d28, table_list=0x7f9814014158, conds=0x7f9814014cd8, order_list=0x7f98140056d0, limit=18446744073709551615, options=0, result=0x0) at /home/midenok/src/mariadb/10.4/src/sql/sql_delete.cc:804
#13 0x0000000000822518 in mysql_execute_command (thd=0x7f9814000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4727
#14 0x0000000000818180 in mysql_parse (thd=0x7f9814000d28, rawbuf=0x7f9814014080 "DELETE HISTORY FROM t1", length=22, parser_state=0x7f98700625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
2020-06-02 16:15:04 8 [ERROR] InnoDB: Record in index `a` of table `test`.`t1` was not found on update: TUPLE (info_bits=0, 2 fields): {[8]        (0xF0A4DBA787ECB4FC),[6]      (0x000000000202)} at: COMPACT RECORD(info_bits=0, 2 fields): {[8] G8xM  X(0xEB4738784DB41058),[6]      (0x000000000200)}
(rr) p index->name.m_name
$3 = 0x7f9814026210 "a"
(rr) call rec_print(stdout, rec, index)
PHYSICAL RECORD: n_fields 2; compact format; info bits 0
 0: len 8; hex eb4738784db41058; asc  G8xM  X;;
 1: len 6; hex 000000000200; asc       ;;

Related to #75.

midenok commented 4 years ago

breaks.gdb

break mysql_parse
  commands
    btc
  end
break row_ins_sec_index_entry
  condition $bpnum 0 == strcmp(index.name.m_name, "a")
  commands
    call dtuple_print(stdout, entry)
    c
  end
break row_upd_sec_step
  condition $bpnum 0 == strcmp(node->index.name.m_name, "a")
  commands
    call dtuple_print(stdout, node->row)
    call dtuple_print(stdout, node->upd_row)
    c
  end

Bad: UPDATE IGNORE

Thread 1 hit Breakpoint 9, row_upd_sec_step (node=0x7f9814079290, thr=0x7f98140795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540            ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)
DATA TUPLE: 6 fields;
 0: len 3; hex 666f6f; asc foo;;
 1: len 7; hex 5ed650d70ea2d5; asc ^ P    ;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000200; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702c3; asc     7  ;;
DATA TUPLE: 6 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 5ed650d8008fef; asc ^ P    ;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000200; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702c3; asc     7  ;;

Thread 1 hit Breakpoint 8, row_ins_sec_index_entry (index=0x7f98140241d0, entry=0x7f981407ebb0, thr=0x7f98140795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex eb4738784db41058; asc  G8xM  X;;
 1: len 6; hex 000000000200; asc       ;;

Thread 1 hit Breakpoint 8, row_ins_sec_index_entry (index=0x7f98140241d0, entry=0x7f9814022430, thr=0x7f98140791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex 8ecce90a7e52abd8; asc     ~R  ;;
 1: len 6; hex 000000000202; asc       ;;

Good

--source include/have_innodb.inc

create table t1 (
  a varchar(3),
  unique key (a)
) engine=innodb with system versioning;

insert into t1 values ('foo'), ('bar');
update ignore t1 set a= 'qux';
delete history from t1;

# cleanup
drop table t1;
Thread 1 hit Breakpoint 6, row_upd_sec_step (node=0x7f827402dd18, thr=0x7f827402e050) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540            ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)
DATA TUPLE: 6 fields;
 0: len 3; hex 666f6f; asc foo;;
 1: len 7; hex 5ed790750a9e74; asc ^  u  t;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000200; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702c3; asc     7  ;;
DATA TUPLE: 6 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 5ed790750b8e3e; asc ^  u  >;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000200; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702c3; asc     7  ;;

Thread 1 hit Breakpoint 5, row_ins_sec_index_entry (index=0x7f827401f920, entry=0x7f8274070320, thr=0x7f827402e050, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 3 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 7fffffff0f423f; asc      B?;;
 2: len 6; hex 000000000200; asc       ;;

Thread 1 hit Breakpoint 5, row_ins_sec_index_entry (index=0x7f827401f920, entry=0x7f827401db68, thr=0x7f827402d9e8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 3 fields;
 0: len 3; hex 666f6f; asc foo;;
 1: len 7; hex 5ed790750b8e3e; asc ^  u  >;;
 2: len 6; hex 000000000202; asc       ;;

Thread 1 hit Breakpoint 6, row_upd_sec_step (node=0x7f827402dd18, thr=0x7f827402e050) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540            ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)
DATA TUPLE: 6 fields;
 0: len 3; hex 626172; asc bar;;
 1: len 7; hex 5ed790750a9e74; asc ^  u  t;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000201; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702d1; asc     7  ;;
DATA TUPLE: 6 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 5ed790750b8e3e; asc ^  u  >;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000201; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702d1; asc     7  ;;

Thread 1 hit Breakpoint 5, row_ins_sec_index_entry (index=0x7f827401f920, entry=0x7f8274070440, thr=0x7f827402e050, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 3 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 7fffffff0f423f; asc      B?;;
 2: len 6; hex 000000000201; asc       ;;
midenok commented 4 years ago

Good: row_upd_sec_step() per each handler::ha_update_row()

1.

#0  row_upd_sec_step (node=0x7f827402dd18, thr=0x7f827402e050) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
#1  0x00000000010babc7 in row_upd (node=0x7f827402dd18, thr=0x7f827402e050) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3327
#2  0x00000000010ba475 in row_upd_step (thr=0x7f827402e050) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3442
#3  0x000000000104dfd1 in row_update_for_mysql (prebuilt=0x7f827402d220) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1889
#4  0x0000000000e5e47e in ha_innobase::update_row (this=0x7f827402ca30, old_row=0x7f827401c3d0 "\376\003foo^אu\n\236t\177\377\377\377\017B?", '\245' <repeats 29 times>, " \304\001t\202\177", new_row=0x7f827401c3b8 "\376\003qux^אu\v\216>\177\377\377\377\017B?\245\245\245\245\245\376\003foo^אu\n\236t\177\377\377\377\017B?", '\245' <repeats 29 times>, " \304\001t\202\177") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8816
#5  0x0000000000bc704a in handler::ha_update_row (this=0x7f827402ca30, old_data=0x7f827401c3d0 "\376\003foo^אu\n\236t\177\377\377\377\017B?", '\245' <repeats 29 times>, " \304\001t\202\177", new_data=0x7f827401c3b8 "\376\003qux^אu\v\216>\177\377\377\377\017B?\245\245\245\245\245\376\003foo^אu\n\236t\177\377\377\377\017B?", '\245' <repeats 29 times>, " \304\001t\202\177") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6751
#6  0x0000000000959f29 in mysql_update (thd=0x7f8274000d28, table_list=0x7f8274014168, fields=..., values=..., conds=0x7f8274014ec0, order_num=0, order=0x0, limit=18446744073709551615, ignore=true, found_return=0x7f82dc04e130, updated_return=0x7f82dc04e128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1056
#7  0x0000000000820e2b in mysql_execute_command (thd=0x7f8274000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#8  0x0000000000818180 in mysql_parse (thd=0x7f8274000d28, rawbuf=0x7f8274014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7f82dc04f5e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901

2.

#0  row_upd_sec_step (node=0x7f827402dd18, thr=0x7f827402e050) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
#1  0x00000000010babc7 in row_upd (node=0x7f827402dd18, thr=0x7f827402e050) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3327
#2  0x00000000010ba475 in row_upd_step (thr=0x7f827402e050) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3442
#3  0x000000000104dfd1 in row_update_for_mysql (prebuilt=0x7f827402d220) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1889
#4  0x0000000000e5e47e in ha_innobase::update_row (this=0x7f827402ca30, old_row=0x7f827401c3d0 "\376\003bar^אu\n\236t\177\377\377\377\017B?\245\245\245\245\245\376\003qux^אu\v\216>\177\377\377\377\017B?\245\245\245\245\245 \304\001t\202\177", new_row=0x7f827401c3b8 "\376\003qux^אu\v\216>\177\377\377\377\017B?\245\245\245\245\245\376\003bar^אu\n\236t\177\377\377\377\017B?\245\245\245\245\245\376\003qux^אu\v\216>\177\377\377\377\017B?\245\245\245\245\245 \304\001t\202\177") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8816
#5  0x0000000000bc704a in handler::ha_update_row (this=0x7f827402ca30, old_data=0x7f827401c3d0 "\376\003bar^אu\n\236t\177\377\377\377\017B?\245\245\245\245\245\376\003qux^אu\v\216>\177\377\377\377\017B?\245\245\245\245\245 \304\001t\202\177", new_data=0x7f827401c3b8 "\376\003qux^אu\v\216>\177\377\377\377\017B?\245\245\245\245\245\376\003bar^אu\n\236t\177\377\377\377\017B?\245\245\245\245\245\376\003qux^אu\v\216>\177\377\377\377\017B?\245\245\245\245\245 \304\001t\202\177") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6751
#6  0x0000000000959f29 in mysql_update (thd=0x7f8274000d28, table_list=0x7f8274014168, fields=..., values=..., conds=0x7f8274014ec0, order_num=0, order=0x0, limit=18446744073709551614, ignore=true, found_return=0x7f82dc04e130, updated_return=0x7f82dc04e128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1056
#7  0x0000000000820e2b in mysql_execute_command (thd=0x7f8274000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#8  0x0000000000818180 in mysql_parse (thd=0x7f8274000d28, rawbuf=0x7f8274014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7f82dc04f5e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901

Loop is in mysql_update().

Bad

1. same as Good

2. update_row() skipped

#0  handler::ha_update_row (this=0x7f981401a8c0, old_data=0x7f9814032600 "\374\003", new_data=0x7f98140315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6748
#1  0x0000000000959f29 in mysql_update (thd=0x7f9814000d28, table_list=0x7f9814014168, fields=..., values=..., conds=0x7f9814014ec0, order_num=0, order=0x0, limit=18446744073709551614, ignore=true, found_return=0x7f9870061130, updated_return=0x7f9870061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1056
#2  0x0000000000820e2b in mysql_execute_command (thd=0x7f9814000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#3  0x0000000000818180 in mysql_parse (thd=0x7f9814000d28, rawbuf=0x7f9814014080 "UPDATE IGNORE t1 SET a = 'qux'", length=30, parser_state=0x7f98700625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
6745      if (table->s->long_unique_table &&
6746              (error= check_duplicate_long_entries_update(table, table->file, (uchar *)new_data)))
6747      {
6748        return error;
6749      }

Caused by MDEV-371 (d00f19e8).

midenok commented 4 years ago

Bad: skip fixed

diff --git a/sql/handler.cc b/sql/handler.cc
index a7e7e2554cb..e44371c5db8 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -6743,6 +6743,7 @@ int handler::ha_update_row(const uchar *old_data, const uchar *new_data)
   mark_trx_read_write();
   increment_statistics(&SSV::ha_update_count);
   if (table->s->long_unique_table &&
+      !ha_thd()->lex->ignore &&
           (error= check_duplicate_long_entries_update(table, table->file, (uchar *)new_data)))
   {
     return error;
Thread 2 hit Breakpoint 3, row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540            ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)
DATA TUPLE: 6 fields;
 0: len 3; hex 666f6f; asc foo;;
 1: len 7; hex 5ed8d07e084544; asc ^  ~ ED;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000200; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702c3; asc     7  ;;
DATA TUPLE: 6 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 5ed8d07e09b882; asc ^  ~   ;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000200; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702c3; asc     7  ;;

Thread 2 hit Breakpoint 2, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd28807c9d0, thr=0x7fd2880795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex eb4738784db41058; asc  G8xM  X;;
 1: len 6; hex 000000000200; asc       ;;

Thread 2 hit Breakpoint 2, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex 8ecce90a7e52abd8; asc     ~R  ;;
 1: len 6; hex 000000000202; asc       ;;

Thread 2 hit Breakpoint 3, row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540            ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)
DATA TUPLE: 6 fields;
 0: len 3; hex 626172; asc bar;;
 1: len 7; hex 5ed8d07e084544; asc ^  ~ ED;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000201; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702e4; asc     7  ;;
DATA TUPLE: 6 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 5ed8d07e09b882; asc ^  ~   ;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000201; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702e4; asc     7  ;;

Thread 2 hit Breakpoint 2, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd28807ed10, thr=0x7fd2880795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex eb4738784db41058; asc  G8xM  X;;
 1: len 6; hex 000000000201; asc       ;;

Thread 2 hit Breakpoint 2, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex 1d9f956750bf7158; asc    gP qX;;
 1: len 6; hex 000000000203; asc       ;;

Result

(rr) call rec_print(stdout, rec, index)
PHYSICAL RECORD: n_fields 2; compact format; info bits 0
 0: len 8; hex 1d9f956750bf7158; asc    gP qX;;
 1: len 6; hex 000000000203; asc       ;;
(rr) call dtuple_print(stdout, entry)
DATA TUPLE: 2 fields;
 0: len 8; hex 6985a7c689938a4f; asc i      O;;
 1: len 6; hex 000000000202; asc       ;;
midenok commented 4 years ago

Bad: hash calculation

Thread 1 hit Breakpoint 25, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;
$44 = 0x8ecce90a7e52abd8

Thread 1 hit Breakpoint 25, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;
$45 = 0xeb4738784db41058

Thread 1 hit Breakpoint 24, row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540            ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)
DATA TUPLE: 6 fields;
 0: len 3; hex 666f6f; asc foo;;
 1: len 7; hex 5ed8d07e084544; asc ^  ~ ED;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000200; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702c3; asc     7  ;;
DATA TUPLE: 6 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 5ed8d07e09b882; asc ^  ~   ;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000200; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702c3; asc     7  ;;

Thread 1 hit Breakpoint 23, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd28807c9d0, thr=0x7fd2880795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex eb4738784db41058; asc  G8xM  X;;
 1: len 6; hex 000000000200; asc       ;;

Thread 1 hit Breakpoint 23, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex 8ecce90a7e52abd8; asc     ~R  ;;
 1: len 6; hex 000000000202; asc       ;;

Thread 1 hit Breakpoint 25, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;
$46 = 0x1d9f956750bf7158

Thread 1 hit Breakpoint 25, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;
$47 = 0xeb4738784db41058

Thread 1 hit Breakpoint 24, row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540            ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)
DATA TUPLE: 6 fields;
 0: len 3; hex 626172; asc bar;;
 1: len 7; hex 5ed8d07e084544; asc ^  ~ ED;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000201; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702e4; asc     7  ;;
DATA TUPLE: 6 fields;
 0: len 3; hex 717578; asc qux;;
 1: len 7; hex 5ed8d07e09b882; asc ^  ~   ;;
 2: len 7; hex 7fffffff0f423f; asc      B?;;
 3: len 6; hex 000000000201; asc       ;;
 4: len 6; hex 000000000024; asc      $;;
 5: len 7; hex 830000013702e4; asc     7  ;;

Thread 1 hit Breakpoint 23, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd28807ed10, thr=0x7fd2880795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex eb4738784db41058; asc  G8xM  X;;
 1: len 6; hex 000000000201; asc       ;;

Thread 1 hit Breakpoint 23, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233            trx_id_t        trx_id  = 0;
DATA TUPLE: 2 fields;
 0: len 8; hex 1d9f956750bf7158; asc    gP qX;;
 1: len 6; hex 000000000203; asc       ;;

Thread 1 hit Breakpoint 25, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;
$48 = 0x6985a7c689938a4f

Thread 1 hit Breakpoint 25, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;
$49 = 0x74a3b4d57282f60f

With stack traces

Thread 1 hit Breakpoint 30, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;

#0  Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
#1  0x0000000000be9c43 in Item::save_int_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6582
#2  0x0000000000a7c8e0 in Type_handler_int_result::Item_save_in_field (this=0x1dd8808 <type_handler_long>, item=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_type.cc:3672
#3  0x0000000000be9d0e in Item::save_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6592
#4  0x000000000098a2fc in TABLE::update_virtual_fields (this=0x7fd28801e4a8, h=0x7fd28801a8c0, update_mode=VCOL_UPDATE_FOR_READ) at /home/midenok/src/mariadb/10.4/src/sql/table.cc:8355
#5  0x0000000000bb9e52 in handler::ha_rnd_next (this=0x7fd28801a8c0, buf=0x7fd2880315e0 "\376\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:2854
#6  0x0000000000daf543 in rr_sequential (info=0x7fd2e405f578) at /home/midenok/src/mariadb/10.4/src/sql/records.cc:477
#7  0x0000000000755b1b in READ_RECORD::read_record (this=0x7fd2e405f578) at /home/midenok/src/mariadb/10.4/src/sql/records.h:69
#8  0x0000000000959b70 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551615, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:975
#9  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#10 0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#11 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#12 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#13 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#14 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#15 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#16 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#17 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

$74 = 0x8ecce90a7e52abd8

Thread 1 hit Breakpoint 30, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;

#0  Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
#1  0x0000000000be9c43 in Item::save_int_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6582
#2  0x0000000000a7c8e0 in Type_handler_int_result::Item_save_in_field (this=0x1dd8808 <type_handler_long>, item=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_type.cc:3672
#3  0x0000000000be9d0e in Item::save_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6592
#4  0x000000000098a2fc in TABLE::update_virtual_fields (this=0x7fd28801e4a8, h=0x7fd28801a8c0, update_mode=VCOL_UPDATE_FOR_WRITE) at /home/midenok/src/mariadb/10.4/src/sql/table.cc:8355
#5  0x000000000076f5f3 in fill_record (thd=0x7fd288000d28, table_arg=0x7fd28801e4a8, fields=..., values=..., ignore_errors=false, update=true) at /home/midenok/src/mariadb/10.4/src/sql/sql_base.cc:8569
#6  0x000000000076f983 in fill_record_n_invoke_before_triggers (thd=0x7fd288000d28, table=0x7fd28801e4a8, fields=..., values=..., ignore_errors=false, event=TRG_EVENT_UPDATE) at /home/midenok/src/mariadb/10.4/src/sql/sql_base.cc:8697
#7  0x0000000000959d11 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551615, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:991
#8  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#9  0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#10 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#11 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#12 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#13 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#14 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#15 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#16 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

$75 = 0xeb4738784db41058

Thread 1 hit Breakpoint 29, row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540        ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)

#0  row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
#1  0x00000000010babe7 in row_upd (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3327
#2  0x00000000010ba495 in row_upd_step (thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3442
#3  0x000000000104dff1 in row_update_for_mysql (prebuilt=0x7fd28801b870) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1889
#4  0x0000000000e5e49e in ha_innobase::update_row (this=0x7fd28801a8c0, old_row=0x7fd288032600 "\374\003", new_row=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8816
#5  0x0000000000bc7067 in handler::ha_update_row (this=0x7fd28801a8c0, old_data=0x7fd288032600 "\374\003", new_data=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6752
#6  0x0000000000959f29 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551615, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1056
#7  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#8  0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#9  0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#10 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#11 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#12 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#13 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#14 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#15 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 hit Breakpoint 28, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd28807c9d0, thr=0x7fd2880795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233        trx_id_t    trx_id  = 0;

#0  row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd28807c9d0, thr=0x7fd2880795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
#1  0x00000000010c42bf in row_upd_sec_index_entry (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2520
#2  0x00000000010be5ca in row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2547
#3  0x00000000010babe7 in row_upd (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3327
#4  0x00000000010ba495 in row_upd_step (thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3442
#5  0x000000000104dff1 in row_update_for_mysql (prebuilt=0x7fd28801b870) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1889
#6  0x0000000000e5e49e in ha_innobase::update_row (this=0x7fd28801a8c0, old_row=0x7fd288032600 "\374\003", new_row=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8816
#7  0x0000000000bc7067 in handler::ha_update_row (this=0x7fd28801a8c0, old_data=0x7fd288032600 "\374\003", new_data=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6752
#8  0x0000000000959f29 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551615, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1056
#9  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#10 0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#11 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#12 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#13 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#14 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#15 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#16 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#17 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 hit Breakpoint 28, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233        trx_id_t    trx_id  = 0;

#0  row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
#1  0x0000000001025885 in row_ins_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3316
#2  0x0000000001024a49 in row_ins_index_entry_step (node=0x7fd28801c080, thr=0x7fd2880791d0) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3483
#3  0x000000000101d6b7 in row_ins (node=0x7fd28801c080, thr=0x7fd2880791d0) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3620
#4  0x000000000101d202 in row_ins_step (thr=0x7fd2880791d0) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3759
#5  0x000000000104c1b5 in row_insert_for_mysql (mysql_rec=0x7fd2880315e0 "\374\003", prebuilt=0x7fd28801b870, ins_mode=ROW_INS_NORMAL) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1463
#6  0x0000000000e5d8ad in ha_innobase::write_row (this=0x7fd28801a8c0, record=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8027
#7  0x0000000000bc6a84 in handler::ha_write_row (this=0x7fd28801a8c0, buf=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6706
#8  0x00000000007ccb78 in vers_insert_history_row (table=0x7fd28801e4a8) at /home/midenok/src/mariadb/10.4/src/sql/sql_insert.cc:1685
#9  0x000000000095a02e in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551615, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1073
#10 0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#11 0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#12 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#13 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#14 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#15 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#16 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#17 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#18 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 hit Breakpoint 30, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;

#0  Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
#1  0x0000000000be9c43 in Item::save_int_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6582
#2  0x0000000000a7c8e0 in Type_handler_int_result::Item_save_in_field (this=0x1dd8808 <type_handler_long>, item=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_type.cc:3672
#3  0x0000000000be9d0e in Item::save_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6592
#4  0x000000000098a2fc in TABLE::update_virtual_fields (this=0x7fd28801e4a8, h=0x7fd28801a8c0, update_mode=VCOL_UPDATE_FOR_READ) at /home/midenok/src/mariadb/10.4/src/sql/table.cc:8355
#5  0x0000000000bb9e52 in handler::ha_rnd_next (this=0x7fd28801a8c0, buf=0x7fd2880315e0 "\376\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:2854
#6  0x0000000000daf543 in rr_sequential (info=0x7fd2e405f578) at /home/midenok/src/mariadb/10.4/src/sql/records.cc:477
#7  0x0000000000755b1b in READ_RECORD::read_record (this=0x7fd2e405f578) at /home/midenok/src/mariadb/10.4/src/sql/records.h:69
#8  0x0000000000959b70 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551614, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:975
#9  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#10 0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#11 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#12 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#13 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#14 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#15 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#16 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#17 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

$76 = 0x1d9f956750bf7158

Thread 1 hit Breakpoint 30, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;

#0  Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
#1  0x0000000000be9c43 in Item::save_int_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6582
#2  0x0000000000a7c8e0 in Type_handler_int_result::Item_save_in_field (this=0x1dd8808 <type_handler_long>, item=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_type.cc:3672
#3  0x0000000000be9d0e in Item::save_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6592
#4  0x000000000098a2fc in TABLE::update_virtual_fields (this=0x7fd28801e4a8, h=0x7fd28801a8c0, update_mode=VCOL_UPDATE_FOR_WRITE) at /home/midenok/src/mariadb/10.4/src/sql/table.cc:8355
#5  0x000000000076f5f3 in fill_record (thd=0x7fd288000d28, table_arg=0x7fd28801e4a8, fields=..., values=..., ignore_errors=false, update=true) at /home/midenok/src/mariadb/10.4/src/sql/sql_base.cc:8569
#6  0x000000000076f983 in fill_record_n_invoke_before_triggers (thd=0x7fd288000d28, table=0x7fd28801e4a8, fields=..., values=..., ignore_errors=false, event=TRG_EVENT_UPDATE) at /home/midenok/src/mariadb/10.4/src/sql/sql_base.cc:8697
#7  0x0000000000959d11 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551614, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:991
#8  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#9  0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#10 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#11 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#12 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#13 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#14 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#15 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#16 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

$77 = 0xeb4738784db41058

Thread 1 hit Breakpoint 29, row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
2540        ut_ad((node->state == UPD_NODE_UPDATE_ALL_SEC)

#0  row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2540
#1  0x00000000010babe7 in row_upd (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3327
#2  0x00000000010ba495 in row_upd_step (thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3442
#3  0x000000000104dff1 in row_update_for_mysql (prebuilt=0x7fd28801b870) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1889
#4  0x0000000000e5e49e in ha_innobase::update_row (this=0x7fd28801a8c0, old_row=0x7fd288032600 "\374\003", new_row=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8816
#5  0x0000000000bc7067 in handler::ha_update_row (this=0x7fd28801a8c0, old_data=0x7fd288032600 "\374\003", new_data=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6752
#6  0x0000000000959f29 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551614, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1056
#7  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#8  0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#9  0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#10 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#11 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#12 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#13 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#14 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#15 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 hit Breakpoint 28, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd28807ed10, thr=0x7fd2880795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233        trx_id_t    trx_id  = 0;

#0  row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd28807ed10, thr=0x7fd2880795f8, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
#1  0x00000000010c42bf in row_upd_sec_index_entry (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2520
#2  0x00000000010be5ca in row_upd_sec_step (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:2547
#3  0x00000000010babe7 in row_upd (node=0x7fd288079290, thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3327
#4  0x00000000010ba495 in row_upd_step (thr=0x7fd2880795f8) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0upd.cc:3442
#5  0x000000000104dff1 in row_update_for_mysql (prebuilt=0x7fd28801b870) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1889
#6  0x0000000000e5e49e in ha_innobase::update_row (this=0x7fd28801a8c0, old_row=0x7fd288032600 "\374\003", new_row=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8816
#7  0x0000000000bc7067 in handler::ha_update_row (this=0x7fd28801a8c0, old_data=0x7fd288032600 "\374\003", new_data=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6752
#8  0x0000000000959f29 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551614, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1056
#9  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#10 0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#11 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#12 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#13 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#14 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#15 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#16 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#17 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 hit Breakpoint 28, row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
3233        trx_id_t    trx_id  = 0;

#0  row_ins_sec_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0, check_foreign=true) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3233
#1  0x0000000001025885 in row_ins_index_entry (index=0x7fd2880241d0, entry=0x7fd288022430, thr=0x7fd2880791d0) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3316
#2  0x0000000001024a49 in row_ins_index_entry_step (node=0x7fd28801c080, thr=0x7fd2880791d0) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3483
#3  0x000000000101d6b7 in row_ins (node=0x7fd28801c080, thr=0x7fd2880791d0) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3620
#4  0x000000000101d202 in row_ins_step (thr=0x7fd2880791d0) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0ins.cc:3759
#5  0x000000000104c1b5 in row_insert_for_mysql (mysql_rec=0x7fd2880315e0 "\374\003", prebuilt=0x7fd28801b870, ins_mode=ROW_INS_NORMAL) at /home/midenok/src/mariadb/10.4/src/storage/innobase/row/row0mysql.cc:1463
#6  0x0000000000e5d8ad in ha_innobase::write_row (this=0x7fd28801a8c0, record=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/storage/innobase/handler/ha_innodb.cc:8027
#7  0x0000000000bc6a84 in handler::ha_write_row (this=0x7fd28801a8c0, buf=0x7fd2880315e0 "\374\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:6706
#8  0x00000000007ccb78 in vers_insert_history_row (table=0x7fd28801e4a8) at /home/midenok/src/mariadb/10.4/src/sql/sql_insert.cc:1685
#9  0x000000000095a02e in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551614, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:1073
#10 0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#11 0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#12 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#13 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#14 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#15 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#16 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#17 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#18 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 hit Breakpoint 30, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;

#0  Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
#1  0x0000000000be9c43 in Item::save_int_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6582
#2  0x0000000000a7c8e0 in Type_handler_int_result::Item_save_in_field (this=0x1dd8808 <type_handler_long>, item=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_type.cc:3672
#3  0x0000000000be9d0e in Item::save_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6592
#4  0x000000000098a2fc in TABLE::update_virtual_fields (this=0x7fd28801e4a8, h=0x7fd28801a8c0, update_mode=VCOL_UPDATE_FOR_READ) at /home/midenok/src/mariadb/10.4/src/sql/table.cc:8355
#5  0x0000000000bb9e52 in handler::ha_rnd_next (this=0x7fd28801a8c0, buf=0x7fd2880315e0 "\376\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:2854
#6  0x0000000000daf543 in rr_sequential (info=0x7fd2e405f578) at /home/midenok/src/mariadb/10.4/src/sql/records.cc:477
#7  0x0000000000755b1b in READ_RECORD::read_record (this=0x7fd2e405f578) at /home/midenok/src/mariadb/10.4/src/sql/records.h:69
#8  0x0000000000959b70 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551613, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:975
#9  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#10 0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#11 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#12 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#13 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#14 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#15 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#16 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#17 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

$78 = 0x6985a7c689938a4f

Thread 1 hit Breakpoint 30, Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
1754      return   (longlong)nr1;

#0  Item_func_hash::val_int (this=0x7fd28801b050) at /home/midenok/src/mariadb/10.4/src/sql/item_func.cc:1754
#1  0x0000000000be9c43 in Item::save_int_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6582
#2  0x0000000000a7c8e0 in Type_handler_int_result::Item_save_in_field (this=0x1dd8808 <type_handler_long>, item=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_type.cc:3672
#3  0x0000000000be9d0e in Item::save_in_field (this=0x7fd28801b050, field=0x7fd288013bf8, no_conversions=false) at /home/midenok/src/mariadb/10.4/src/sql/item.cc:6592
#4  0x000000000098a2fc in TABLE::update_virtual_fields (this=0x7fd28801e4a8, h=0x7fd28801a8c0, update_mode=VCOL_UPDATE_FOR_READ) at /home/midenok/src/mariadb/10.4/src/sql/table.cc:8355
#5  0x0000000000bb9e52 in handler::ha_rnd_next (this=0x7fd28801a8c0, buf=0x7fd2880315e0 "\376\003") at /home/midenok/src/mariadb/10.4/src/sql/handler.cc:2854
#6  0x0000000000daf543 in rr_sequential (info=0x7fd2e405f578) at /home/midenok/src/mariadb/10.4/src/sql/records.cc:477
#7  0x0000000000755b1b in READ_RECORD::read_record (this=0x7fd2e405f578) at /home/midenok/src/mariadb/10.4/src/sql/records.h:69
#8  0x0000000000959b70 in mysql_update (thd=0x7fd288000d28, table_list=0x7fd288014168, fields=..., values=..., conds=0x7fd288014ec0, order_num=0, order=0x0, limit=18446744073709551613, ignore=true, found_return=0x7fd2e4061130, updated_return=0x7fd2e4061128) at /home/midenok/src/mariadb/10.4/src/sql/sql_update.cc:975
#9  0x0000000000820e2b in mysql_execute_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:4369
#10 0x0000000000818180 in mysql_parse (thd=0x7fd288000d28, rawbuf=0x7fd288014080 "update ignore t1 set a= 'qux'", length=29, parser_state=0x7fd2e40625e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:7901
#11 0x0000000000814e28 in dispatch_command (command=COM_QUERY, thd=0x7fd288000d28, packet=0x7fd288007ab9 "update ignore t1 set a= 'qux'", packet_length=29, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1841
#12 0x0000000000818ca9 in do_command (thd=0x7fd288000d28) at /home/midenok/src/mariadb/10.4/src/sql/sql_parse.cc:1359
#13 0x00000000009d9109 in do_handle_one_connection (connect=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1412
#14 0x00000000009d8eca in handle_one_connection (arg=0x4ba9548) at /home/midenok/src/mariadb/10.4/src/sql/sql_connect.cc:1316
#15 0x0000000001507aa4 in pfs_spawn_thread (arg=0x4bd30a8) at /home/midenok/src/mariadb/10.4/src/storage/perfschema/pfs.cc:1869
#16 0x00007fd2f4da5669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#17 0x00007fd2f43ef323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

$79 = 0x74a3b4d57282f60f

Cause

Hash is calculated before versioned field is updated. This is also applicable to InnoDB layer for trx_id-versioning and cascade updates. Hash is updated via virtual col. This can be reproduced without large blob, but with virtual col.