Bug #20355 Unexpected behaviour of ALTER...ADD PARTITION (data directory)
Submitted: 9 Jun 2006 11:51 Modified: 18 Jul 2006 14:51
Reporter: Horst Hunger Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server: Partitions Severity:S2 (Serious)
Version:5.1.12 OS:Linux (Linux 10.1)
Assigned to: Mikael Ronström CPU Architecture:Any

[9 Jun 2006 11:51] Horst Hunger
Description:
The files belonging to existing paritions were moved from user defined directories to the default directory:

use systest1;
...
 create table tb1_eng1 ( ... ) engine=myisam
 PARTITION BY HASH(i1) PARTITIONS 2
 (PARTITION p1
 DATA DIRECTORY='/data0/mysql/mysql-5.1-clone/mysql-test/var/master-data/tmpdata'
 INDEX DIRECTORY = '/data0/mysql/mysql-5.1-clone/mysql-test/var/master-data/tmpindex',
 PARTITION p2
 DATA DIRECTORY = '/data0/mysql/mysql-5.1-clone/mysql-test/var/master-data/tmpdata'
 INDEX DIRECTORY = '/data0/mysql/mysql-5.1-clone/mysql-test/var/master-data/tmpindex');
...
alter table tb1_eng1 add partition (partition p4
 DATA DIRECTORY = '/data0/mysql/mysql-5.1-clone/mysql-test/var/master-data/tmpdata'
 INDEX DIRECTORY = '/data0/mysql/mysql-5.1-clone/mysql-test/var/master-data/tmpindex');

Now the content of the directories:

hhunger@hh-nb:/data0/mysql/mysql-5.1-clone/mysql-test/var/master-data> ls -l tmp*
tmpdata:
insgesamt 0

tmpindex:
insgesamt 0
hhunger@hh-nb:/data0/mysql/mysql-5.1-clone/mysql-test/var/master-data> ls systest1
db.opt        tb1_eng1#P#p1.MYD  tb1_eng1#P#p2.MYI
tb1_eng1.frm  tb1_eng1#P#p1.MYI  tb1_eng1#P#p4.MYD
tb1_eng1.par  tb1_eng1#P#p2.MYD  tb1_eng1#P#p4.MYI

How to repeat:
 perl mysql-test-run.pl --suite=funcs_1 myisam_err_dir
[18 Jul 2006 14:51] Mikael Ronström
This works with latest 5.1 tree, will push a test case in conjunction with other bug fix