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

Assertion `0' failed in Item_contextually_typed_value_specification::type_handler on INSERT

    XMLWordPrintable

Details

    • Can result in unexpected behaviour

    Description

      The testcase looks a bit similar to MDEV-37515, however the stack here is different.
      After mysql_insert we see Item::get_cache versus mysql_prepare_insert in MDEV-37515.

      CREATE TABLE t (c INT);
      INSERT t SET c=DEFAULT ON DUPLICATE KEY UPDATE c=1 IN (SELECT 1 FROM t);
      

      Leads to:

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

      mariadbd: /test/12.1_dbg/sql/item.h:7368: virtual const Type_handler *Item_contextually_typed_value_specification::type_handler() const: Assertion `0' 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 3579500)]
      (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  0x0000785c4024526e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x0000785c402288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x0000785c4022881b in __assert_fail_base (fmt=0x785c403d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x555e4c0f67f8 "0", file=file@entry=0x555e4c023c00 "/test/12.1_dbg/sql/item.h", line=line@entry=7368, function=function@entry=0x555e4c0f9edf "virtual const Type_handler *Item_contextually_typed_value_specification::type_handler() const")at ./assert/assert.c:94
      #6  0x0000785c4023b507 in __assert_fail (assertion=0x555e4c0f67f8 "0", file=0x555e4c023c00 "/test/12.1_dbg/sql/item.h", line=7368, function=0x555e4c0f9edf "virtual const Type_handler *Item_contextually_typed_value_specification::type_handler() const") at ./assert/assert.c:103
      #7  0x0000555e4cbff9db in Item_contextually_typed_value_specification::type_handler (this=0x785b3001a848) at /test/12.1_dbg/sql/item.h:7368
      #8  0x0000555e4c8dc3b1 in Item::get_cache (this=0x785b3001a848, thd=0x785b30000d58) at /test/12.1_dbg/sql/item.h:1355
      #9  0x0000555e4cc80570 in mysql_insert (thd=0x785b30000d58, table_list=0x785b30019fb8, fields=@0x785b300060e0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x785b3001a8c0, last = 0x785b3001a8c0, elements = 1}, <No data fields>}, values_list=@0x785b30006128: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x785b3001a708, last = 0x785b3001a708, elements = 1}, <No data fields>}, update_fields=@0x785b30006110: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x785b3001c290, last = 0x785b3001c290, elements = 1}, <No data fields>}, update_values=@0x785b300060f8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x785b3001c2a0, last = 0x785b3001c2a0, elements = 1}, <No data fields>}, duplic=DUP_UPDATE, ignore=false, result=0x0)at /test/12.1_dbg/sql/sql_insert.cc:1069
      #10 0x0000555e4ccee6e0 in mysql_execute_command (thd=0x785b30000d58, is_called_from_prepared_stmt=false) at /test/12.1_dbg/sql/sql_parse.cc:4455
      #11 0x0000555e4cce4524 in mysql_parse (thd=0x785b30000d58, rawbuf=0x785b30019e80 "INSERT t SET c=DEFAULT ON DUPLICATE KEY UPDATE c=1 IN (SELECT 1 FROM t)", length=71, parser_state=0x785c3c1b2a10)at /test/12.1_dbg/sql/sql_parse.cc:7883
      #12 0x0000555e4cce18f8 in dispatch_command (command=COM_QUERY, thd=0x785b30000d58, packet=0x785b3000b1f9 "INSERT t SET c=DEFAULT ON DUPLICATE KEY UPDATE c=1 IN (SELECT 1 FROM t)", packet_length=71, blocking=true)at /test/12.1_dbg/sql/sql_parse.cc:1878
      #13 0x0000555e4cce50d3 in do_command (thd=0x785b30000d58, blocking=true)at /test/12.1_dbg/sql/sql_parse.cc:1417
      #14 0x0000555e4cf04139 in do_handle_one_connection (connect=0x555e4fc43e18, put_in_cache=true) at /test/12.1_dbg/sql/sql_connect.cc:1414
      #15 0x0000555e4cf03ede in handle_one_connection (arg=0x555e4fb594d8)at /test/12.1_dbg/sql/sql_connect.cc:1326
      #16 0x0000785c4029ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #17 0x0000785c40329c3c 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  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      CS  10.6   opt  080825  13f337ce1f295f4aac75db681e00c71f2bf8acaf  No bug found                  
      CS  10.11  dbg  080825  c45a34b2fb10e4e8f768e7e5fe846e9592eb6ea8  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      CS  10.11  opt  080825  c45a34b2fb10e4e8f768e7e5fe846e9592eb6ea8  No bug found                  
      CS  11.4   dbg  080825  03b31c0bd99390c1984f19a19f22dd6e77b7692e  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      CS  11.4   opt  080825  03b31c0bd99390c1984f19a19f22dd6e77b7692e  No bug found                  
      CS  11.8   dbg  080825  1a446ccc48528e88a3cd6cd1d1ec9e7492d342ca  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      CS  11.8   opt  080825  1a446ccc48528e88a3cd6cd1d1ec9e7492d342ca  No bug found                  
      CS  12.1   dbg  080825  033471a367b4c60b7262e64f43f46b02e95b9d74  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      CS  12.1   opt  080825  033471a367b4c60b7262e64f43f46b02e95b9d74  No bug found                  
      CS  12.2   dbg  080825  e02f4d7e311e214ea62ff2e59599849e229f4165  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      CS  12.2   opt  080825  e02f4d7e311e214ea62ff2e59599849e229f4165  No bug found                  
      ES  10.5   dbg  080825  70586522eacf09d04d49962072e14325a75d8155  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      ES  10.5   opt  080825  70586522eacf09d04d49962072e14325a75d8155  No bug found                  
      ES  10.6   dbg  080825  9b794f34b48fb7eee490b6da44edc0f33a947447  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      ES  10.6   opt  080825  9b794f34b48fb7eee490b6da44edc0f33a947447  No bug found                  
      ES  11.4   dbg  080825  a1c03ccd54b582e75506687ee19b273ca897f261  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      ES  11.4   opt  080825  a1c03ccd54b582e75506687ee19b273ca897f261  No bug found                  
      ES  11.8   dbg  080825  4cdf75ab6ba37d4e7e208690785e880ed3176f2f  0|SIGABRT|Item_contextually_typed_value_specification::type_handler|Item::get_cache|mysql_insert|mysql_execute_command
      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

              bar Alexander Barkov
              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.