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

Server crashes in ha_partition::try_semi_consistent_read upon attempt to update ROW END column of a partitioned table under SIMULTANEOUS_ASSIGNMENT

Details

    Description

      --source include/have_partition.inc
       
      CREATE TABLE t1 (a TEXT, s TIMESTAMP(6) AS ROW START, e TIMESTAMP(6) AS ROW END, PERIOD FOR SYSTEM_TIME(s,e)) WITH SYSTEM VERSIONING PARTITION BY SYSTEM_TIME INTERVAL 1 WEEK (PARTITION p1 HISTORY, PARTITION pc CURRENT);
      INSERT INTO t1 (a) VALUES ('foo');
      SET SQL_MODE= 'SIMULTANEOUS_ASSIGNMENT';
      UPDATE t1 SET e = 0;
       
      # Cleanup
      DROP TABLE t1;
      

      10.3 617d34ae

      ==4457==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x564fd9892fdc bp 0x7f6406353bc0 sp 0x7f6406353b20 T5)
          #0 0x564fd9892fdb in ha_partition::try_semi_consistent_read(bool) /data/src/10.3/sql/ha_partition.cc:4201
          #1 0x564fd83a79ec in mysql_update(THD*, TABLE_LIST*, List<Item>&, List<Item>&, Item*, unsigned int, st_order*, unsigned long long, bool, unsigned long long*, unsigned long long*) /data/src/10.3/sql/sql_update.cc:1111
          #2 0x564fd8149346 in mysql_execute_command(THD*) /data/src/10.3/sql/sql_parse.cc:4581
          #3 0x564fd815fa03 in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) /data/src/10.3/sql/sql_parse.cc:8098
          #4 0x564fd813a1b5 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) /data/src/10.3/sql/sql_parse.cc:1858
          #5 0x564fd813716c in do_command(THD*) /data/src/10.3/sql/sql_parse.cc:1403
          #6 0x564fd849b584 in do_handle_one_connection(CONNECT*) /data/src/10.3/sql/sql_connect.cc:1402
          #7 0x564fd849af60 in handle_one_connection /data/src/10.3/sql/sql_connect.cc:1308
          #8 0x564fd984492b in pfs_spawn_thread /data/src/10.3/storage/perfschema/pfs.cc:1862
          #9 0x7f6411d7d4a3 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x74a3)
          #10 0x7f64102c5d0e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0xe8d0e)
       
      AddressSanitizer can not provide additional info.
      SUMMARY: AddressSanitizer: SEGV /data/src/10.3/sql/ha_partition.cc:4201 in ha_partition::try_semi_consistent_read(bool)
      Thread T5 created by T0 here:
          #0 0x7f6411fc3f59 in __interceptor_pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.3+0x30f59)
          #1 0x564fd9844d67 in spawn_thread_v1 /data/src/10.3/storage/perfschema/pfs.cc:1912
          #2 0x564fd7eb1560 in inline_mysql_thread_create /data/src/10.3/include/mysql/psi/mysql_thread.h:1268
          #3 0x564fd7ec64d6 in create_thread_to_handle_connection(CONNECT*) /data/src/10.3/sql/mysqld.cc:6605
          #4 0x564fd7ec6bcd in create_new_thread /data/src/10.3/sql/mysqld.cc:6675
          #5 0x564fd7ec7bf4 in handle_connections_sockets() /data/src/10.3/sql/mysqld.cc:6950
          #6 0x564fd7ec598e in mysqld_main(int, char**) /data/src/10.3/sql/mysqld.cc:6227
          #7 0x564fd7eafc7f in main /data/src/10.3/sql/main.cc:25
          #8 0x7f64101fd2e0 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202e0)
       
      ==4457==ABORTING
      

      All of ASAN, debug and non-debug builds fail with SEGV.
      Reproducible with at least MyISAM and InnoDB.

      Attachments

        Issue Links

          Activity

            There are no comments yet on this issue.

            People

              midenok Aleksey Midenkov
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              1 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.