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

Assertion failure in rec_offs_get_n_alloc() due to row_trx_id_offset()

    XMLWordPrintable

Details

    Description

      First failure: http://buildbot.askmonty.org/buildbot/builders/kvm-fulltest2/builds/12356/steps/mtr_nm/logs/stdio

      innodb.innodb 'innodb'                   w4 [ fail ]
              Test ended at 2018-04-15 20:13:16
       
      CURRENT_TEST: innodb.innodb
      mysqltest: At line 1652: query 'rename table t3 to t1' failed with wrong errno 2013: 'Lost connection to MySQL server during query', instead of 1025...
       
      The result from queries just before the failure was:
      < snip >
      ERROR HY000: Can't create table `test`.`t2` (errno: 150 "Foreign key constraint is incorrectly formed")
      set foreign_key_checks=1;
      drop table t1;
      set foreign_key_checks=0;
      create table t2 (a varchar(10), foreign key (a) references t1(a)) engine = innodb;
      create table t1(a varchar(10) primary key) engine = innodb;
      alter table t1 modify column a int;
      Got one of the listed errors
      set foreign_key_checks=1;
      drop table t2,t1;
      set foreign_key_checks=0;
      create table t2 (a varchar(10), foreign key (a) references t1(a)) engine = innodb DEFAULT CHARSET=latin1;
      create table t1(a varchar(10) primary key) engine = innodb DEFAULT CHARSET=latin1;
      alter table t1 convert to character set utf8;
      set foreign_key_checks=1;
      drop table t2,t1;
      set foreign_key_checks=0;
      create table t2 (a varchar(10), foreign key (a) references t1(a)) engine = innodb DEFAULT CHARSET=latin1;
      create table t3(a varchar(10) primary key) engine = innodb DEFAULT CHARSET=utf8;
      rename table t3 to t1;
       
      More results from queries before failure can be found in /mnt/buildbot/build/mariadb-10.3.6/mysql-test/var/4/log/innodb.log
       
       
      Server [mysqld.1 - pid: 12645, winpid: 12645, exit: 256] failed during test run
      Server log from this test:
      ----------SERVER LOG START-----------
      2018-04-15 20:13:03 0 [Note] /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld (mysqld 10.3.6-MariaDB-debug-log) starting as process 12647 ...
      2018-04-15 20:13:03 0 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4182)
      2018-04-15 20:13:03 0 [Warning] Changed limits: max_open_files: 1024  max_connections: 151 (was 151)  table_cache: 421 (was 2000)
      2018-04-15 20:13:03 0 [Note] Plugin 'partition' is disabled.
      2018-04-15 20:13:03 0 [Note] InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
      2018-04-15 20:13:03 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
      2018-04-15 20:13:03 0 [Note] InnoDB: Uses event mutexes
      2018-04-15 20:13:03 0 [Note] InnoDB: Compressed tables use zlib 1.2.3.4
      2018-04-15 20:13:03 0 [Note] InnoDB: Using Linux native AIO
      2018-04-15 20:13:03 0 [Note] InnoDB: Number of pools: 1
      2018-04-15 20:13:03 0 [Note] InnoDB: Using generic crc32 instructions
      2018-04-15 20:13:03 0 [Note] InnoDB: Initializing buffer pool, total size = 8M, instances = 1, chunk size = 8M
      2018-04-15 20:13:03 0 [Note] InnoDB: Completed initialization of buffer pool
      2018-04-15 20:13:03 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
      2018-04-15 20:13:03 0 [Note] InnoDB: 128 out of 128 rollback segments are active.
      2018-04-15 20:13:03 0 [Note] InnoDB: Creating shared tablespace for temporary tables
      2018-04-15 20:13:03 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
      2018-04-15 20:13:03 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
      2018-04-15 20:13:04 0 [Note] InnoDB: Waiting for purge to start
      2018-04-15 20:13:04 0 [Note] InnoDB: 5.7.21 started; log sequence number 1644560; transaction id 34
      2018-04-15 20:13:04 0 [Note] InnoDB: Loading buffer pool(s) from /run/shm/var_auto_u2Ty/4/mysqld.1/data/ib_buffer_pool
      2018-04-15 20:13:04 0 [Note] Plugin 'SEQUENCE' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_CMP' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
      2018-04-15 20:13:04 0 [Note] InnoDB: Buffer pool(s) load completed at 180415 20:13:04
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_TABLESPACES_ENCRYPTION' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'FEEDBACK' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'user_variables' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_MUTEXES' is disabled.
      2018-04-15 20:13:04 0 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
      2018-04-15 20:13:04 0 [Warning] /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld: unknown option '--loose-pam-debug'
      2018-04-15 20:13:04 0 [Warning] /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld: unknown option '--loose-innodb-track-changed-pages'
      2018-04-15 20:13:04 0 [Warning] /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld: unknown option '--loose-innodb-log-archive'
      2018-04-15 20:13:04 0 [Note] Server socket created on IP: '127.0.0.1'.
      2018-04-15 20:13:04 0 [Note] Reading of all Master_info entries succeded
      2018-04-15 20:13:04 0 [Note] Added new Master_info '' to hash table
      2018-04-15 20:13:04 0 [Note] /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld: ready for connections.
      Version: '10.3.6-MariaDB-debug-log'  socket: '/mnt/buildbot/build/mariadb-10.3.6/mysql-test/var/tmp/4/mysqld.1.sock'  port: 16060  Source distribution
      2018-04-15 20:13:09 9 [ERROR] InnoDB: Cannot delete/update rows with cascading foreign key constraints that exceed max depth of 15. Please drop excessive foreign constraints and try again
      2018-04-15 20:13:14 9 [ERROR] InnoDB: In ALTER TABLE `test`.`t1` has or is referenced in foreign key constraints which are not compatible with the new table definition.
      2018-04-15 20:13:14 9 [ERROR] InnoDB: In RENAME TABLE table `test`.`t1` is referenced in foreign key constraints which are not compatible with the new table definition.
      mysqld: /home/buildbot/buildbot/build/mariadb-10.3.6/storage/innobase/include/rem0rec.h:649: ulint rec_offs_get_n_alloc(const ulint*): Assertion `n_alloc > 4' failed.
      180415 20:13:14 [ERROR] mysqld got signal 6 ;
      This could be because you hit a bug. It is also possible that this binary
      or one of the libraries it was linked against is corrupt, improperly built,
      or misconfigured. This error can also be caused by malfunctioning hardware.
       
      To report this bug, see https://mariadb.com/kb/en/reporting-bugs
       
      We will try our best to scrape up some info that will hopefully help
      diagnose the problem, but since we have already crashed, 
      something is definitely wrong and this may fail.
       
      Server version: 10.3.6-MariaDB-debug-log
      key_buffer_size=1048576
      read_buffer_size=131072
      max_used_connections=3
      max_threads=153
      thread_count=9
      It is possible that mysqld could use up to 
      key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 61986 K  bytes of memory
      Hope that's ok; if not, decrease some variables in the equation.
       
      Thread pointer: 0xa79081b0
      Attempting backtrace. You can use the following information to find out
      where mysqld died. If you see no messages after this, something went
      terribly wrong...
      stack_bottom = 0xb0668280 thread_stack 0x49000
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(my_print_stacktrace+0x3b)[0x8e3502f]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(handle_fatal_signal+0x404)[0x869d7e8]
      addr2line: '': No such file
      [0xb771e400]
      [0xb771e424]
      /lib/i386-linux-gnu/libc.so.6(gsignal+0x4f)[0xb71fa1ef]
      /lib/i386-linux-gnu/libc.so.6(abort+0x175)[0xb71fd835]
      /lib/i386-linux-gnu/libc.so.6(+0x27095)[0xb71f3095]
      /lib/i386-linux-gnu/libc.so.6(+0x27147)[0xb71f3147]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x89f9d7c]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8abd09e]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8d5f554]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8d5f7a1]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8d6017b]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8d62fc4]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8b5d04b]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8b5d201]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8ab0cda]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8ab0f31]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8ab1149]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8bbf3e4]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8bbf81f]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x8b0f36d]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x89d3bff]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x89c1b49]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(_ZN7handler15ha_rename_tableEPKcS1_+0x8a)[0x86a97ee]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(_Z18mysql_rename_tableP10handlertonPK25st_mysql_const_lex_stringS3_S3_S3_j+0x54a)[0x848f378]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x83f4ca3]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x83f4f25]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(_Z19mysql_rename_tablesP3THDP10TABLE_LISTb+0x2c6)[0x83f47bd]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(_Z21mysql_execute_commandP3THD+0x390d)[0x83ca539]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(_Z11mysql_parseP3THDPcjP12Parser_statebb+0x290)[0x83d62b9]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcjbb+0xf86)[0x83c305f]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(_Z10do_commandP3THD+0x6ae)[0x83c1afc]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(_Z24do_handle_one_connectionP7CONNECT+0x1bf)[0x8516c35]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld(handle_one_connection+0x38)[0x85169c3]
      /mnt/buildbot/build/mariadb-10.3.6/sql/mysqld[0x88b51cc]
      /lib/i386-linux-gnu/libpthread.so.0(+0x6d4c)[0xb74a6d4c]
      /lib/i386-linux-gnu/libc.so.6(clone+0x5e)[0xb72b6ace]
       
      Trying to get some variables.
      Some pointers may be invalid and cause the dump to abort.
      Query (0xa7918e10): rename table t3 to t1
      Connection ID (thread ID): 9
      Status: NOT_KILLED
       
      Optimizer switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=on,mrr_cost_based=off,mrr_sort_keys=on,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on,split_materialized=on
       
      The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
      information that should help you find out what is causing the crash.
      Writing a core file at /mnt/buildbot/build/mariadb-10.3.6/mysql-test/var/4/mysqld.1/data/
      ----------SERVER LOG END-------------
       
       
       - skipping '/mnt/buildbot/build/mariadb-10.3.6/mysql-test/var/4/log/innodb.innodb-innodb/'
       
      Retrying test innodb.innodb, attempt(2/3)...
       
      worker[4] > Restart  - not started
      ***Warnings generated in error logs during shutdown after running tests: innodb.innodb
       
      2018-04-15 20:13:09 9 [ERROR] InnoDB: Cannot delete/update rows with cascading foreign key constraints that exceed max depth of 15. Please drop excessive foreign constraints and try again
      2018-04-15 20:13:14 9 [ERROR] InnoDB: In ALTER TABLE `test`.`t1` has or is referenced in foreign key constraints which are not compatible with the new table definition.
      2018-04-15 20:13:14 9 [ERROR] InnoDB: In RENAME TABLE table `test`.`t1` is referenced in foreign key constraints which are not compatible with the new table definition.
      mysqld: /home/buildbot/buildbot/build/mariadb-10.3.6/storage/innobase/include/rem0rec.h:649: ulint rec_offs_get_n_alloc(const ulint*): Assertion `n_alloc > 4' failed.
      Attempting backtrace. You can use the following information to find out
      

      According to the "Cross Reference Report" first failure of this kind happened in bb-10.3-marko on rev. f0e4f94c230326a2f2e608e4119530d7 2018-04-15 21:13:48.

      However according to Marko this revision is unlikely cause of this crash. But it could change access pattern such that it increased likelihood of this crash.

      Attachments

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              svoj Sergey Vojtovich
              Votes:
              0 Vote for this issue
              Watchers:
              4 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.