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

CONNECT: Assertion failure in Diagnostics_area::set_error_status or unspecified error instead of a duplicate key error

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 10.0.2
    • Fix Version/s: 10.0.4
    • Component/s: None
    • Labels:

      Description

      An attempt to insert a duplicate value into a unique index causes assertion failure on a debug build or unspecified error on a release build.
      See also MDEV-4494 – possibly it's a general problem of wrong error handling.

      Release build:

      MariaDB [test]> insert into t6 values (1);
      ERROR 1015 (HY000): Can't lock file (errno: 122 "Internal (unspecified) error in handler")

      Debug build:

      10.0/sql/sql_error.cc:422: void Diagnostics_area::set_error_status(THD*, uint, const char*, const char*): Assertion `! is_set() || can_overwrite_status' failed.
      Cannot index nullable column a
      130507 22:21:40 [ERROR] mysqld got signal 6 ;

      #7  0x00007fa34ae8d192 in __GI___assert_fail (assertion=0xe540e0 "! is_set() || can_overwrite_status", file=0xe53fe0 "10.0/sql/sql_error.cc", line=422, function=0xe544a0 "void Diagnostics_area::set_error_status(THD*, uint, const char*, const char*)") at assert.c:103
      #8  0x00000000005fa9b2 in Diagnostics_area::set_error_status (this=0x24feb50, thd=0x24faad8, sql_errno_arg=1015, message_arg=0x7fa33a5298f0 "Can't lock file (errno: 122 \"Internal (unspecified) error in handler\")", sqlstate=0xe694b9 "HY000") at 10.0/sql/sql_error.cc:422
      #9  0x00000000005e3371 in THD::raise_condition (this=0x24faad8, sql_errno=1015, sqlstate=0xe694b9 "HY000", level=MYSQL_ERROR::WARN_LEVEL_ERROR, msg=0x7fa33a5298f0 "Can't lock file (errno: 122 \"Internal (unspecified) error in handler\")") at 10.0/sql/sql_class.cc:1206
      #10 0x000000000056a23d in my_message_sql (error=1015, str=0x7fa33a5298f0 "Can't lock file (errno: 122 \"Internal (unspecified) error in handler\")", MyFlags=0) at 10.0/sql/mysqld.cc:3369
      #11 0x0000000000dc5680 in my_error (nr=1015, MyFlags=0) at 10.0/mysys/my_error.c:96
      #12 0x00000000008da20e in print_lock_error (error=122, table=0x7fa32c01e718) at 10.0/sql/lock.cc:921
      #13 0x00000000008d985b in unlock_external (thd=0x24faad8, table=0x7fa32c009b10, count=1) at 10.0/sql/lock.cc:674
      #14 0x00000000008d8da7 in mysql_unlock_tables (thd=0x24faad8, sql_lock=0x7fa32c009ae8, free_lock=true) at 10.0/sql/lock.cc:382
      #15 0x00000000005bcd04 in close_thread_tables (thd=0x24faad8) at 10.0/sql/sql_base.cc:1545
      #16 0x0000000000627196 in mysql_execute_command (thd=0x24faad8) at 10.0/sql/sql_parse.cc:4921
      #17 0x0000000000629fc6 in mysql_parse (thd=0x24faad8, rawbuf=0x7fa32c118c30 "INSERT INTO t1 VALUES (1),(1)", length=29, parser_state=0x7fa33a52a500) at 10.0/sql/sql_parse.cc:6154
      #18 0x000000000061cf0e in dispatch_command (command=COM_QUERY, thd=0x24faad8, packet=0x24feea9 "INSERT INTO t1 VALUES (1),(1)", packet_length=29) at 10.0/sql/sql_parse.cc:1274
      #19 0x000000000061c384 in do_command (thd=0x24faad8) at 10.0/sql/sql_parse.cc:983
      #20 0x0000000000736cc5 in do_handle_one_connection (thd_arg=0x24faad8) at 10.0/sql/sql_connect.cc:1267
      #21 0x0000000000736a18 in handle_one_connection (arg=0x24faad8) at 10.0/sql/sql_connect.cc:1181
      #22 0x00000000009c9893 in pfs_spawn_thread (arg=0x236f848) at 10.0/storage/perfschema/pfs.cc:1800
      #23 0x00007fa34be73e9a in start_thread (arg=0x7fa33a52b700) at pthread_create.c:308
      #24 0x00007fa34af51cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112

      Test case:

      CREATE TABLE t1 (a INT, UNIQUE INDEX(a)) ENGINE=CONNECT;
      INSERT INTO t1 VALUES (1),(1);

      bzr version-info

      revision-id: knielsen@knielsen-hq.org-20130429100354-0kujsw18axni9syq
      revno: 3748
      branch-nick: 10.0

        Attachments

          Activity

            People

            Assignee:
            bar Alexander Barkov
            Reporter:
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Git Integration