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

Assertion failure upon HANDLER operations on a partitioned table

    XMLWordPrintable

Details

    Description

      ycp We are still observing assertion failure during HANDLER operations on a partitioned table with the following test case, even after the fix for MDEV-39535

      --source include/have_partition.inc
       
      CREATE TABLE t1 (c1 INT KEY) PARTITION BY LIST(c1) (PARTITION p1 VALUES IN (1,2,3));
      HANDLER t1 OPEN;
      HANDLER t1 READ `PRIMARY`=(1);
      HANDLER t1 READ `PRIMARY` PREV;
      HANDLER t1 READ `PRIMARY` PREV;
       
      #cleanup
      DROP TABLE t1;
      

      Leads to:

      CS 13.1.0 2ecb8bb6b5c4e1376a345847d9e3d74f3872e3be (Debug, Clang 18.1.3-11) Build 28/05/2026

      mariadbd: /test/13.0_dbg/sql/ha_partition.cc:7954: int ha_partition::handle_unordered_prev(uchar *): Assertion `0' failed.
      

      CS 13.1.0 2ecb8bb6b5c4e1376a345847d9e3d74f3872e3be (Debug, Clang 18.1.3-11) Build 28/05/2026

      Core was generated by `/test/MD280526-mariadb-13.1.0-linux-x86_64-dbg/bin/mariadbd --no-defaults --loo'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
       
      [Current thread is 1 (LWP 37656)]
      (gdb) bt
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6)at ./nptl/pthread_kill.c:89
      #3  0x000072b083a4527e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x000072b083a288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x000072b083a2881b in __assert_fail_base (fmt=0x72b083bd01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x55f08185a538 "0", file=file@entry=0x55f08187d7d1 "/test/13.0_dbg/sql/ha_partition.cc", line=line@entry=7954, function=function@entry=0x55f08187ea68 "int ha_partition::handle_unordered_prev(uchar *)") at ./assert/assert.c:96
      #6  0x000072b083a3b517 in __assert_fail (assertion=0x55f08185a538 "0", file=0x55f08187d7d1 "/test/13.0_dbg/sql/ha_partition.cc", line=7954, function=0x55f08187ea68 "int ha_partition::handle_unordered_prev(uchar *)")at ./assert/assert.c:105
      #7  0x000055f080de7d83 in ha_partition::handle_unordered_prev (this=0x6aaf6c0336e0, buf=0x6aaf6c034860 "\377\001")at /test/13.0_dbg/sql/ha_partition.cc:7954
      #8  0x000055f080de7b72 in ha_partition::index_prev (this=0x6aaf6c0336e0, buf=0x6aaf6c034860 "\377\001") at /test/13.0_dbg/sql/ha_partition.cc:6281
      #9  0x000055f080a382e3 in handler::ha_index_prev (this=0x6aaf6c0336e0, buf=0x6aaf6c034860 "\377\001") at /test/13.0_dbg/sql/handler.cc:4234
      #10 0x000055f080560389 in mysql_ha_read (thd=0x6aaf6c000d60, tables=0x6aaf6c01a550, mode=RPREV, keyname=0x6aaf6c01acb0 "PRIMARY", key_expr=0x6aaf6c01acd0, ha_rkey_mode=HA_READ_KEY_EXACT, cond=0x0, select_limit_cnt=1, offset_limit_cnt=0)at /test/13.0_dbg/sql/sql_handler.cc:933
      #11 0x000055f0805d916d in mysql_execute_command (thd=0x6aaf6c000d60, is_called_from_prepared_stmt=false) at /test/13.0_dbg/sql/sql_parse.cc:5530
      #12 0x000055f0805c9d64 in mysql_parse (thd=0x6aaf6c000d60, rawbuf=0x6aaf6c01a3c0 "HANDLER t1 READ `PRIMARY` PREV", length=30, parser_state=0x72b0800e6ab0) at /test/13.0_dbg/sql/sql_parse.cc:7945
      #13 0x000055f0805c70ad in dispatch_command (command=COM_QUERY, thd=0x6aaf6c000d60, packet=0x6aaf6c00b5f1 "", packet_length=30, blocking=true) at /test/13.0_dbg/sql/sql_parse.cc:1903
      #14 0x000055f0805ca913 in do_command (thd=0x6aaf6c000d60, blocking=true)at /test/13.0_dbg/sql/sql_parse.cc:1437
      #15 0x000055f0807c8f79 in do_handle_one_connection (connect=0x55f086eab700, put_in_cache=true) at /test/13.0_dbg/sql/sql_connect.cc:1503
      #16 0x000055f0807c8d1e in handle_one_connection (arg=0x55f086f47d90)at /test/13.0_dbg/sql/sql_connect.cc:1415
      #17 0x000072b083a9caa4 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #18 0x000072b083b29c6c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      CS 12.3.2 66b3c6784689fbb65110a5b21efcb815a8bcde24 (Debug, Clang 18.1.3-11) Build 22/05/2026

      mariadbd: /test/12.3_dbg/sql/ha_partition.cc:7954: int ha_partition::handle_unordered_prev(uchar *): Assertion `0' failed.
      

      CS 12.3.2 66b3c6784689fbb65110a5b21efcb815a8bcde24 (Debug, Clang 18.1.3-11) Build 22/05/2026

      Core was generated by `/test/MD220526-mariadb-12.3.2-linux-x86_64-dbg/bin/mariadbd --no-defaults --loo'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
       
      [Current thread is 1 (LWP 3546175)]
      (gdb) bt
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6)at ./nptl/pthread_kill.c:89
      #3  0x000073bcc264527e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x000073bcc26288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x000073bcc262881b in __assert_fail_base (fmt=0x73bcc27d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x57a8493719f9 "0", file=file@entry=0x57a849394d01 "/test/12.3_dbg/sql/ha_partition.cc", line=line@entry=7954, function=function@entry=0x57a849395f98 "int ha_partition::handle_unordered_prev(uchar *)") at ./assert/assert.c:96
      #6  0x000073bcc263b517 in __assert_fail (assertion=0x57a8493719f9 "0", file=0x57a849394d01 "/test/12.3_dbg/sql/ha_partition.cc", line=7954, function=0x57a849395f98 "int ha_partition::handle_unordered_prev(uchar *)")at ./assert/assert.c:105
      #7  0x000057a848934d93 in ha_partition::handle_unordered_prev (this=0x6b9a14033410, buf=0x6b9a14034590 "\377\001")at /test/12.3_dbg/sql/ha_partition.cc:7954
      #8  0x000057a848934b82 in ha_partition::index_prev (this=0x6b9a14033410, buf=0x6b9a14034590 "\377\001") at /test/12.3_dbg/sql/ha_partition.cc:6281
      #9  0x000057a848584643 in handler::ha_index_prev (this=0x6b9a14033410, buf=0x6b9a14034590 "\377\001") at /test/12.3_dbg/sql/handler.cc:4236
      #10 0x000057a8480b4cc9 in mysql_ha_read (thd=0x6b9a14000d60, tables=0x6b9a1401a3e0, mode=RPREV, keyname=0x6b9a1401ab40 "PRIMARY", key_expr=0x6b9a1401ab60, ha_rkey_mode=HA_READ_KEY_EXACT, cond=0x0, select_limit_cnt=1, offset_limit_cnt=0)at /test/12.3_dbg/sql/sql_handler.cc:933
      #11 0x000057a84812966d in mysql_execute_command (thd=0x6b9a14000d60, is_called_from_prepared_stmt=false) at /test/12.3_dbg/sql/sql_parse.cc:5535
      #12 0x000057a84811a264 in mysql_parse (thd=0x6b9a14000d60, rawbuf=0x6b9a1401a250 "HANDLER t1 READ `PRIMARY` PREV", length=30, parser_state=0x73b8e41a79f0) at /test/12.3_dbg/sql/sql_parse.cc:7949
      #13 0x000057a8481175ad in dispatch_command (command=COM_QUERY, thd=0x6b9a14000d60, packet=0x6b9a1400b5e1 "", packet_length=30, blocking=true) at /test/12.3_dbg/sql/sql_parse.cc:1903
      #14 0x000057a84811ae13 in do_command (thd=0x6b9a14000d60, blocking=true)at /test/12.3_dbg/sql/sql_parse.cc:1437
      #15 0x000057a848317219 in do_handle_one_connection (connect=0x57a875cd16f0, put_in_cache=true) at /test/12.3_dbg/sql/sql_connect.cc:1503
      #16 0x000057a848316fbe in handle_one_connection (arg=0x57a875cd3f90)at /test/12.3_dbg/sql/sql_connect.cc:1415
      #17 0x000073bcc269caa4 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #18 0x000073bcc2729c6c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Bug Detection Matrix

          Rel    o/d  Build   Commit                                    UniqueID observed
      CS  10.11  dbg  220526  6f1204ad849b72a997fd34ce44a522d76716c24d  No bug found
      CS  10.11  opt  220526  6f1204ad849b72a997fd34ce44a522d76716c24d  No bug found
      CS  11.4   dbg  220526  19c59f2c79637cc360cc6d6b219ed9131124500d  No bug found
      CS  11.4   opt  220526  19c59f2c79637cc360cc6d6b219ed9131124500d  No bug found
      CS  11.8   dbg  220526  b494164767979072713fdeccc175ce3b3f5b1983  No bug found
      CS  11.8   opt  220526  b494164767979072713fdeccc175ce3b3f5b1983  No bug found
      CS  12.3   dbg  220526  66b3c6784689fbb65110a5b21efcb815a8bcde24  0|SIGABRT|ha_partition::handle_unordered_prev|ha_partition::index_prev|handler::ha_index_prev|mysql_ha_read
      CS  12.3   opt  220526  66b3c6784689fbb65110a5b21efcb815a8bcde24  No bug found
      CS  13.0   dbg  220526  c8e8d33309606e682c98675d594dbd23ebc2ddf6  0|SIGABRT|ha_partition::handle_unordered_prev|ha_partition::index_prev|handler::ha_index_prev|mysql_ha_read
      CS  13.0   opt  220526  c8e8d33309606e682c98675d594dbd23ebc2ddf6  No bug found
      CS  13.1   dbg  280526  2ecb8bb6b5c4e1376a345847d9e3d74f3872e3be  0|SIGABRT|ha_partition::handle_unordered_prev|ha_partition::index_prev|handler::ha_index_prev|mysql_ha_read
      CS  13.1   opt  280526  2ecb8bb6b5c4e1376a345847d9e3d74f3872e3be  No bug found
      ES  10.6   dbg  040825  9b794f34b48fb7eee490b6da44edc0f33a947447  No bug found
      ES  10.6   opt  040825  9b794f34b48fb7eee490b6da44edc0f33a947447  No bug found
      ES  11.4   dbg  040825  a1c03ccd54b582e75506687ee19b273ca897f261  No bug found
      ES  11.4   opt  040825  a1c03ccd54b582e75506687ee19b273ca897f261  No bug found
      ES  11.8   dbg  151025  780565c207e9ce0ebf7d8e3d59f223801447b619  No bug found
      

      Attachments

        Issue Links

          Activity

            People

              ycp Yuchen Pei
              ramesh Ramesh Sivaraman
              Votes:
              0 Vote for this issue
              Watchers:
              2 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.