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

InnoDB: Failing assertion: table->n_waiting_or_granted_auto_inc_locks > 0

    XMLWordPrintable

Details

    Description

      Note: there are two examples of the failure in this report. One happened on 10.3 branch just recently. Another one happened long time ago on 10.2.7, I'm keeping it here for the record. If it's in fact a different issue, please feel free to fix only the recent one in the scope of this report and ignore another.

      Update: I got a test case which causes the same assertion failure and stack trace as quoted below for 10.3, but the test case only fails on 10.1. See here in the comments.

      10.3 occurrence

      10.3 63027a5763b2b9550979366f9e7488b2d9328cc0

      2018-06-18 03:23:12 0x7fe1fa9f5700  InnoDB: Assertion failure in file /home/travis/src/storage/innobase/lock/lock0lock.cc line 3717
      InnoDB: Failing assertion: table->n_waiting_or_granted_auto_inc_locks > 0
       
      #5  0x00007fe22538a028 in abort () from /lib/x86_64-linux-gnu/libc.so.6
      #6  0x000055a07b813b95 in ut_dbg_assertion_failed (expr=0x55a07be1e8d0 "table->n_waiting_or_granted_auto_inc_locks > 0", file=0x55a07be1d378 "/home/travis/src/storage/innobase/lock/lock0lock.cc", line=3717) at /home/travis/src/storage/innobase/ut/ut0dbg.cc:61
      #7  0x000055a07b66ff50 in lock_table_remove_low (lock=0x55a07d960c08) at /home/travis/src/storage/innobase/lock/lock0lock.cc:3717
      #8  0x000055a07b670dc9 in lock_table_dequeue (in_lock=0x55a07d960c08) at /home/travis/src/storage/innobase/lock/lock0lock.cc:4030
      #9  0x000055a07b676ec3 in lock_release_autoinc_last_lock (autoinc_locks=0x7fe1cc011658) at /home/travis/src/storage/innobase/lock/lock0lock.cc:5945
      #10 0x000055a07b676fc5 in lock_release_autoinc_locks (trx=0x7fe20f9843b8) at /home/travis/src/storage/innobase/lock/lock0lock.cc:5987
      #11 0x000055a07b67764d in lock_cancel_waiting_and_release (lock=0x55a07d960c08) at /home/travis/src/storage/innobase/lock/lock0lock.cc:6209
      #12 0x000055a07b6812fe in lock_wait_check_and_cancel (slot=0x55a07e21caf8) at /home/travis/src/storage/innobase/lock/lock0wait.cc:508
      #13 0x000055a07b681465 in lock_wait_timeout_thread () at /home/travis/src/storage/innobase/lock/lock0wait.cc:565
      #14 0x00007fe225f41184 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
      #15 0x00007fe22544dffd in clone () from /lib/x86_64-linux-gnu/libc.so.6
      

      Full threads are attached as threads_full.
      Datadir, coredump, logs etc. are available.


      10.2.7 occurrence

      2016-10-18 01:33:30 0x7fecd4162300  InnoDB: Assertion failure in thread 140655147229952 in file lock0lock.cc line 4277
      InnoDB: Failing assertion: table->n_waiting_or_granted_auto_inc_locks > 0
      InnoDB: We intentionally generate a memory trap.
      

      2016-10-18T01:33:43 [7145] #4  0x00007fecd56ed028 in __GI_abort () at abort.c:89
      # 2016-10-18T01:33:43 [7145] #5  0x00007fecd7b80483 in ut_dbg_assertion_failed (expr=expr@entry=0x7fecd83bb118 "table->n_waiting_or_granted_auto_inc_locks > 0", file=file@entry=0x7fecd83babd0 "/home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc", line=line@entry=4277) at /home/elenst/bb-10.2-mdev10813/storage/innobase/ut/ut0dbg.cc:67
      # 2016-10-18T01:33:43 [7145] #6  0x00007fecd7f3950a in lock_table_remove_low (lock=0x7fec0406a2b0) at /home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc:4277
      # 2016-10-18T01:33:43 [7145] #7  0x00007fecd7f3955c in lock_table_dequeue (in_lock=<optimised out>) at /home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc:4605
      # 2016-10-18T01:33:43 [7145] #8  0x00007fecd7f39660 in lock_release_autoinc_last_lock (autoinc_locks=<optimised out>) at /home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc:6897
      # 2016-10-18T01:33:43 [7145] #9  lock_release_autoinc_locks (trx=<optimised out>) at /home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc:6939
      # 2016-10-18T01:33:43 [7145] #10 0x00007fecd7f39a31 in lock_cancel_waiting_and_release (lock=0x7fec0406a2b0) at /home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc:7161
      # 2016-10-18T01:33:43 [7145] #11 0x00007fecd7f3f8d0 in lock_table_create (c_lock=0x7fec0a4b6ad0, table=<optimised out>, type_mode=260, trx=0x7fecd04049c8) at /home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc:4108
      # 2016-10-18T01:33:43 [7145] #12 0x00007fecd7f3fc64 in lock_table_enqueue_waiting (c_lock=0x7fec0a4b6ad0, mode=4, table=0x7fec0a4770f0, thr=0x7fec05526938) at /home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc:4342
      # 2016-10-18T01:33:43 [7145] #13 0x00007fecd7f4003c in lock_table (flags=7196, flags@entry=0, table=0x7fec0a4770f0, mode=172714704, thr=0x7fec05526938) at /home/elenst/bb-10.2-mdev10813/storage/innobase/lock/lock0lock.cc:4514
      # 2016-10-18T01:33:43 [7145] #14 0x00007fecd7fc6df4 in row_lock_table_autoinc_for_mysql (prebuilt=0x7fec05526070) at /home/elenst/bb-10.2-mdev10813/storage/innobase/row/row0mysql.cc:1307
      # 2016-10-18T01:33:43 [7145] #15 0x00007fecd7ef324e in ha_innobase::innobase_lock_autoinc (this=this@entry=0x7fec0548a020) at /home/elenst/bb-10.2-mdev10813/storage/innobase/handler/ha_innodb.cc:8822
      # 2016-10-18T01:33:43 [7145] #16 0x00007fecd7ef3381 in ha_innobase::innobase_set_max_autoinc (this=0x7fec0548a020, auto_inc=46) at /home/elenst/bb-10.2-mdev10813/storage/innobase/handler/ha_innodb.cc:8850
      # 2016-10-18T01:33:43 [7145] #17 0x00007fecd7f017df in ha_innobase::write_row (this=0x7fec0548a020, record=0x7fec0544c438 "\377-") at /home/elenst/bb-10.2-mdev10813/storage/innobase/handler/ha_innodb.cc:9225
      # 2016-10-18T01:33:43 [7145] #18 0x00007fecd7d9c56f in handler::ha_write_row (this=0x7fec0548a020, buf=buf@entry=0x7fec0544c438 "\377-") at /home/elenst/bb-10.2-mdev10813/sql/handler.cc:5923
      # 2016-10-18T01:33:43 [7145] #19 0x00007fecd829685c in ha_partition::write_row (this=0x7fec05510720, buf=0x7fec0544c438 "\377-") at /home/elenst/bb-10.2-mdev10813/sql/ha_partition.cc:4170
      # 2016-10-18T01:33:43 [7145] #20 0x00007fecd7d9c56f in handler::ha_write_row (this=0x7fec05510720, buf=0x7fec0544c438 "\377-") at /home/elenst/bb-10.2-mdev10813/sql/handler.cc:5923
      # 2016-10-18T01:33:43 [7145] #21 0x00007fecd7c085db in write_record (thd=thd@entry=0x7fec05412008, table=table@entry=0x7fec054a7408, info=info@entry=0x7fecd415f580) at /home/elenst/bb-10.2-mdev10813/sql/sql_insert.cc:1860
      # 2016-10-18T01:33:43 [7145] #22 0x00007fecd7c0e28a in mysql_insert (thd=thd@entry=0x7fec05412008, table_list=<optimised out>, fields=..., values_list=..., update_fields=..., update_values=..., duplic=DUP_ERROR, ignore=true) at /home/elenst/bb-10.2-mdev10813/sql/sql_insert.cc:983
      # 2016-10-18T01:33:43 [7145] #23 0x00007fecd7c21e6a in mysql_execute_command (thd=thd@entry=0x7fec05412008) at /home/elenst/bb-10.2-mdev10813/sql/sql_parse.cc:4326
      # 2016-10-18T01:33:43 [7145] #24 0x00007fecd7c29d5f in mysql_parse (thd=0x7fec05412008, rawbuf=<optimised out>, length=<optimised out>, parser_state=0x7fecd4160e30, is_com_multi=<optimised out>, is_next_command=<optimised out>) at /home/elenst/bb-10.2-mdev10813/sql/sql_parse.cc:7796
      # 2016-10-18T01:33:43 [7145] #25 0x00007fecd7c2cb90 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7fec05412008, packet=packet@entry=0x7fec05432009 "INSERT LOW_PRIORITY IGNORE INTO `table1_innodb_key_pk_parts_2_int_autoinc` (`pk`) VALUES (NULL) /* QNO 150 CON_ID 22 */ ", packet_length=packet_length@entry=120, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /home/elenst/bb-10.2-mdev10813/sql/sql_parse.cc:1806
      # 2016-10-18T01:33:43 [7145] #26 0x00007fecd7c2d494 in do_command (thd=0x7fec05412008) at /home/elenst/bb-10.2-mdev10813/sql/sql_parse.cc:1366
      # 2016-10-18T01:33:43 [7145] #27 0x00007fecd7ce133c in do_handle_one_connection (connect=connect@entry=0x7fecd4c2e928) at /home/elenst/bb-10.2-mdev10813/sql/sql_connect.cc:1354
      # 2016-10-18T01:33:43 [7145] #28 0x00007fecd7ce1484 in handle_one_connection (arg=0x7fecd4c2e928) at /home/elenst/bb-10.2-mdev10813/sql/sql_connect.cc:1260
      # 2016-10-18T01:33:43 [7145] #29 0x00007fecd62a0184 in start_thread (arg=0x7fecd4162300) at pthread_create.c:312
      # 2016-10-18T01:33:43 [7145] #30 0x00007fecd57ad37d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111
      

      Trying to get some variables.
      Some pointers may be invalid and cause the dump to abort.
      Query (0x7fec0543e020): INSERT LOW_PRIORITY IGNORE INTO `table1_innodb_key_pk_parts_2_int_autoinc` (`pk`) VALUES (NULL) /* QNO 150 CON_ID 22 */
      Connection ID (thread ID): 22
      Status: NOT_KILLED
      

      perl /home/elenst/rqg/runall-new.pl --no-mask --seed=1476754388 --threads=64 --duration=600 --queries=100M --reporters=QueryTimeout,Backtrace,ErrorLog,Deadlock --validators=TransformerNoComparator --transformers=ExecuteAsPreparedTwice --redefine=conf/mariadb/general-workarounds.yy --redefine=conf/mariadb/10.0-features-redefine.yy --mysqld=--log_output=FILE --mysqld=--slow_query_log --mysqld=--log_bin_trust_function_creators=1 --mysqld=--innodb-buffer-pool-size=2G --mysqld=--innodb-log-file-size=256M --mysqld=--innodb-flush-log-at-trx-commit=2 --redefine=conf/mariadb/redefine_random_keys.yy --mysqld=--plugin-load-add=metadata_lock_info --grammar=conf/engines/engine_stress.yy --gendata=conf/engines/engine_stress.zz --engine=InnoDB --mysqld=--transaction-isolation=READ-COMMITTED --mtr-build-thread=300 --basedir1=/home/elenst/bb-10.2-mdev10813/ --vardir1=/home/elenst/logs/mdev10813-2/current1_1
      

      Threads are attached as threads1.

      Attachments

        1. MDEV-11080.tgz
          5 kB
        2. threads_full
          198 kB
        3. threads1
          210 kB

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              3 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.