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

Assertion `strcmp(share->unique_file_name,filename) || share->last_version' fails at /storage/myisam/mi_open.c:67

    XMLWordPrintable

    Details

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

      Description

      The failure started happening on 10.0-base tree from the following revision:

      revno: 3651
      revision-id: sergii@pisem.net-20130615170931-bn2h8j30vu5bfp0t
      parent: knielsen@knielsen-hq.org-20130608103621-g91eaielv4n22aha
      fixes bug: https://mariadb.atlassian.net/browse/MDEV-4441
      committer: Sergei Golubchik <sergii@pisem.net>
      branch nick: 10.0-base
      timestamp: Sat 2013-06-15 19:09:31 +0200
      message:
        MDEV-4441 DROP DATABASE with a newly created ARCHIVE table does not work
       
        1. DROP DATABASE should use ha_discover_table_names(), not look at .frm files.
        2. filename_to_tablename() also encodes temp file names #sql- -> #mysql50##sql
        3. no special treatment for #sql- files, no TABLE_LIST::internal_tmp_table
        4. discover also table file names, that start from #

      Stack trace from the current 10.0 tree revno 3843, built with BUILD/compile-pentium-debug-max-no-ndb

      mysqld: 10.0/storage/myisam/mi_open.c:67: test_if_reopen: Assertion `strcmp(share->unique_file_name,filename) || share->last_version' failed.
      130930 18:06:42 [ERROR] mysqld got signal 6 ;

      #6  0x00007f087a0230ee in __assert_fail_base (fmt=<optimised out>, assertion=0x10f5b98 "strcmp(share->unique_file_name,filename) || share->last_version", file=0x10f5b68 "10.0/storage/myisam/mi_open.c", line=<optimised out>, function=<optimised out>) at assert.c:94
      #7  0x00007f087a023192 in __GI___assert_fail (assertion=0x10f5b98 "strcmp(share->unique_file_name,filename) || share->last_version", file=0x10f5b68 "10.0/storage/myisam/mi_open.c", line=67, function=0x10f5dd4 "test_if_reopen") at assert.c:103
      #8  0x0000000000d3a307 in test_if_reopen (filename=0x7f087b7fb100 "10.0/data/test/#sql-783_7.MYI") at 10.0/storage/myisam/mi_open.c:66
      #9  0x0000000000d26cc8 in mi_create (name=0x7f087b7fb600 "./test/#sql-783_7", keys=6, keydefs=0x7f084c974550, columns=13, recinfo=0x7f084c974070, uniques=0, uniquedefs=0x0, ci=0x7f087b7fb570, flags=2) at 10.0/storage/myisam/mi_create.c:637
      #10 0x0000000000d1231b in ha_myisam::create (this=0x7f084c8d1888, name=0x7f087b7fd48c "./test/#sql-783_7", table_arg=0x6, ha_create_info=0x7f087b7fe2a0) at 10.0/storage/myisam/ha_myisam.cc:2031
      #11 0x000000000082093c in handler::ha_create (this=0x7f084c8d1888, name=0x7f087b7fd48c "./test/#sql-783_7", form=0x7f087b7fb8c0, info=0x7f087b7fe2a0) at 10.0/sql/handler.cc:4207
      #12 0x000000000082183b in ha_create_table (thd=0x7f085ebf5070, path=0x7f087b7fd48c "./test/#sql-783_7", db=0x7f084c42c750 "test", table_name=0x7f087b7fcc20 "#sql-783_7", create_info=0x7f087b7fe2a0, frm=0x7f087b7fcb40) at 10.0/sql/handler.cc:4576
      #13 0x00000000006eb0e1 in mysql_alter_table (thd=0x7f085ebf5070, new_db=0x7f084c42c750 "test", new_name=0x0, create_info=0x7f087b7fe2a0, table_list=0x7f084c42c188, alter_info=0x7f087b7fe3b0, order_num=0, order=0x0, ignore=false) at 10.0/sql/sql_table.cc:8325
      #14 0x0000000000752cf9 in Sql_cmd_alter_table::execute (this=0x7f084c42c838, thd=0x7f085ebf5070) at 10.0/sql/sql_alter.cc:312
      #15 0x000000000063c45c in mysql_execute_command (thd=0x7f085ebf5070) at 10.0/sql/sql_parse.cc:4957
      #16 0x000000000063f698 in mysql_parse (thd=0x7f085ebf5070, rawbuf=0x7f084c42c088 "ALTER TABLE `BB` ADD COLUMN t INTEGER", length=37, parser_state=0x7f087b7ff4c0) at 10.0/sql/sql_parse.cc:6269
      #17 0x0000000000632408 in dispatch_command (command=COM_QUERY, thd=0x7f085ebf5070, packet=0x7f085f39b071 "ALTER TABLE `BB` ADD COLUMN t INTEGER", packet_length=37) at 10.0/sql/sql_parse.cc:1278
      #18 0x0000000000631840 in do_command (thd=0x7f085ebf5070) at 10.0/sql/sql_parse.cc:984
      #19 0x000000000074e369 in do_handle_one_connection (thd_arg=0x7f085ebf5070) at 10.0/sql/sql_connect.cc:1379
      #20 0x000000000074e0bc in handle_one_connection (arg=0x7f085ebf5070) at 10.0/sql/sql_connect.cc:1293
      #21 0x0000000000e1947b in pfs_spawn_thread (arg=0x7f0864ff5670) at 10.0/storage/perfschema/pfs.cc:1853
      #22 0x00007f087abcce9a in start_thread (arg=0x7f087b800700) at pthread_create.c:308
      #23 0x00007f087a0e7cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
      #24 0x0000000000000000 in ?? ()

      RQG grammar:

      thread1:
              ALTER TABLE _table ADD COLUMN _letter INTEGER |
              ALTER TABLE _table DROP COLUMN _letter ;
       
      query:
              SHOW TABLE STATUS  ;

      RQG command line (assuming the server is already running on port 3306):

      perl ./gentest.pl --threads=2 --duration=600 --queries=100M  --grammar=1.yy --engine=MyISAM  --dsn=dbi:mysql:host=127.0.0.1:port=3306:user=root:database=test --gendata

      The failure happens for me within seconds after the start.

        Attachments

          Activity

            People

            Assignee:
            serg Sergei Golubchik
            Reporter:
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: