Bug #17179 Partitioned table creation fails with number of attributes > 32
Submitted: 7 Feb 2006 8:38 Modified: 14 Feb 2006 9:36
Reporter: patrice audigou Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Partitions Severity:S1 (Critical)
Version:5.1.6-alpha OS:Linux (redhat9)
Assigned to: Tomas Ulin CPU Architecture:Any

[7 Feb 2006 8:38] patrice audigou
Description:
I have created a cluster with one ndb node. 

When i try to create the schema using the command 
mysql -D hlr < createtable.sql (file createtable.sql joined to this report)
 the process fails with  the following error:

ERROR 1481 (HY000) at line 91: A PRIMARY KEY need to include all fields in the partition function

How to repeat:
mysql -D hlr < createtable.sql
[7 Feb 2006 8:39] patrice audigou
mysql schema

Attachment: createtable.sql (text/x-sql), 45.79 KiB.

[7 Feb 2006 11:11] Hartmut Holzgraefe
Partitioning by key fails as soon as the table has 32 or more attributes,
also happens with other table engines:

DROP TABLE IF EXISTS t31;
CREATE TABLE t31
(
f1 INT,
f2 INT,
f3 INT,
f4 INT,
f5 INT,
f6 INT,
f7 INT,
f8 INT,
f9 INT,
f10 INT,
f11 INT,
f12 INT,
f13 INT,
f14 INT,
f15 INT,
f16 INT,
f17 INT,
f18 INT,
f19 INT,
f20 INT,
f21 INT,
f22 INT,
f23 INT,
f24 INT,
f25 INT,
f26 INT,
f27 INT,
f28 INT,
f29 INT,
f30 INT,
f31 INT,
PRIMARY KEY USING HASH (f1) ) 
ENGINE=innodb
      PARTITION BY KEY (f1);

DROP TABLE IF EXISTS t32;
CREATE TABLE t32
(
f1 INT,
f2 INT,
f3 INT,
f4 INT,
f5 INT,
f6 INT,
f7 INT,
f8 INT,
f9 INT,
f10 INT,
f11 INT,
f12 INT,
f13 INT,
f14 INT,
f15 INT,
f16 INT,
f17 INT,
f18 INT,
f19 INT,
f20 INT,
f21 INT,
f22 INT,
f23 INT,
f24 INT,
f25 INT,
f26 INT,
f27 INT,
f28 INT,
f29 INT,
f30 INT,
f31 INT,
f32 INT,
PRIMARY KEY USING HASH (f1) ) 
ENGINE=innodb
      PARTITION BY KEY (f1);
[13 Feb 2006 18:40] 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/2536
[13 Feb 2006 19:02] Tomas Ulin
pushed to 5.1.7
[14 Feb 2006 9:36] 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:

Changed category from Cluster to Partitioning since this affects all table handlers, not just NDB.

Updated description -> in MySQL, "schema" generally refers to a collection of tables (a "database"), not to a single table.

Documented fix in 5.1.7 changelog. Closed.