--source include/have_ndb.inc SET SESSION storage_engine='NDB'; --disable_abort_on_error --disable_warnings DROP TABLE IF EXISTS t1; --enable_warnings --echo shrinked testcase CREATE TABLE t1 ( f_int1 INTEGER, f_int2 INTEGER, f_char1 CHAR(10), f_char2 CHAR(10), f_charbig VARCHAR(1000)) PARTITION BY LIST(MOD(f_int1,2)) SUBPARTITION BY HASH(f_int1) ( PARTITION part1 VALUES IN (0) , PARTITION part2 VALUES IN (1) , PARTITION part3 VALUES IN (2) ); # harmless variants # 1. without subpartitioning PARTITION BY LIST(MOD(f_int1,2)) # 2. without MOD(f_int1,2) PARTITION BY LIST(f_int1) SUBPARTITION BY HASH(f_int1) # # The statement, where the crash occurs DELETE FROM t1 WHERE f_int1 IS NULL OR f_int1 = 1; # harmless variants # 1. no DELETE SELECT * FROM t1 WHERE f_int1 IS NULL OR f_int1 = 0; # 2. no OR f_int1 = 0 DELETE FROM t1 WHERE f_int1 IS NULL; # 3. no f_int1 IS NULL DELETE FROM t1 WHERE f_int1 = 0; # 4. i=1 instead of IS NULL DELETE FROM t1 WHERE f_int1 = 1 OR f_int1 = 0; DROP TABLE t1; --echo original testcase CREATE TABLE t1 ( f_int1 INTEGER, f_int2 INTEGER, f_char1 CHAR(10), f_char2 CHAR(10), f_charbig VARCHAR(1000)) PARTITION BY LIST(ABS(MOD(f_int1,3))) SUBPARTITION BY HASH(f_int1 + 1) ( PARTITION part1 VALUES IN (0) (SUBPARTITION sp11, SUBPARTITION sp12), PARTITION part2 VALUES IN (1) (SUBPARTITION sp21, SUBPARTITION sp22), PARTITION part3 VALUES IN (2) (SUBPARTITION sp31, SUBPARTITION sp32)); DELETE FROM t1 WHERE f_int1 IS NULL OR f_int1 = 0; DROP TABLE t1;