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

Assertion `!select_lex->group_list.elements' failed in mysql_prepare_insert on INSERT

    XMLWordPrintable

Details

    • Can result in unexpected behaviour

    Description

      CREATE TABLE t (c INT);
      INSERT t() VALUE() ON DUPLICATE KEY UPDATE c=ROW_NUMBER() OVER (t PARTITION BY ROW_NUMBER() OVER() IS NULL ORDER BY c=ROW_NUMBER() OVER() IS NULL RANGE 0 PRECEDING) IS TRUE;
      

      Leads to:

      CS 12.1.2 033471a367b4c60b7262e64f43f46b02e95b9d74 (Debug, Clang 18.1.3-1) Build 08/08/2025

      mariadbd: /test/12.1_dbg/sql/sql_insert.cc:1828: int mysql_prepare_insert(THD *, TABLE_LIST *, List<Item> &, List_item *, List<Item> &, List<Item> &, enum_duplicates, bool, COND **, bool, bool *const): Assertion `!select_lex->group_list.elements' failed.
      

      CS 12.1.2 033471a367b4c60b7262e64f43f46b02e95b9d74 (Debug, Clang 18.1.3-1) Build 08/08/2025

      Core was generated by `/test/MD080825-mariadb-12.1.2-linux-x86_64-dbg/bin/mariadbd --no-defaults --max'.
      Program terminated with signal SIGABRT, Aborted.
      Download failed: Invalid argument.  Continuing without source file ./nptl/./nptl/pthread_kill.c.
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
       
      [Current thread is 1 (LWP 2054919)]
      (gdb) bt
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6)at ./nptl/pthread_kill.c:89
      #3  0x000077853da4526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x000077853da288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x000077853da2881b in __assert_fail_base (fmt=0x77853dbd01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x5ebaba60ab63 "!select_lex->group_list.elements", file=file@entry=0x5ebaba49025b "/test/12.1_dbg/sql/sql_insert.cc", line=line@entry=1828, function=function@entry=0x5ebaba5ee02a "int mysql_prepare_insert(THD *, TABLE_LIST *, List<Item> &, List_item *, List<Item> &, List<Item> &, enum_duplicates, bool, COND **, bool, bool *const)") at ./assert/assert.c:94
      #6  0x000077853da3b507 in __assert_fail (assertion=0x5ebaba60ab63 "!select_lex->group_list.elements", file=0x5ebaba49025b "/test/12.1_dbg/sql/sql_insert.cc", line=1828, function=0x5ebaba5ee02a "int mysql_prepare_insert(THD *, TABLE_LIST *, List<Item> &, List_item *, List<Item> &, List<Item> &, enum_duplicates, bool, COND **, bool, bool *const)") at ./assert/assert.c:103
      #7  0x00005ebabb13fa49 in mysql_prepare_insert (thd=0x778410000d58, table_list=0x77841001a088, fields=@0x7784100060e0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x5ebabc34a7c0 <end_of_list>, last = 0x7784100060e0, elements = 0}, <No data fields>}, values=0x77841001ac98, update_fields=@0x778410006110: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x77841001c5b8, last = 0x77841001c5b8, elements = 1}, <No data fields>}, update_values=@0x7784100060f8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x77841001c5c8, last = 0x77841001c5c8, elements = 1}, <No data fields>}, duplic=DUP_UPDATE, ignore=false, where=0x77853c14bfd0, select_insert=false, cache_insert_values=0x77853c14bfeb)at /test/12.1_dbg/sql/sql_insert.cc:1828
      #8  0x00005ebabb13c475 in mysql_insert (thd=0x778410000d58, table_list=0x77841001a088, fields=@0x7784100060e0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x5ebabc34a7c0 <end_of_list>, last = 0x7784100060e0, elements = 0}, <No data fields>}, values_list=@0x778410006128: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x77841001acb0, last = 0x77841001acb0, elements = 1}, <No data fields>}, update_fields=@0x778410006110: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x77841001c5b8, last = 0x77841001c5b8, elements = 1}, <No data fields>}, update_values=@0x7784100060f8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x77841001c5c8, last = 0x77841001c5c8, elements = 1}, <No data fields>}, duplic=DUP_UPDATE, ignore=false, result=0x0)at /test/12.1_dbg/sql/sql_insert.cc:801
      #9  0x00005ebabb1ab6e0 in mysql_execute_command (thd=0x778410000d58, is_called_from_prepared_stmt=false) at /test/12.1_dbg/sql/sql_parse.cc:4455
      #10 0x00005ebabb1a1524 in mysql_parse (thd=0x778410000d58, rawbuf=0x778410019e80 "INSERT t() VALUE() ON DUPLICATE KEY UPDATE c=row_number() OVER (t PARTITION BY row_number() OVER() IS NULL ORDER BY c=row_number() OVER() IS NULL RANGE 0 PRECEDING) IS TRUE", length=172, parser_state=0x77853c14da10) at /test/12.1_dbg/sql/sql_parse.cc:7883
      #11 0x00005ebabb19e8f8 in dispatch_command (command=COM_QUERY, thd=0x778410000d58, packet=0x77841000b1f9 "INSERT t() VALUE() ON DUPLICATE KEY UPDATE c=row_number() OVER (t PARTITION BY row_number() OVER() IS NULL ORDER BY c=row_number() OVER() IS NULL RANGE 0 PRECEDING) IS TRUE", packet_length=172, blocking=true)at /test/12.1_dbg/sql/sql_parse.cc:1878
      #12 0x00005ebabb1a20d3 in do_command (thd=0x778410000d58, blocking=true)at /test/12.1_dbg/sql/sql_parse.cc:1417
      #13 0x00005ebabb3c1139 in do_handle_one_connection (connect=0x5ebabe6e7e18, put_in_cache=true) at /test/12.1_dbg/sql/sql_connect.cc:1414
      #14 0x00005ebabb3c0ede in handle_one_connection (arg=0x5ebabe5fd4d8)at /test/12.1_dbg/sql/sql_connect.cc:1326
      #15 0x000077853da9ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #16 0x000077853db29c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Bug Detection Matrix

          Rel    o/d  Build   Commit                                    UniqueID observed             
      CS  10.6   dbg  080825  13f337ce1f295f4aac75db681e00c71f2bf8acaf  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      CS  10.6   opt  080825  13f337ce1f295f4aac75db681e00c71f2bf8acaf  No bug found                  
      CS  10.11  dbg  080825  c45a34b2fb10e4e8f768e7e5fe846e9592eb6ea8  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      CS  10.11  opt  080825  c45a34b2fb10e4e8f768e7e5fe846e9592eb6ea8  No bug found                  
      CS  11.4   dbg  080825  03b31c0bd99390c1984f19a19f22dd6e77b7692e  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      CS  11.4   opt  080825  03b31c0bd99390c1984f19a19f22dd6e77b7692e  No bug found                  
      CS  11.8   dbg  080825  1a446ccc48528e88a3cd6cd1d1ec9e7492d342ca  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      CS  11.8   opt  080825  1a446ccc48528e88a3cd6cd1d1ec9e7492d342ca  No bug found                  
      CS  12.1   dbg  080825  033471a367b4c60b7262e64f43f46b02e95b9d74  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      CS  12.1   opt  080825  033471a367b4c60b7262e64f43f46b02e95b9d74  No bug found                  
      CS  12.2   dbg  080825  e02f4d7e311e214ea62ff2e59599849e229f4165  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      CS  12.2   opt  080825  e02f4d7e311e214ea62ff2e59599849e229f4165  No bug found                  
      ES  10.5   dbg  080825  70586522eacf09d04d49962072e14325a75d8155  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      ES  10.5   opt  080825  70586522eacf09d04d49962072e14325a75d8155  No bug found                  
      ES  10.6   dbg  080825  9b794f34b48fb7eee490b6da44edc0f33a947447  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      ES  10.6   opt  080825  9b794f34b48fb7eee490b6da44edc0f33a947447  No bug found                  
      ES  11.4   dbg  080825  a1c03ccd54b582e75506687ee19b273ca897f261  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      ES  11.4   opt  080825  a1c03ccd54b582e75506687ee19b273ca897f261  No bug found                  
      ES  11.8   dbg  080825  4cdf75ab6ba37d4e7e208690785e880ed3176f2f  !select_lex->group_list.elements|SIGABRT|mysql_prepare_insert|mysql_insert|mysql_execute_command|mysql_parse
      ES  11.8   opt  080825  4cdf75ab6ba37d4e7e208690785e880ed3176f2f  No bug found                  
      MS  5.5    dbg  070123  bac287c315b1792e7ae33f91add6a60292f9bae8  No bug found                  
      MS  5.5    opt  070123  bac287c315b1792e7ae33f91add6a60292f9bae8  No bug found                  
      MS  5.6    dbg  070123  dab95781a1244104d6b87020ac2fc4d190ba2946  No bug found                  
      MS  5.6    opt  070123  dab95781a1244104d6b87020ac2fc4d190ba2946  No bug found                  
      MS  5.7    dbg  070525  f7680e98b6bbe3500399fbad465d08a6b75d7a5c  No bug found                  
      MS  5.7    opt  070525  f7680e98b6bbe3500399fbad465d08a6b75d7a5c  No bug found                  
      MS  8.0    dbg  060224  49ef33f7edadef3ae04665e73d1babd40179a4f1  No bug found                  
      MS  8.0    opt  060224  49ef33f7edadef3ae04665e73d1babd40179a4f1  No bug found                  
      MS  9.1    dbg  211024  61a3a1d8ef15512396b4c2af46e922a19bf2b174  No bug found                  
      MS  9.1    opt  211024  61a3a1d8ef15512396b4c2af46e922a19bf2b174  No bug found                  
      

      Present for at least MyISAM + InnoDB. Testcase is CLI + MTR compatible.

      Attachments

        Issue Links

          Activity

            People

              sanja Oleksandr Byelkin
              Roel Roel Van de Paar
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

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