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

Assertion `value.length() == FbtImpl::binary_length()' failed in Type_handler_fbt<FbtImpl, TypeCollectionImpl>::Field_fbt::store_native, Assertion `item->null_value' failed in Type_handler::Item_send_str

    XMLWordPrintable

Details

    Description

      repeatable on 11.5+, not on 10.5-11.4

      CREATE TABLE t1 ( a datetime);
      INSERT INTO t1 VALUES (NULL);
       
      SELECT * FROM (SELECT uuid(),min(1) FROM t1 WHERE if(uuid(), a,1)) dt;
      

      mariadbd: 11.5/sql/sql_type_fixedbin.h:481: int Type_handler_fbt<FbtImpl, TypeCollectionImpl>::Field_fbt::store_native(const Native&) [with FbtImpl = UUID<false>; TypeCollectionImpl = Type_collection_uuid]: Assertion `value.length() == FbtImpl::binary_length()' failed.
      240913 15:20:15 [ERROR] mysqld got signal 6 ;
       
      Server version: 11.5.2-MariaDB-debug-log source revision: 8b8c8fcb864f4f9753211ad911337201cfe21d23
       
      /lib/x86_64-linux-gnu/libc.so.6(+0x33fd6)[0x7f5a6ddc4fd6]
      sql/sql_type_fixedbin.h:482(Type_handler_fbt<UUID<false>, Type_collection_uuid>::Field_fbt::store_native(Native const&))[0x55a44c7b4223]
      sql/sql_type_fixedbin.h:1447(Type_handler_fbt<UUID<false>, Type_collection_uuid>::Item_save_in_field(Item*, Field*, bool) const)[0x55a44c7ac793]
      sql/item.cc:7027(Item::save_in_field(Field*, bool))[0x55a44be61b1f]
      sql/sql_type_fixedbin.h:870(Type_handler_fbt<UUID<false>, Type_collection_uuid>::Item_copy_fbt::save_in_field(Field*, bool))[0x55a44c7b2666]
      sql/sql_base.cc:9365(fill_record(THD*, TABLE*, Field**, List<Item>&, bool, bool, bool))[0x55a44b96abc0]
      sql/sql_union.cc:122(select_unit::send_data(List<Item>&))[0x55a44bb6a80d]
      sql/sql_class.h:6178(select_result_sink::send_data_with_check(List<Item>&, st_select_lex_unit*, unsigned long long))[0x55a44badfae7]
      sql/sql_select.cc:23130(do_select(JOIN*, Procedure*))[0x55a44babeb94]
      sql/sql_select.cc:5026(JOIN::exec_inner())[0x55a44ba8b984]
      sql/sql_select.cc:4809(JOIN::exec())[0x55a44ba8a997]
      sql/sql_select.cc:5342(mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x55a44ba8c414]
      sql/sql_derived.cc:1283(mysql_derived_fill(THD*, LEX*, TABLE_LIST*))[0x55a44b9b4a82]
      sql/sql_derived.cc:1057(mysql_derived_optimize(THD*, LEX*, TABLE_LIST*))[0x55a44b9b400a]
      sql/sql_derived.cc:200(mysql_handle_single_derived(LEX*, TABLE_LIST*, unsigned int))[0x55a44b9b1ab5]
      sql/sql_select.cc:2507(JOIN::optimize_inner())[0x55a44ba820ec]
      sql/sql_select.cc:1989(JOIN::optimize())[0x55a44ba80176]
      sql/sql_select.cc:5328(mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x55a44ba8c37b]
      sql/sql_select.cc:628(handle_select(THD*, LEX*, select_result*, unsigned long long))[0x55a44ba7aa5e]
      sql/sql_parse.cc:6147(execute_sqlcom_select(THD*, TABLE_LIST*))[0x55a44ba1ee6a]
      sql/sql_parse.cc:3953(mysql_execute_command(THD*, bool))[0x55a44ba16d02]
      sql/sql_parse.cc:7869(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x55a44ba23d79]
      sql/sql_parse.cc:1894(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool))[0x55a44ba1095c]
      sql/sql_parse.cc:1405(do_command(THD*, bool))[0x55a44ba0f310]
      sql/sql_connect.cc:1447(do_handle_one_connection(CONNECT*, bool))[0x55a44bc0646a]
      sql/sql_connect.cc:1351(handle_one_connection)[0x55a44bc061c6]
      perfschema/pfs.cc:2203(pfs_spawn_thread)[0x55a44c1546e9]
      nptl/pthread_create.c:478(start_thread)[0x7f5a6e2df609]
       
      Query (0x7f5a3c017c90): SELECT * FROM (SELECT uuid(),min(1) FROM t1 WHERE if(uuid(), a,1)) dt
      

      if I shorten test:

      CREATE TABLE t1 ( a datetime);
      INSERT INTO t1 VALUES (NULL);
       
      SELECT uuid(),min(1) FROM t1 WHERE if(uuid(), a,1);
      

      then I get

      mariadbd: /11.5/sql/sql_type.cc:7664: bool Type_handler::Item_send_str(Item*, Protocol*, st_value*) const: Assertion `item->null_value' failed.
      240913 15:30:24 [ERROR] mysqld got signal 6 ;
       
      Server version: 11.5.2-MariaDB-debug-log source revision: 8b8c8fcb864f4f9753211ad911337201cfe21d23
       
      /lib/x86_64-linux-gnu/libc.so.6(+0x33fd6)[0x7fc03cbd9fd6]
      sql/sql_type.cc:7665(Type_handler::Item_send_str(Item*, Protocol*, st_value*) const)[0x5583ef03ff5d]
      sql/sql_type_fixedbin.h:1436(Type_handler_fbt<UUID<false>, Type_collection_uuid>::Item_send(Item*, Protocol*, st_value*) const)[0x5583efae466a]
      sql/item.h:1256(Item::send(Protocol*, st_value*))[0x5583eebb7370]
      sql/protocol.cc:1359(Protocol::send_result_set_row(List<Item>*))[0x5583eec04604]
      sql/sql_class.cc:3272(select_send::send_data(List<Item>&))[0x5583eecc386f]
      sql/sql_class.h:6178(select_result_sink::send_data_with_check(List<Item>&, st_select_lex_unit*, unsigned long long))[0x5583eee17ae7]
      sql/sql_select.cc:23130(do_select(JOIN*, Procedure*))[0x5583eedf6b94]
      sql/sql_select.cc:5026(JOIN::exec_inner())[0x5583eedc3984]
      sql/sql_select.cc:4809(JOIN::exec())[0x5583eedc2997]
      sql/sql_select.cc:5342(mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x5583eedc4414]
      sql/sql_select.cc:628(handle_select(THD*, LEX*, select_result*, unsigned long long))[0x5583eedb2a5e]
      sql/sql_parse.cc:6147(execute_sqlcom_select(THD*, TABLE_LIST*))[0x5583eed56e6a]
      sql/sql_parse.cc:3953(mysql_execute_command(THD*, bool))[0x5583eed4ed02]
      sql/sql_parse.cc:7869(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x5583eed5bd79]
      sql/sql_parse.cc:1894(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool))[0x5583eed4895c]
      sql/sql_parse.cc:1405(do_command(THD*, bool))[0x5583eed47310]
      sql/sql_connect.cc:1447(do_handle_one_connection(CONNECT*, bool))[0x5583eef3e46a]
      sql/sql_connect.cc:1351(handle_one_connection)[0x5583eef3e1c6]
      perfschema/pfs.cc:2203(pfs_spawn_thread)[0x5583ef48c6e9]
      nptl/pthread_create.c:478(start_thread)[0x7fc03d0f4609]
       
      Query (0x7fc00c017c90): SELECT uuid(),min(1) FROM t1 WHERE if(uuid(), a,1)
      

      the same with uuidv4()

      Attachments

        Issue Links

          Activity

            People

              bar Alexander Barkov
              alice Alice Sherepa
              Votes:
              0 Vote for this issue
              Watchers:
              4 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.