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

SQL query always crashes on INSERT IGNORE

    XMLWordPrintable

    Details

      Description

      Hello

      The following SQL query always crashes MariaDB

      MariaDB [(none)]> INSERT IGNORE INTO koha.columns_settings (module, page, tablename, columnname, cannot_be_toggled, is_hidden) VALUES ("circ", "circulation", "issues-table", "collection", 0, 1), ("members", "moremember", "issues-table", "collection", 0, 1);
      

      juin 15 14:09:29 test-server mysqld[23656]: 2020-06-15 14:09:29 0x7f71e8c58700  InnoDB: Assertion failure in file /home/buildbot/buildbot/build/mariadb-10.4.13/storage/innobase/data/data0type.cc line 67
      juin 15 14:09:29 test-server mysqld[23656]: InnoDB: Failing assertion: !(prefix_len % mbmaxlen)
      juin 15 14:09:29 test-server mysqld[23656]: InnoDB: We intentionally generate a memory trap.
      juin 15 14:09:29 test-server mysqld[23656]: InnoDB: Submit a detailed bug report to https://jira.mariadb.org/
      juin 15 14:09:29 test-server mysqld[23656]: InnoDB: If you get repeated assertion failures or crashes, even
      juin 15 14:09:29 test-server mysqld[23656]: InnoDB: immediately after the mysqld startup, there may be
      juin 15 14:09:29 test-server mysqld[23656]: InnoDB: corruption in the InnoDB tablespace. Please refer to
      juin 15 14:09:29 test-server mysqld[23656]: InnoDB: https://mariadb.com/kb/en/library/innodb-recovery-modes/
      juin 15 14:09:29 test-server mysqld[23656]: InnoDB: about forcing recovery.
      juin 15 14:09:29 test-server mysqld[23656]: 200615 14:09:29 [ERROR] mysqld got signal 6 ;
      juin 15 14:09:29 test-server mysqld[23656]: This could be because you hit a bug. It is also possible that this binary
      juin 15 14:09:29 test-server mysqld[23656]: or one of the libraries it was linked against is corrupt, improperly built,
      juin 15 14:09:29 test-server mysqld[23656]: or misconfigured. This error can also be caused by malfunctioning hardware.
      juin 15 14:09:29 test-server mysqld[23656]: To report this bug, see https://mariadb.com/kb/en/reporting-bugs
      juin 15 14:09:29 test-server mysqld[23656]: We will try our best to scrape up some info that will hopefully help
      juin 15 14:09:29 test-server mysqld[23656]: diagnose the problem, but since we have already crashed,
      juin 15 14:09:29 test-server mysqld[23656]: something is definitely wrong and this may fail.
      juin 15 14:09:29 test-server mysqld[23656]: Server version: 10.4.13-MariaDB-1:10.4.13+maria~bionic
      juin 15 14:09:29 test-server mysqld[23656]: key_buffer_size=134217728
      juin 15 14:09:29 test-server mysqld[23656]: read_buffer_size=2097152
      juin 15 14:09:29 test-server mysqld[23656]: max_used_connections=2
      juin 15 14:09:29 test-server mysqld[23656]: max_threads=102
      juin 15 14:09:29 test-server mysqld[23656]: thread_count=8
      juin 15 14:09:29 test-server mysqld[23656]: It is possible that mysqld could use up to
      juin 15 14:09:29 test-server mysqld[23656]: key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 760255 K  bytes of memory
      juin 15 14:09:29 test-server mysqld[23656]: Hope that's ok; if not, decrease some variables in the equation.
      juin 15 14:09:29 test-server mysqld[23656]: Thread pointer: 0x7f7180000c08
      juin 15 14:09:29 test-server mysqld[23656]: Attempting backtrace. You can use the following information to find out
      juin 15 14:09:29 test-server mysqld[23656]: where mysqld died. If you see no messages after this, something went
      juin 15 14:09:29 test-server mysqld[23656]: terribly wrong...
      juin 15 14:09:29 test-server mysqld[23656]: stack_bottom = 0x7f71e8c57dd8 thread_stack 0x49000
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x55b257e3fe8e]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(handle_fatal_signal+0x515)[0x55b2578bb915]
      juin 15 14:09:29 test-server mysqld[23656]: /lib/x86_64-linux-gnu/libpthread.so.0(+0x12890)[0x7f7201cee890]
      juin 15 14:09:29 test-server mysqld[23656]: /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f7200622e97]
      juin 15 14:09:29 test-server mysqld[23656]: /lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7f7200624801]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(+0x57c53c)[0x55b2575c853c]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(+0xbc9f78)[0x55b257c15f78]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(+0xad02e5)[0x55b257b1c2e5]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(+0xae08e8)[0x55b257b2c8e8]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(+0xa20495)[0x55b257a6c495]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(_ZN7handler12ha_write_rowEPKh+0x1a0)[0x55b2578c6990]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(_Z12write_recordP3THDP5TABLEP12st_copy_info+0x1a0)[0x55b257679ac0]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(_Z12mysql_insertP3THDP10TABLE_LISTR4ListI4ItemERS3_IS5_ES6_S6_15enum_duplicatesb+0x12dc)[0x55b2576810ec]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x16d5)[0x55b2576ad315]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_statebb+0x1ea)[0x55b2576b3fba]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcjbb+0x16d5)[0x55b2576b6705]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(_Z10do_commandP3THD+0x104)[0x55b2576b7bb4]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(_Z24do_handle_one_connectionP7CONNECT+0x25e)[0x55b25779423e]
      juin 15 14:09:29 test-server mysqld[23656]: /usr/sbin/mysqld(handle_one_connection+0x3d)[0x55b2577942fd]
      juin 15 14:09:29 test-server mysqld[23656]: /lib/x86_64-linux-gnu/libpthread.so.0(+0x76db)[0x7f7201ce36db]
      juin 15 14:09:29 test-server mysqld[23656]: /lib/x86_64-linux-gnu/libc.so.6(clone+0x3f)[0x7f720070588f]
      juin 15 14:09:29 test-server mysqld[23656]: Trying to get some variables.
      juin 15 14:09:29 test-server mysqld[23656]: Some pointers may be invalid and cause the dump to abort.
      juin 15 14:09:29 test-server mysqld[23656]: Query (0x7f7180010230): INSERT IGNORE INTO columns_settings (module, page, tablename, columnname, cannot_be_toggled, is_hidden) VALUES ("circ", "circulation", "issues-table", "collection", 0, 1), ("members", "moremember", "issues-table", "collection", 0, 1)
      juin 15 14:09:29 test-server mysqld[23656]: Connection ID (thread ID): 694
      juin 15 14:09:29 test-server mysqld[23656]: Status: NOT_KILLED
      juin 15 14:09:29 test-server mysqld[23656]: 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=off,mrr_cost_based=off,mrr_sort_keys=off,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=on,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on,split_materialized=on,condition_pushdown_for_subquery=on,rowid_filter=on,condition_pushdown_from_having=on
      juin 15 14:09:29 test-server mysqld[23656]: The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
      juin 15 14:09:29 test-server mysqld[23656]: information that should help you find out what is causing the crash.
      juin 15 14:09:29 test-server mysqld[23656]: Writing a core file...
      juin 15 14:09:29 test-server mysqld[23656]: Working directory at /var/lib/mysql
      juin 15 14:09:29 test-server mysqld[23656]: Resource Limits:
      juin 15 14:09:29 test-server mysqld[23656]: Limit                     Soft Limit           Hard Limit           Units
      juin 15 14:09:29 test-server mysqld[23656]: Max cpu time              unlimited            unlimited            seconds
      juin 15 14:09:29 test-server mysqld[23656]: Max file size             unlimited            unlimited            bytes
      juin 15 14:09:29 test-server mysqld[23656]: Max data size             unlimited            unlimited            bytes
      juin 15 14:09:29 test-server mysqld[23656]: Max stack size            8388608              unlimited            bytes
      juin 15 14:09:29 test-server mysqld[23656]: Max core file size        0                    unlimited            bytes
      juin 15 14:09:29 test-server mysqld[23656]: Max resident set          unlimited            unlimited            bytes
      juin 15 14:09:29 test-server mysqld[23656]: Max processes             unlimited            unlimited            processes
      juin 15 14:09:29 test-server mysqld[23656]: Max open files            16364                16364                files
      juin 15 14:09:29 test-server mysqld[23656]: Max locked memory         16777216             16777216             bytes
      juin 15 14:09:29 test-server mysqld[23656]: Max address space         unlimited            unlimited            bytes
      juin 15 14:09:29 test-server mysqld[23656]: Max file locks            unlimited            unlimited            locks
      juin 15 14:09:29 test-server mysqld[23656]: Max pending signals       773219               773219               signals
      juin 15 14:09:29 test-server mysqld[23656]: Max msgqueue size         819200               819200               bytes
      juin 15 14:09:29 test-server mysqld[23656]: Max nice priority         0                    0
      juin 15 14:09:29 test-server mysqld[23656]: Max realtime priority     0                    0
      juin 15 14:09:29 test-server mysqld[23656]: Max realtime timeout      unlimited            unlimited            us
      juin 15 14:09:29 test-server mysqld[23656]: Core pattern: co...
      juin 15 14:09:29 test-server systemd[1]: mariadb.service: Main process ex
      

      here is the show create table

      columns_settings | CREATE TABLE `columns_settings` (
        `module` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
        `page` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
        `tablename` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
        `columnname` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
        `cannot_be_toggled` int(1) NOT NULL DEFAULT 0,
        `is_hidden` int(1) NOT NULL DEFAULT 0,
        PRIMARY KEY (`module`(191),`page`(191),`tablename`(191),`columnname`(191))
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci 
      

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              kevg Eugene Kosov
              Reporter:
              biblibreadm Db Admin BibLibre
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: