Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-20640

[ERROR] InnoDB: tried to purge non-delete-marked record and Assertion `0' failed in row_purge_remove_sec_if_poss_leaf

    XMLWordPrintable

Details

    Description

      Note: On some reason, it's not reproducible for me on ASAN builds of the same revision, only on non-ASAN debug.

      --source include/have_innodb.inc
       
      CREATE TABLE t1 ( 
          pk INT AUTO_INCREMENT,
          a BIT(10),
          b BIT(10) AS (a) VIRTUAL,
          PRIMARY KEY(pk),
          UNIQUE(b)
      ) ENGINE=InnoDB;
       
      INSERT INTO t1 (a) VALUES (b'110'),(b'1'),(b'011');
       
      SELECT pk, a INTO OUTFILE 'load.data' FROM t1;
      LOAD DATA INFILE 'load.data' REPLACE INTO TABLE t1 (pk, a);
      ALTER TABLE t1 ADD COLUMN c INT;
       
      # Cleanup
      DROP TABLE t1;
      --let $datadir= `SELECT @@datadir`
      --remove_file $datadir/test/load.data
      

      10.3 debug 90a9c4ca

      2019-09-20 21:04:21 3 [ERROR] InnoDB: tried to purge non-delete-marked record in index `b` of table `test`.`t1`: tuple: TUPLE (info_bits=0, 2 fields): {[2]  (0x0006),[4]    (0x80000001)}, record: COMPACT RECORD(info_bi
      ts=0, 2 fields): {[2]  (0x0006),[4]    (0x80000001)}
      mysqld: /data/src/10.3/storage/innobase/row/row0purge.cc:596: bool row_purge_remove_sec_if_poss_leaf(purge_node_t*, dict_index_t*, const dtuple_t*): Assertion `0' failed.
      190920 21:04:21 [ERROR] mysqld got signal 6 ;
       
      #7  0x00007f8bc61ccf12 in __GI___assert_fail (assertion=0x555c1df9c761 "0", file=0x555c1df9cf08 "/data/src/10.3/storage/innobase/row/row0purge.cc", line=596, function=0x555c1df9e4c0 <row_purge_remove_sec_if_poss_leaf(purge_node_t*, dict_index_t*, dtuple_t const*)::__PRETTY_FUNCTION__> "bool row_purge_remove_sec_if_poss_leaf(purge_node_t*, dict_index_t*, const dtuple_t*)") at assert.c:101
      #8  0x0000555c1d8087e6 in row_purge_remove_sec_if_poss_leaf (node=0x555c201a8138, index=0x7f8b6c070a78, entry=0x7f8b90008d88) at /data/src/10.3/storage/innobase/row/row0purge.cc:596
      #9  0x0000555c1d808b6c in row_purge_remove_sec_if_poss (node=0x555c201a8138, index=0x7f8b6c070a78, entry=0x7f8b90008d88) at /data/src/10.3/storage/innobase/row/row0purge.cc:692
      #10 0x0000555c1d808d94 in row_purge_del_mark (node=0x555c201a8138) at /data/src/10.3/storage/innobase/row/row0purge.cc:766
      #11 0x0000555c1d80a96f in row_purge_record_func (node=0x555c201a8138, undo_rec=0x555c201a86e8 "", thr=0x555c201a7f68, updated_extern=false) at /data/src/10.3/storage/innobase/row/row0purge.cc:1191
      #12 0x0000555c1d80ac86 in row_purge (node=0x555c201a8138, undo_rec=0x555c201a86e8 "", thr=0x555c201a7f68) at /data/src/10.3/storage/innobase/row/row0purge.cc:1258
      #13 0x0000555c1d80aede in row_purge_step (thr=0x555c201a7f68) at /data/src/10.3/storage/innobase/row/row0purge.cc:1317
      #14 0x0000555c1d777d50 in que_thr_step (thr=0x555c201a7f68) at /data/src/10.3/storage/innobase/que/que0que.cc:1037
      #15 0x0000555c1d777fe9 in que_run_threads_low (thr=0x555c201a7f68) at /data/src/10.3/storage/innobase/que/que0que.cc:1099
      #16 0x0000555c1d778239 in que_run_threads (thr=0x555c201a7f68) at /data/src/10.3/storage/innobase/que/que0que.cc:1139
      #17 0x0000555c1d8613e3 in srv_task_execute () at /data/src/10.3/storage/innobase/srv/srv0srv.cc:2473
      #18 0x0000555c1d8615fb in srv_worker_thread (arg=0x0) at /data/src/10.3/storage/innobase/srv/srv0srv.cc:2521
      #19 0x00007f8bc7d414a4 in start_thread (arg=0x7f8ba37fe700) at pthread_create.c:456
      #20 0x00007f8bc6289d0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
      

      Couldn't reproduce on 10.2 or 10.4.
      As mentioned above, couldn't reproduce on ASAN build (although it might be just the matter of luck) or non-debug build.

      Attachments

        Issue Links

          Activity

            People

              nikitamalyavin Nikita Malyavin
              elenst Elena Stepanova
              Votes:
              2 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.