1let $DATA_PATH=; 2let $INDEX_PATH=; 3--source include/have_partition.inc 4 5--echo # Additional tests for WL#5217 by QA, testplan 1.1 6 7let $TABLENAME= t1; 8--source suite/parts/inc/partition-dml_cr_tab.inc 9--source suite/parts/inc/partition-dml_ins_tab.inc 10 11--enable_connect_log 12 13CREATE USER test_user_1 IDENTIFIED BY 'testpw'; 14CREATE USER test_user_2 IDENTIFIED BY 'testpw'; 15GRANT ALL PRIVILEGES ON test.* TO test_user_1; 16GRANT ALL PRIVILEGES ON test.* TO test_user_2; 17 18connect (session1, localhost, test_user_1,'testpw',test); 19--sorted_result 20SELECT * FROM t1 PARTITION (`p0-29`); 21--echo send 22send 23UPDATE t1 PARTITION (`p0-29`) SET b='p0-29-upd-1' WHERE a BETWEEN 0 AND 9; 24 25connect (session2, localhost, test_user_2,'testpw',test); 26let $wait_condition= SELECT count(*)= 4 FROM t1 WHERE b ='p0-29-upd-1'; 27--source include/wait_condition.inc 28--sorted_result 29SELECT * FROM t1 PARTITION (`p30-299`); 30UPDATE t1 PARTITION (`p30-299`) SET b='p30-299-upd' WHERE a BETWEEN 30 AND 39; 31--sorted_result 32SELECT * FROM t1 PARTITION (`p30-299`); 33--sorted_result 34SELECT * FROM t1 PARTITION (`p300-2999`); 35UPDATE t1 PARTITION (`p300-2999`) SET b='p300-2999-upd' WHERE a BETWEEN 300 AND 309; 36--sorted_result 37SELECT * FROM t1 PARTITION (`p300-2999`); 38--sorted_result 39SELECT * FROM t1 PARTITION (`p3000-299999`); 40UPDATE t1 PARTITION (`p3000-299999`) SET b='p3000-299999-upd' WHERE a BETWEEN 3000 AND 3009; 41--sorted_result 42SELECT * FROM t1 PARTITION (`p3000-299999`); 43UPDATE t1 PARTITION (`p0-29`) SET b='p0-29-upd-2' WHERE a BETWEEN 0 AND 9; 44--sorted_result 45SELECT * FROM t1 PARTITION (`p0-29`); 46UPDATE t1 PARTITION (subp3) SET b='subp3-upd'; 47UPDATE t1 PARTITION (subp4) SET b='subp4-upd'; 48UPDATE t1 PARTITION (subp5) SET b='subp5-upd'; 49--sorted_result 50SELECT * FROM t1 PARTITION (subp3); 51--sorted_result 52SELECT * FROM t1 PARTITION (subp4); 53--sorted_result 54SELECT * FROM t1 PARTITION (subp5); 55SELECT * FROM t1 PARTITION (subp4,subp5,subp3) order by b,a; 56 57connection session1; 58--echo reap 59reap; 60--sorted_result 61SELECT * FROM t1 PARTITION (`p0-29`); 62 63connection session2; 64--sorted_result 65SELECT * FROM t1 PARTITION (`p0-29`); 66SELECT 67(SELECT count(*) FROM t1 PARTITION (pneg,`p0-29`,`p30-299`,`p300-2999`,`p3000-299999`)) = 68(SELECT count(*) FROM t1) as `MUST BE TRUE (1)` ; 69 70# 2) empty (sub)partitions 71let $TABLENAME= t2; 72--source suite/parts/inc/partition-dml_cr_tab.inc 73 74SELECT * FROM t2 PARTITION (`p30-299`); 75UPDATE t2 PARTITION (`p30-299`) SET b='p30-299-upd' WHERE a BETWEEN 30 AND 39; 76DELETE FROM t2 PARTITION (`p30-299`) WHERE a BETWEEN 30 AND 39; 77SELECT * FROM t2 PARTITION (`p300-2999`); 78UPDATE t2 PARTITION (`p300-2999`) SET b='p300-2999-upd' WHERE a BETWEEN 300 AND 309; 79DELETE FROM t2 PARTITION (`p300-2999`) WHERE a BETWEEN 300 AND 309; 80SELECT * FROM t2 PARTITION (`p3000-299999`); 81UPDATE t2 PARTITION (`p3000-299999`) SET b='p3000-299999-upd' WHERE a BETWEEN 3000 AND 3009; 82DELETE FROM t2 PARTITION (`p3000-299999`) WHERE a BETWEEN 3000 AND 3009; 83SELECT * FROM t2 PARTITION (`p0-29`); 84UPDATE t2 PARTITION (`p0-29`) SET b='p0-29-upd-2' WHERE a BETWEEN 0 AND 9; 85DELETE FROM t2 PARTITION (`p0-29`) WHERE a BETWEEN 0 AND 9; 86UPDATE t2 PARTITION (subp3) SET b='subp3-upd'; 87DELETE FROM t2 PARTITION (subp3); 88UPDATE t2 PARTITION (subp4) SET b='subp4-upd'; 89DELETE FROM t2 PARTITION (subp4); 90UPDATE t2 PARTITION (subp5) SET b='subp5-upd'; 91DELETE FROM t2 PARTITION (subp5); 92UPDATE t2 PARTITION (subp4,subp5,subp3) SET b='subp-upd'; 93DELETE FROM t2 PARTITION (subp4,subp5,subp3); 94SELECT * FROM t2 PARTITION (subp3); 95SELECT * FROM t2 PARTITION (subp4); 96SELECT * FROM t2 PARTITION (subp5); 97 98disconnect session1; 99disconnect session2; 100connection default; 101DROP TABLE t1, t2; 102DROP USER test_user_1; 103DROP USER test_user_2; 104 105