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

Server crashes in mhnsw_insert upon using vector key on a Spider table

    XMLWordPrintable

Details

    Description

      INSTALL SONAME 'ha_spider';
      SET spider_same_server_link= ON;
       
      --eval create server s foreign data wrapper mysql options (host "127.0.0.1", database "test", user "root", port $MASTER_MYPORT);
       
      CREATE TABLE t (v VECTOR(1) NOT NULL, VECTOR(v));
      CREATE TABLE t_spider (v VECTOR(1) NOT NULL, VECTOR(v)) ENGINE=Spider WRAPPER=mysql REMOTE_TABLE=t REMOTE_SERVER=s;
      INSERT INTO t_spider (v) VALUES (0x30303030);
      

      3e03a45aa4c69e5aa76c9396547797a895a98edc

      #2  <signal handler called>
      #3  0x00007f3a1a91042b in spider_db_create_position (spider=0x7f3a081a69b0, pos=0x7f3a081aacb8) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/storage/spider/spd_db_conn.cc:4699
      #4  0x000055cadf221cee in mhnsw_insert (table=0x7f3a081db458, keyinfo=<optimized out>) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/vector_mhnsw.cc:1150
      #5  0x000055cadedc87df in TABLE::hlindexes_on_insert (this=<optimized out>) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_base.cc:9951
      #6  0x000055cadf0d427d in handler::ha_write_row (this=0x7f3a081a69b0, buf=0x7f3a081aaaa0 "\0040000\177") at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/handler.cc:8173
      #7  0x000055cadedf819d in write_record (thd=thd@entry=0x7f3a08000c68, table=table@entry=0x7f3a081db458, info=info@entry=0x7f3a1aa04a60, sink=sink@entry=0x0) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_insert.cc:2323
      #8  0x000055cadee01ea6 in mysql_insert (thd=thd@entry=0x7f3a08000c68, table_list=<optimized out>, fields=..., values_list=..., update_fields=..., update_values=..., duplic=<optimized out>, ignore=<optimized out>, result=<optimized out>) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_insert.cc:1179
      #9  0x000055cadee37220 in mysql_execute_command (thd=thd@entry=0x7f3a08000c68, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_parse.cc:4460
      #10 0x000055cadee3b896 in mysql_parse (thd=0x7f3a08000c68, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_parse.cc:7888
      #11 0x000055cadee3e12d in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7f3a08000c68, packet=packet@entry=0x7f3a080088b9 "INSERT INTO t_spider (v) VALUES (0x30303030)", packet_length=packet_length@entry=44, blocking=blocking@entry=true) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_parse.cc:1991
      #12 0x000055cadee4006f in do_command (thd=0x7f3a08000c68, blocking=blocking@entry=true) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_parse.cc:1405
      #13 0x000055cadef72517 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55cae1eb9218, put_in_cache=put_in_cache@entry=true) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_connect.cc:1448
      #14 0x000055cadef7289d in handle_one_connection (arg=arg@entry=0x55cae1eb9218) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/sql/sql_connect.cc:1350
      #15 0x000055cadf32e11c in pfs_spawn_thread (arg=0x55cae1e71be8) at /data/bld/preview-vector-rel-bb-11.6-MDEV-32887-vector/storage/perfschema/pfs.cc:2198
      #16 0x00007f3a214a8044 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
      #17 0x00007f3a2152861c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
      

      Note: Once running this test I got the error instead of the crash

      mysqltest: At line 8: query 'INSERT INTO t_spider (v) VALUES (0x30303030)' failed: ER_CONNECT_TO_FOREIGN_DATA_SOURCE (1429): Unable to connect to foreign data source: localhost
      

      I can't see where the non-determinism comes from, and it never happened again. For the purpose of this bug report, just try to re-run the test if you see this.

      Attachments

        Issue Links

          Activity

            People

              serg Sergei Golubchik
              elenst Elena Stepanova
              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.