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

Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' or Assertion `! is_set()' failed upon UPDATE on a table with GIS column

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Minor
    • Resolution: Won't Fix
    • 5.5(EOL), 10.1(EOL), 10.2(EOL)
    • N/A
    • Data types, GIS
    • None

    Description

      It is not currently reproducible on 10.3+, so I don't expect it to be fixed in older versions. However, it is possible that MDEV-21634 turns out to be a bug (it's just filed and hasn't been analyzed yet), and that it is the reason why the assertion failure does not happen on 10.3+. If so, it might start affecting 10.3+ once MDEV-21634 is fixed.

      CREATE TABLE t1 (f POINT, KEY(f));
      # Fails with an empty table, too
      INSERT INTO t1 VALUES (ST_PointFromText('POINT(1 1)')),(ST_PointFromText('POINT(2 2)'));
      UPDATE t1 SET f = NULL WHERE f IN ( 'x', ST_PointFromText('POINT(0 0)') );
       
      # Cleanup
      DROP TABLE t1;
      

      10.2 8eec2d61

      mysqld: /data/src/10.2/sql/sql_error.cc:380: void Diagnostics_area::set_ok_status(ulonglong, ulonglong, const char*): Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed.
      200202 21:53:05 [ERROR] mysqld got signal 6 ;
       
      #7  0x00007f0668c8df12 in __GI___assert_fail (assertion=0x5612c2b06ff8 "!is_set() || (m_status == DA_OK_BULK && is_bulk_op())", file=0x5612c2b06f30 "/data/src/10.2/sql/sql_error.cc", line=380, function=0x5612c2b07340 <Diagnostics_area::set_ok_status(unsigned long long, unsigned long long, char const*)::__PRETTY_FUNCTION__> "void Diagnostics_area::set_ok_status(ulonglong, ulonglong, const char*)") at assert.c:101
      #8  0x00005612c205618b in Diagnostics_area::set_ok_status (this=0x7f0610005c98, affected_rows=0, last_insert_id=0, message=0x7f066406b3c0 "Rows matched: 0  Changed: 0  Warnings: 1") at /data/src/10.2/sql/sql_error.cc:380
      #9  0x00005612c200972f in my_ok (thd=0x7f0610000af0, affected_rows=0, id=0, message=0x7f066406b3c0 "Rows matched: 0  Changed: 0  Warnings: 1") at /data/src/10.2/sql/sql_class.h:4548
      #10 0x00005612c2174a24 in mysql_update (thd=0x7f0610000af0, table_list=0x7f0610012588, fields=..., values=..., conds=0x7f0610013130, order_num=0, order=0x0, limit=18446744073709551615, handle_duplicates=DUP_ERROR, ignore=false, found_return=0x7f066406b870, updated_return=0x7f066406b920) at /data/src/10.2/sql/sql_update.cc:1023
      #11 0x00005612c2084a6f in mysql_execute_command (thd=0x7f0610000af0) at /data/src/10.2/sql/sql_parse.cc:4014
      #12 0x00005612c20908b6 in mysql_parse (thd=0x7f0610000af0, rawbuf=0x7f0610012448 "UPDATE t1 SET f = NULL WHERE f IN ( 'x', ST_PointFromText('POINT(0 0)') )", length=73, parser_state=0x7f066406c200, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:7740
      #13 0x00005612c207ebf9 in dispatch_command (command=COM_QUERY, thd=0x7f0610000af0, packet=0x7f06100969d1 "UPDATE t1 SET f = NULL WHERE f IN ( 'x', ST_PointFromText('POINT(0 0)') )", packet_length=73, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:1831
      #14 0x00005612c207d54d in do_command (thd=0x7f0610000af0) at /data/src/10.2/sql/sql_parse.cc:1384
      #15 0x00005612c21d259f in do_handle_one_connection (connect=0x5612c5759eb0) at /data/src/10.2/sql/sql_connect.cc:1336
      #16 0x00005612c21d230a in handle_one_connection (arg=0x5612c5759eb0) at /data/src/10.2/sql/sql_connect.cc:1241
      #17 0x00005612c29eff40 in pfs_spawn_thread (arg=0x5612c5764420) at /data/src/10.2/storage/perfschema/pfs.cc:1869
      #18 0x00007f066ac164a4 in start_thread (arg=0x7f066406d700) at pthread_create.c:456
      #19 0x00007f0668d4ad0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
      

      5.5 4d1c1b23

      mysqld: /data/src/5.5/sql/sql_error.cc:362: void Diagnostics_area::set_ok_status(THD*, ulonglong, ulonglong, const char*): Assertion `! is_set()' failed.
      200202 21:54:47 [ERROR] mysqld got signal 6 ;
       
      #7  0x00007ff208baef12 in __GI___assert_fail (assertion=0x55e2e1dbc817 "! is_set()", file=0x55e2e1dbc750 "/data/src/5.5/sql/sql_error.cc", line=362, function=0x55e2e1dbcae0 <Diagnostics_area::set_ok_status(THD*, unsigned long long, unsigned long long, char const*)::__PRETTY_FUNCTION__> "void Diagnostics_area::set_ok_status(THD*, ulonglong, ulonglong, const char*)") at assert.c:101
      #8  0x000055e2e1682200 in Diagnostics_area::set_ok_status (this=0x7ff2046736d0, thd=0x7ff20466f060, affected_rows_arg=0, last_insert_id_arg=0, message_arg=0x7ff20a61fa10 "Rows matched: 0  Changed: 0  Warnings: 1") at /data/src/5.5/sql/sql_error.cc:362
      #9  0x000055e2e163f1a6 in my_ok (thd=0x7ff20466f060, affected_rows=0, id=0, message=0x7ff20a61fa10 "Rows matched: 0  Changed: 0  Warnings: 1") at /data/src/5.5/sql/sql_class.h:3215
      #10 0x000055e2e175da5d in mysql_update (thd=0x7ff20466f060, table_list=0x7ff2039491b8, fields=..., values=..., conds=0x7ff203949d60, order_num=0, order=0x0, limit=18446744073709551615, handle_duplicates=DUP_ERROR, ignore=false, found_return=0x7ff20a620308, updated_return=0x7ff20a620300) at /data/src/5.5/sql/sql_update.cc:965
      #11 0x000055e2e16a7063 in mysql_execute_command (thd=0x7ff20466f060) at /data/src/5.5/sql/sql_parse.cc:2837
      #12 0x000055e2e16af609 in mysql_parse (thd=0x7ff20466f060, rawbuf=0x7ff203949078 "UPDATE t1 SET f = NULL WHERE f IN ( 'x', ST_PointFromText('POINT(0 0)') )", length=73, parser_state=0x7ff20a620620) at /data/src/5.5/sql/sql_parse.cc:5929
      #13 0x000055e2e16a2ec5 in dispatch_command (command=COM_QUERY, thd=0x7ff20466f060, packet=0x7ff2047e8061 "UPDATE t1 SET f = NULL WHERE f IN ( 'x', ST_PointFromText('POINT(0 0)') )", packet_length=73) at /data/src/5.5/sql/sql_parse.cc:1067
      #14 0x000055e2e16a20d5 in do_command (thd=0x7ff20466f060) at /data/src/5.5/sql/sql_parse.cc:793
      #15 0x000055e2e17a8393 in do_handle_one_connection (thd_arg=0x7ff20466f060) at /data/src/5.5/sql/sql_connect.cc:1268
      #16 0x000055e2e17a8102 in handle_one_connection (arg=0x7ff20466f060) at /data/src/5.5/sql/sql_connect.cc:1184
      #17 0x000055e2e1b2cd90 in pfs_spawn_thread (arg=0x7ff20467eb60) at /data/src/5.5/storage/perfschema/pfs.cc:1015
      #18 0x00007ff20a2554a4 in start_thread (arg=0x7ff20a621700) at pthread_create.c:456
      #19 0x00007ff208c6bd0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
      

      Reproducible with at least MyISAM and InnoDB.
      For an effect on a non-debug version, see MDEV-21634.

      Attachments

        Issue Links

          Activity

            People

              rucha174 Rucha Deodhar
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              2 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.