Bug #14350 Partitions: crash if prepared statement
Submitted: 26 Oct 2005 20:08 Modified: 24 Mar 2006 6:23
Reporter: Peter Gulutzan Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Partitions Severity:S1 (Critical)
Version:5.1.2-alpha-debug OS:Linux (SUSE 10.0)
Assigned to: Alexey Botchkov CPU Architecture:Any

[26 Oct 2005 20:08] Peter Gulutzan
Description:
If I create a partitioned table with a prepared statement, twice, crash.

How to repeat:
mysql> prepare stmt1 from 'create table t16 (s1 int) partition by hash (s1)';
Query OK, 0 rows affected (0.00 sec)
Statement prepared

mysql> execute stmt1;
Query OK, 0 rows affected (0.00 sec)

mysql> execute stmt1;
ERROR 2013 (HY000): Lost connection to MySQL server during query
[26 Oct 2005 21:17] Jorge del Conde
I was able to reproduce this bug using a recent 5.1 clone
[16 Feb 2006 18:59] Jim Winstead
This occurs with stored procedures, too. (Reported as Bug #17216.) The problem is that members of the partition_info object are being modified when CREATE TABLE is executed, but then only partially freed before the statement is executed a second time.

Additional test case, demonstrating the SP problem:

delimiter |;
CREATE PROCEDURE p1()
BEGIN
  CREATE TABLE t1(a INT, PRIMARY KEY(a)) PARTITION BY KEY();
END|
delimiter ;|

CALL p1();
DROP TABLE t1;
CALL p1();
DROP TABLE t1;
[16 Feb 2006 19:06] Jonathan Miller
Raising priority of this bug report due to 17216 that was duplicated on the premise that it is the same bug is a crashing bug report.

http://bugs.mysql.com/bug.php?id=17216

If you have question, please contact me.
[20 Mar 2006 23:16] Mikael Ronström
This patch will appear in 5.1.8
See bug #17290 for more details
[24 Mar 2006 6:23] Jon Stephens
Thank you for your bug report. This issue has been committed to our
source repository of that product and will be incorporated into the
next release.

If necessary, you can access the source repository and build the latest
available version, including the bugfix, yourself. More information 
about accessing the source trees is available at
    http://www.mysql.com/doc/en/Installing_source_tree.html

Additional info:

Documented in 5.1.8 changelog. Closed.