Bug #17806 Update on NDB table with list partition causes mysqld to core
Submitted: 28 Feb 2006 20:51 Modified: 1 Mar 2006 13:29
Reporter: Jonathan Miller Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S1 (Critical)
Version:5.1.8 OS:Linux (Linux 32 Bit OS)
Assigned to: Assigned Account CPU Architecture:Any

[28 Feb 2006 20:51] Jonathan Miller
Description:
drop table if exists t1;
CREATE TABLE t1 (
a int not null,
b int not null,
c int not null)
partition by list(a)
partitions 2
(partition x123 values in (1,5,6),
 partition x234 values in (4,7,8));
INSERT into t1 VALUES (5,1,1);
UPDATE t1 SET a=8 WHERE a=5 AND b=1;
drop table t1;

#0  0x00b2f402 in __kernel_vsyscall ()
#1  0x00a2855f in pthread_kill () from /lib/libpthread.so.0
#2  0x082f31cb in write_core (sig=10752) at stacktrace.c:220
#3  0x081d3902 in handle_segfault (sig=11) at mysqld.cc:2179
#4  <signal handler called>
#5  ha_ndbcluster::complemented_pk_read (this=0xa71dd08, old_data=0xa71ebb8 "",
    new_data=0xa71eba8 "", old_part_id=0) at ha_ndbcluster.cc:1551
#6  0x08343cc9 in ha_ndbcluster::update_row (this=0xa71dd08, old_data=0xa71ebb8 "",
    new_data=0xa71eba8 "") at ha_ndbcluster.cc:2513
#7  0x082a82ab in handler::ha_update_row (this=0xa71dd08, old_data=0xa71ebb8 "",
    new_data=0xa71eba8 "") at handler.cc:3222
#8  0x0825a819 in mysql_update (thd=0xa6d31e0, table_list=0xa705ed8, fields=@0xa6d34e0,
    values=@0xa6d36b8, conds=0xa7064f8, order_num=3072, order=0x0, limit=18446744073709551615,
    handle_duplicates=DUP_ERROR, ignore=false) at sql_update.cc:538
#9  0x081f202d in mysql_execute_command (thd=0xa6d31e0) at sql_parse.cc:3221
#10 0x081f7694 in mysql_parse (thd=0xa6d31e0,
    inBuf=0xa705e50 "UPDATE t1 SET a=8 WHERE a=5 AND b=1", length=35) at sql_parse.cc:5775
#11 0x081f7c5d in dispatch_command (command=COM_QUERY, thd=0xa6d31e0, packet=Variable "packet" is not available.
)
    at sql_parse.cc:1769
#12 0x081f99e7 in handle_one_connection (arg=0xa6d31e0) at sql_parse.cc:1536
#13 0x00a25b80 in start_thread () from /lib/libpthread.so.0
#14 0x0097d9ce in clone () from /lib/libc.so.6

How to repeat:
Create ndb_1.test with SQL above

./mysql-test-run --force --mysqld=--default-storage-engine=ndb --with-ndbcluster-all --ndb-extra-test --do-test=ndb_1
[1 Mar 2006 12:54] Tomas Ulin
probably a duplicate with 16385
[1 Mar 2006 13:29] Tomas Ulin
duplicate with 16385, same bug... different test case showing it
[1 Mar 2006 13:30] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/3322
[1 Mar 2006 14:28] Tomas Ulin
pushed to 5.1.8, see 16385