mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
d0baba6114
Bug #20902 Alter table invalid schema version with statement-based binlogging (latter caused by the above)
630 lines
18 KiB
Text
Executable file
630 lines
18 KiB
Text
Executable file
##############################################################
|
|
# Author: JBM
|
|
# Date: 2006-01-12
|
|
# Purpose: To test using ndb memory and disk tables together.
|
|
##############################################################
|
|
|
|
##############################################################
|
|
# Author: Nikolay
|
|
# Date: 2006-05-12
|
|
# Purpose: To test using ndb memory and disk tables together.
|
|
#
|
|
# Select from disk into memory table
|
|
# Select from disk into memory table
|
|
# Create test that loads data, use mysql dump to dump data, drop table,
|
|
# create table and load from mysql dump.
|
|
# Use group by asc and dec; Use having; Use order by
|
|
# ALTER Tests (Meta data testing):
|
|
# ALTER from InnoDB to Cluster Disk Data
|
|
# ALTER from MyISAM to Cluster Disk Data
|
|
# ALTER from Cluster Disk Data to InnoDB
|
|
# ALTER from Cluster Disk Data to MyISAM
|
|
# ALTER DD Tables and add columns
|
|
# ALTER DD Tables and add Indexes
|
|
# ALTER DD Tables and drop columns
|
|
#
|
|
##############################################################
|
|
|
|
-- source include/have_ndb.inc
|
|
-- source include/not_embedded.inc
|
|
|
|
--disable_warnings
|
|
DROP TABLE IF EXISTS test.t1;
|
|
DROP TABLE IF EXISTS test.t2;
|
|
--enable_warnings
|
|
|
|
############ Test Setup Section #############
|
|
-- echo **** Test Setup Section ****
|
|
|
|
CREATE LOGFILE GROUP log_group1
|
|
ADD UNDOFILE './log_group1/undofile.dat'
|
|
INITIAL_SIZE 16M
|
|
UNDO_BUFFER_SIZE = 1M
|
|
ENGINE=NDB;
|
|
|
|
CREATE TABLESPACE table_space1
|
|
ADD DATAFILE './table_space1/datafile.dat'
|
|
USE LOGFILE GROUP log_group1
|
|
INITIAL_SIZE 12M
|
|
ENGINE NDB;
|
|
|
|
|
|
CREATE TABLE test.t1
|
|
(pk1 INT NOT NULL PRIMARY KEY, b INT NOT NULL, c INT NOT NULL)
|
|
TABLESPACE table_space1 STORAGE DISK
|
|
ENGINE=NDB;
|
|
|
|
CREATE TABLE test.t2
|
|
(pk2 INT NOT NULL PRIMARY KEY, b2 INT NOT NULL, c2 INT NOT NULL)
|
|
ENGINE=NDB;
|
|
|
|
--echo
|
|
##################### Data load for first test ####################
|
|
--echo **** Data load for first test ****
|
|
|
|
INSERT INTO test.t1 VALUES
|
|
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
|
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10),
|
|
(11,11,11),(12,12,12),(13,13,13),(14,14,14),(15,15,15),
|
|
(16,16,16),(17,17,17),(18,18,18),(19,19,19),(20,20,20),
|
|
(21,21,21),(22,22,22),(23,23,23),(24,24,24),(25,25,25),
|
|
(26,26,26),(27,27,27),(28,28,28),(29,29,29),(30,30,30),
|
|
(31,31,31),(32,32,32),(33,33,33),(34,34,34),(35,35,35),
|
|
(36,36,36),(37,37,37),(38,38,38),(39,39,39),(40,40,40),
|
|
(41,41,41),(42,42,42),(43,43,43),(44,44,44),(45,45,45),
|
|
(46,46,46),(47,47,47),(48,48,48),(49,49,49),(50,50,50),
|
|
(51,51,51),(52,52,52),(53,53,53),(54,54,54),(55,55,55),
|
|
(56,56,56),(57,57,57),(58,58,58),(59,59,59),(60,60,60),
|
|
(61,61,61),(62,62,62),(63,63,63),(64,64,64),(65,65,65),
|
|
(66,66,66),(67,67,67),(68,68,68),(69,69,69),(70,70,70),
|
|
(71,71,71),(72,72,72),(73,73,73),(74,74,74),(75,75,75);
|
|
|
|
|
|
INSERT INTO test.t2 VALUES
|
|
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
|
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10),
|
|
(11,11,11),(12,12,12),(13,13,13),(14,14,14),(15,15,15),
|
|
(16,16,16),(17,17,17),(18,18,18),(19,19,19),(20,20,20),
|
|
(21,21,21),(22,22,22),(23,23,23),(24,24,24),(25,25,25),
|
|
(26,26,26),(27,27,27),(28,28,28),(29,29,29),(30,30,30),
|
|
(31,31,31),(32,32,32),(33,33,33),(34,34,34),(35,35,35),
|
|
(36,36,36),(37,37,37),(38,38,38),(39,39,39),(40,40,40),
|
|
(41,41,41),(42,42,42),(43,43,43),(44,44,44),(45,45,45),
|
|
(46,46,46),(47,47,47),(48,48,48),(49,49,49),(50,50,50),
|
|
(51,51,51),(52,52,52),(53,53,53),(54,54,54),(55,55,55),
|
|
(56,56,56),(57,57,57),(58,58,58),(59,59,59),(60,60,60),
|
|
(61,61,61),(62,62,62),(63,63,63),(64,64,64),(65,65,65),
|
|
(66,66,66),(67,67,67),(68,68,68),(69,69,69),(70,70,70),
|
|
(71,71,71),(72,72,72),(73,73,73),(74,74,74),(75,75,75);
|
|
|
|
--echo
|
|
##################### Test 1 Section Begins ###############
|
|
--echo *** Test 1 Section Begins ***
|
|
SELECT COUNT(*) FROM test.t2 LEFT JOIN test.t1 ON pk2=pk1 WHERE b2 IN (4);
|
|
SELECT * FROM test.t2 LEFT JOIN test.t1 ON pk2=pk1 WHERE b2 IN (4);
|
|
SELECT COUNT(*) FROM test.t1 LEFT JOIN test.t2 ON pk1=pk2 WHERE b IN (4);
|
|
SELECT COUNT(*) FROM test.t1 LEFT JOIN test.t2 ON b=b2 WHERE pk1 IN (75);
|
|
SELECT b, c FROM test.t1 LEFT JOIN test.t2 ON pk1=pk2 ORDER BY b;
|
|
--echo
|
|
####################### Test 1 Section End ################
|
|
|
|
##################### Setup for test 2 ####################
|
|
--echo *** Setup for test 2 ****
|
|
DELETE FROM test.t1;
|
|
INSERT INTO test.t1 VALUES
|
|
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
|
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10),
|
|
(11,11,11),(12,12,12),(13,13,13),(14,14,14),(15,15,15),
|
|
(16,16,16),(17,17,17),(18,18,18),(19,19,19),(20,20,20),
|
|
(21,21,21),(22,22,22),(23,23,23),(24,24,24),(25,25,25),
|
|
(26,26,26),(27,27,27),(28,28,28),(29,29,29),(30,30,30),
|
|
(31,31,31),(32,32,32),(33,33,33),(34,34,34),(35,35,35),
|
|
(36,36,36),(37,37,37),(38,38,38),(39,39,39),(40,40,40),
|
|
(41,41,41),(42,42,42),(43,43,43),(44,44,44),(45,45,45);
|
|
--echo
|
|
############################# Test Section 2 ###############
|
|
--echo **** Test Section 2 ****
|
|
SELECT b, c FROM test.t1 LEFT JOIN test.t2 ON pk1=pk2 ORDER BY b;
|
|
SELECT COUNT(*) FROM test.t1 LEFT JOIN test.t2 ON b=b2;
|
|
SELECT COUNT(*) FROM test.t1 RIGHT JOIN test.t2 ON b=b2;
|
|
SHOW CREATE TABLE test.t2;
|
|
SHOW CREATE TABLE test.t1;
|
|
ALTER TABLE test.t2 TABLESPACE table_space1 STORAGE DISK
|
|
ENGINE=NDB;
|
|
SHOW CREATE TABLE test.t2;
|
|
ALTER TABLE test.t1 ENGINE=NDBCLUSTER;
|
|
SHOW CREATE TABLE test.t1;
|
|
--echo
|
|
######################### End Test Section 2 #################
|
|
DROP TABLE test.t1;
|
|
DROP TABLE test.t2;
|
|
##################### Setup for Test Section 3 ###############
|
|
--echo *** Setup for Test Section 3 ***
|
|
CREATE TABLE test.t1 (
|
|
usr_id INT unsigned NOT NULL,
|
|
uniq_id INT unsigned NOT NULL AUTO_INCREMENT,
|
|
start_num INT unsigned NOT NULL DEFAULT 1,
|
|
increment INT unsigned NOT NULL DEFAULT 1,
|
|
PRIMARY KEY (uniq_id),
|
|
INDEX usr_uniq_idx (usr_id, uniq_id),
|
|
INDEX uniq_usr_idx (uniq_id, usr_id))
|
|
TABLESPACE table_space1 STORAGE DISK
|
|
ENGINE=NDB;
|
|
|
|
|
|
CREATE TABLE test.t2 (
|
|
id INT unsigned NOT NULL DEFAULT 0,
|
|
usr2_id INT unsigned NOT NULL DEFAULT 0,
|
|
max INT unsigned NOT NULL DEFAULT 0,
|
|
c_amount INT unsigned NOT NULL DEFAULT 0,
|
|
d_max INT unsigned NOT NULL DEFAULT 0,
|
|
d_num INT unsigned NOT NULL DEFAULT 0,
|
|
orig_time INT unsigned NOT NULL DEFAULT 0,
|
|
c_time INT unsigned NOT NULL DEFAULT 0,
|
|
active ENUM ("no","yes") NOT NULL,
|
|
PRIMARY KEY (id,usr2_id),
|
|
INDEX id_idx (id),
|
|
INDEX usr2_idx (usr2_id))
|
|
ENGINE=NDB;
|
|
|
|
INSERT INTO test.t1 VALUES (3,NULL,0,50),(3,NULL,0,200),(3,NULL,0,25),(3,NULL,0,84676),(3,NULL,0,235),(3,NULL,0,10),(3,NULL,0,3098),(3,NULL,0,2947),(3,NULL,0,8987),(3,NULL,0,8347654),(3,NULL,0,20398),(3,NULL,0,8976),(3,NULL,0,500),(3,NULL,0,198);
|
|
|
|
--echo
|
|
###################### Test Section 3 ######################
|
|
--echo **** Test Section 3 ****
|
|
SELECT test.t1.usr_id,test.t1.uniq_id,test.t1.increment,
|
|
test.t2.usr2_id,test.t2.c_amount,test.t2.max
|
|
FROM test.t1
|
|
LEFT JOIN test.t2 ON test.t2.id = test.t1.uniq_id
|
|
WHERE test.t1.uniq_id = 4
|
|
ORDER BY test.t2.c_amount;
|
|
|
|
INSERT INTO test.t2 VALUES (2,3,3000,6000,0,0,746584,837484,'yes');
|
|
INSERT INTO test.t2 VALUES (4,3,3000,6000,0,0,746584,837484,'yes');
|
|
INSERT INTO test.t2 VALUES (7,3,1000,2000,0,0,746294,937484,'yes');
|
|
|
|
SELECT test.t1.usr_id,test.t1.uniq_id,test.t1.increment,
|
|
test.t2.usr2_id,test.t2.c_amount,test.t2.max
|
|
FROM test.t1
|
|
LEFT JOIN test.t2 ON test.t2.id = test.t1.uniq_id
|
|
WHERE test.t1.uniq_id = 4
|
|
ORDER BY test.t2.c_amount;
|
|
--echo
|
|
####################### End Section 3 #########################
|
|
DROP TABLE test.t1;
|
|
DROP TABLE test.t2;
|
|
ALTER TABLESPACE table_space1
|
|
DROP DATAFILE './table_space1/datafile.dat'
|
|
ENGINE = NDB;
|
|
|
|
DROP TABLESPACE table_space1
|
|
ENGINE = NDB;
|
|
|
|
DROP LOGFILE GROUP log_group1
|
|
ENGINE =NDB;
|
|
|
|
####################### Section 4 #########################
|
|
|
|
CREATE LOGFILE GROUP lg
|
|
ADD UNDOFILE './lg_group/undofile.dat'
|
|
INITIAL_SIZE 16M
|
|
UNDO_BUFFER_SIZE = 1M
|
|
ENGINE=NDB;
|
|
|
|
CREATE TABLESPACE ts1
|
|
ADD DATAFILE './table_space1/datafile.dat'
|
|
USE LOGFILE GROUP lg
|
|
INITIAL_SIZE 12M
|
|
ENGINE NDB;
|
|
|
|
CREATE TABLESPACE ts2
|
|
ADD DATAFILE './table_space2/datafile.dat'
|
|
USE LOGFILE GROUP lg
|
|
INITIAL_SIZE 12M
|
|
ENGINE NDB;
|
|
|
|
|
|
### Select from disk into memory table ###
|
|
|
|
CREATE TABLE t1 (a int NOT NULL PRIMARY KEY, b int)
|
|
TABLESPACE ts1 STORAGE DISK ENGINE=NDB;
|
|
CREATE TABLE t2 (a int NOT NULL PRIMARY KEY, b int)
|
|
ENGINE=NDB;
|
|
|
|
SHOW CREATE TABLE t1;
|
|
SHOW CREATE TABLE t2;
|
|
|
|
INSERT INTO t1 VALUES (1,1);
|
|
INSERT INTO t1 VALUES (2,2);
|
|
SELECT * FROM t1 order by a;
|
|
INSERT INTO t2(a,b) SELECT * FROM t1;
|
|
SELECT * FROM t2 order by a;
|
|
|
|
### Select from disk into memory table ###
|
|
|
|
TRUNCATE t1;
|
|
TRUNCATE t2;
|
|
INSERT INTO t2 VALUES (3,3);
|
|
INSERT INTO t2 VALUES (4,4);
|
|
INSERT INTO t1(a,b) SELECT * FROM t2;
|
|
SELECT * FROM t1 order by a;
|
|
|
|
DROP TABLE t1, t2;
|
|
|
|
ALTER TABLESPACE ts1
|
|
DROP DATAFILE './table_space1/datafile.dat'
|
|
ENGINE NDB;
|
|
|
|
DROP TABLESPACE ts1 ENGINE NDB;
|
|
|
|
ALTER TABLESPACE ts2
|
|
DROP DATAFILE './table_space2/datafile.dat'
|
|
ENGINE NDB;
|
|
|
|
DROP TABLESPACE ts2 ENGINE NDB;
|
|
|
|
DROP LOGFILE GROUP lg
|
|
ENGINE=NDB;
|
|
|
|
#### Create test that loads data, use mysql dump to dump data, drop table,
|
|
#### create table and load from mysql dump.
|
|
|
|
# DROP DATABASE IF EXISTS test;
|
|
|
|
CREATE LOGFILE GROUP lg
|
|
ADD UNDOFILE './undofile.dat'
|
|
INITIAL_SIZE 16M
|
|
UNDO_BUFFER_SIZE = 1M
|
|
ENGINE=NDB;
|
|
|
|
CREATE TABLESPACE ts
|
|
ADD DATAFILE './datafile.dat'
|
|
USE LOGFILE GROUP lg
|
|
INITIAL_SIZE 12M
|
|
ENGINE NDB;
|
|
|
|
# CREATE DATABASE test;
|
|
|
|
CREATE TABLE test.t (
|
|
a smallint NOT NULL,
|
|
b int NOT NULL,
|
|
c bigint NOT NULL,
|
|
d char(10),
|
|
e TEXT,
|
|
f VARCHAR(255),
|
|
PRIMARY KEY(a)
|
|
) TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
|
|
ALTER TABLE test.t ADD INDEX (d), ADD INDEX (f);
|
|
SHOW CREATE TABLE test.t;
|
|
|
|
# insert records into tables
|
|
|
|
let $1=100;
|
|
disable_query_log;
|
|
while ($1)
|
|
{
|
|
eval insert into test.t values($1, $1+1, $1+2, "aaa$1", "bbb$1", "ccccc$1");
|
|
dec $1;
|
|
}
|
|
enable_query_log;
|
|
|
|
SELECT * FROM test.t order by a;
|
|
--exec $MYSQL_DUMP --skip-comments --databases test > $MYSQLTEST_VARDIR/tmp/t_dump.sql
|
|
DROP TABLE test.t;
|
|
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/t_dump.sql
|
|
USE test;
|
|
show tables;
|
|
|
|
SELECT * FROM test.t order by a;
|
|
|
|
DROP TABLE test.t;
|
|
# DROP DATABASE test;
|
|
|
|
ALTER TABLESPACE ts
|
|
DROP DATAFILE './datafile.dat'
|
|
ENGINE NDB;
|
|
|
|
DROP TABLESPACE ts ENGINE NDB;
|
|
|
|
DROP LOGFILE GROUP lg
|
|
ENGINE=NDB;
|
|
|
|
#### BUG 18856 test case comented out
|
|
##### Use "SELECT * INTO OUTFILE" to dump data and "LOAD DATA INFILE" to load ##### data back to the data file.
|
|
|
|
# CREATE LOGFILE GROUP lg
|
|
# ADD UNDOFILE './undofile.dat'
|
|
# INITIAL_SIZE 16M
|
|
# UNDO_BUFFER_SIZE = 1M
|
|
# ENGINE=NDB;
|
|
|
|
# CREATE TABLESPACE ts
|
|
# ADD DATAFILE './datafile.dat'
|
|
# USE LOGFILE GROUP lg
|
|
# INITIAL_SIZE 12M
|
|
# ENGINE NDB;
|
|
|
|
#CREATE DATABASE test;
|
|
|
|
#CREATE TABLE test.t (
|
|
# a smallint NOT NULL,
|
|
# b int NOT NULL,
|
|
# c bigint NOT NULL,
|
|
# d char(10),
|
|
# e TEXT,
|
|
# f VARCHAR(255),
|
|
# PRIMARY KEY(a)
|
|
#) TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
|
|
# ALTER TABLE test.t ADD INDEX (d), ADD INDEX (f);
|
|
# SHOW CREATE TABLE test.t;
|
|
|
|
# insert records into tables
|
|
|
|
# let $1=100;
|
|
# disable_query_log;
|
|
# while ($1)
|
|
# {
|
|
# eval insert into test.t values($1, $1+1, $1+2, "aaa$1", "bbb$1", "ccccc$1");
|
|
# dec $1;
|
|
# }
|
|
# enable_query_log;
|
|
|
|
# SELECT * FROM test.t order by a;
|
|
|
|
# SELECT * INTO OUTFILE 't_backup' FROM test.t;
|
|
# TRUNCATE test.t;
|
|
|
|
#'TRUNCATE test.t' failed: 1205: Lock wait timeout exceeded; try restarting #transaction. TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
|
|
# SELECT count(*) FROM test.t;
|
|
# LOAD DATA INFILE 't_backup' INTO TABLE test.t;
|
|
|
|
# SELECT * FROM test.t order by a;
|
|
|
|
# DROP TABLE test.t;
|
|
# DROP DATABASE test;
|
|
|
|
# ALTER TABLESPACE ts
|
|
# DROP DATAFILE './datafile.dat'
|
|
# ENGINE NDB;
|
|
# DROP TABLESPACE ts ENGINE NDB;
|
|
# DROP LOGFILE GROUP lg
|
|
# ENGINE=NDB;
|
|
|
|
#### Use group by asc and dec; Use having; Use order by. ####
|
|
|
|
# DROP DATABASE IF EXISTS test;
|
|
DROP table IF EXISTS test.t1;
|
|
DROP table IF EXISTS test.t2;
|
|
|
|
CREATE LOGFILE GROUP lg
|
|
ADD UNDOFILE './lg_group/undofile.dat'
|
|
INITIAL_SIZE 16M
|
|
UNDO_BUFFER_SIZE = 1M
|
|
ENGINE=NDB;
|
|
|
|
CREATE TABLESPACE ts1
|
|
ADD DATAFILE './table_space1/datafile.dat'
|
|
USE LOGFILE GROUP lg
|
|
INITIAL_SIZE 12M
|
|
ENGINE NDB;
|
|
|
|
CREATE TABLESPACE ts2
|
|
ADD DATAFILE './table_space2/datafile.dat'
|
|
USE LOGFILE GROUP lg
|
|
INITIAL_SIZE 12M
|
|
ENGINE NDB;
|
|
|
|
# CREATE DATABASE test;
|
|
|
|
CREATE TABLE test.t1 (
|
|
a1 smallint NOT NULL,
|
|
a2 int NOT NULL,
|
|
a3 bigint NOT NULL,
|
|
a4 char(10),
|
|
a5 decimal(5,1),
|
|
a6 time,
|
|
a7 date,
|
|
a8 datetime,
|
|
a9 VARCHAR(255),
|
|
a10 blob,
|
|
PRIMARY KEY(a1)
|
|
) TABLESPACE ts1 STORAGE DISK ENGINE=NDB;
|
|
|
|
ALTER TABLE test.t1 ADD INDEX (a2), ADD INDEX (a3), ADD INDEX (a8);
|
|
SHOW CREATE TABLE test.t1;
|
|
|
|
CREATE TABLE test.t2 (
|
|
b1 smallint NOT NULL,
|
|
b2 int NOT NULL,
|
|
b3 bigint NOT NULL,
|
|
b4 char(10),
|
|
b5 decimal(5,1),
|
|
b6 time,
|
|
b7 date,
|
|
b8 datetime,
|
|
b9 VARCHAR(255),
|
|
b10 blob,
|
|
PRIMARY KEY(b1)
|
|
) ENGINE=NDB;
|
|
|
|
ALTER TABLE test.t2 ADD INDEX (b2), ADD INDEX (b3), ADD INDEX (b8);
|
|
SHOW CREATE TABLE test.t2;
|
|
|
|
let $1=20;
|
|
disable_query_log;
|
|
while ($1)
|
|
{
|
|
eval insert into test.t1 values($1, $1+1, $1+2000000000, "aaa$1", 34.2, '4:3:2', '2006-1-1', '1971-5-28 16:55:03', "bbbbbbbbbbbbb$1", "binary data");
|
|
eval insert into test.t2 values($1+2, $1+3, $1+3000000000, "aaa$1", 35.2, '4:3:2', '2006-1-1', '1971-5-28 16:55:03', "bbbbbbbbbbbbb$1", "binary data");
|
|
dec $1;
|
|
}
|
|
enable_query_log;
|
|
|
|
SELECT * FROM test.t1 order by a1;
|
|
SELECT * FROM test.t2 order by b1;
|
|
SELECT COUNT(a1), a1, COUNT(a1)*a1 FROM test.t1 GROUP BY a1;
|
|
SELECT COUNT(a2), (a2+1), COUNT(a2)*(a2+0) FROM test.t1 GROUP BY a2;
|
|
|
|
DROP TABLE test.t1;
|
|
DROP TABLE test.t2;
|
|
|
|
create table test.t1 (a int not null,b char(5), c text) TABLESPACE ts1 STORAGE DISK ENGINE=NDB;
|
|
|
|
insert into test.t1 (a) values (1),(2),(3),(4),(1),(2),(3),(4);
|
|
select distinct a from test.t1 group by b,a having a > 2 order by a desc;
|
|
select distinct a,c from test.t1 group by b,c,a having a > 2 order by a desc;
|
|
select distinct a from test.t1 group by b,a having a > 2 order by a asc;
|
|
select distinct a,c from test.t1 group by b,c,a having a > 2 order by a asc;
|
|
drop table test.t1;
|
|
|
|
create table test.t1 (a char(1), key(a)) TABLESPACE ts1 STORAGE DISK ENGINE=NDB;
|
|
insert into test.t1 values('1'),('1'),('1'),('2'),('2'),('3'),('3');
|
|
select * from test.t1 where a >= '1' order by a;
|
|
select distinct a from test.t1 order by a desc;
|
|
select distinct a from test.t1 where a >= '1' order by a desc;
|
|
select distinct a from test.t1 where a >= '1' order by a asc;
|
|
drop table test.t1;
|
|
|
|
CREATE TABLE test.t1 (email varchar(50), infoID BIGINT, dateentered DATETIME) TABLESPACE ts1 STORAGE DISK ENGINE=NDB;
|
|
CREATE TABLE test.t2 (infoID BIGINT, shipcode varchar(10)) ENGINE=NDB;
|
|
|
|
INSERT INTO test.t1 (email, infoID, dateentered) VALUES
|
|
('test1@testdomain.com', 1, '2002-07-30 22:56:38'),
|
|
('test1@testdomain.com', 1, '2002-07-27 22:58:16'),
|
|
('test2@testdomain.com', 1, '2002-06-19 15:22:19'),
|
|
('test2@testdomain.com', 2, '2002-06-18 14:23:47'),
|
|
('test3@testdomain.com', 1, '2002-05-19 22:17:32');
|
|
|
|
INSERT INTO test.t2(infoID, shipcode) VALUES
|
|
(1, 'Z001'),
|
|
(2, 'R002');
|
|
|
|
SELECT DISTINCTROW email, shipcode FROM test.t1, test.t2 WHERE t1.infoID=t2.infoID order by email, shipcode;
|
|
SELECT DISTINCTROW email FROM test.t1 ORDER BY dateentered DESC;
|
|
SELECT DISTINCTROW email, shipcode FROM test.t1, test.t2 WHERE test.t1.infoID=test.t2.infoID ORDER BY dateentered DESC;
|
|
drop table test.t1,test.t2;
|
|
|
|
ALTER TABLESPACE ts1
|
|
DROP DATAFILE './table_space1/datafile.dat'
|
|
ENGINE NDB;
|
|
DROP TABLESPACE ts1 ENGINE NDB;
|
|
ALTER TABLESPACE ts2
|
|
DROP DATAFILE './table_space2/datafile.dat'
|
|
ENGINE NDB;
|
|
DROP TABLESPACE ts2 ENGINE NDB;
|
|
DROP LOGFILE GROUP lg
|
|
ENGINE=NDB;
|
|
####################################################################
|
|
|
|
|
|
#### Customer posted order by test case
|
|
|
|
DROP TABLE IF EXISTS test.t;
|
|
create table test.t (f1 varchar(50) primary key, f2 text,f3 int) engine=NDB;
|
|
insert into test.t (f1,f2,f3)VALUES("111111","aaaaaa",1);
|
|
insert into test.t (f1,f2,f3)VALUES("222222","bbbbbb",2);
|
|
select * from test.t order by f1;
|
|
select f1,f2 from test.t order by f2;
|
|
select f2 from test.t order by f2;
|
|
select f1,f2 from test.t order by f1;
|
|
drop table test.t;
|
|
|
|
################## ALTER Tests (Meta data testing) ####################
|
|
|
|
CREATE LOGFILE GROUP lg
|
|
ADD UNDOFILE './lg_group/undofile.dat'
|
|
INITIAL_SIZE 16M
|
|
UNDO_BUFFER_SIZE = 1M
|
|
ENGINE=NDB;
|
|
|
|
CREATE TABLESPACE ts
|
|
ADD DATAFILE './table_space/datafile.dat'
|
|
USE LOGFILE GROUP lg
|
|
INITIAL_SIZE 12M
|
|
ENGINE NDB;
|
|
|
|
#### Try to ALTER from InnoDB to Cluster Disk Data
|
|
|
|
CREATE TABLE test.t1 (a1 INT, a2 BLOB, a3 TEXT) ENGINE=InnoDB;
|
|
SHOW CREATE TABLE test.t1;
|
|
ALTER TABLE test.t1 TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
SHOW CREATE TABLE test.t1;
|
|
DROP TABLE test.t1;
|
|
|
|
#### Try to ALTER from MyISAM to Cluster Disk Data
|
|
|
|
CREATE TABLE test.t1 (a1 INT, a2 BLOB, a3 TEXT) ENGINE=MyISAM;
|
|
SHOW CREATE TABLE test.t1;
|
|
ALTER TABLE test.t1 TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
SHOW CREATE TABLE test.t1;
|
|
DROP TABLE test.t1;
|
|
|
|
#### Try to ALTER from Cluster Disk Data to InnoDB
|
|
|
|
CREATE TABLE test.t1 (a1 INT PRIMARY KEY, a2 BLOB, a3 TEXT) TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
SHOW CREATE TABLE test.t1;
|
|
ALTER TABLE test.t1 ENGINE=InnoDB;
|
|
SHOW CREATE TABLE test.t1;
|
|
DROP TABLE test.t1;
|
|
|
|
#### Try to ALTER from Cluster Disk Data to MyISAM
|
|
|
|
CREATE TABLE test.t1 (a1 INT, a2 BLOB, a3 TEXT) TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
SHOW CREATE TABLE test.t1;
|
|
ALTER TABLE test.t1 ENGINE=MyISAM;
|
|
SHOW CREATE TABLE test.t1;
|
|
DROP TABLE test.t1;
|
|
|
|
#### Try to ALTER DD Tables and add columns
|
|
|
|
CREATE TABLE test.t1 (a1 INT PRIMARY KEY) TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
|
|
ALTER TABLE test.t1 ADD a2 FLOAT, ADD a3 DOUBLE, ADD a4 BIT, ADD a5 TINYINT, ADD a6 BIGINT, ADD a7 DATE, ADD a8 TIME, ADD a9 DATETIME, ADD a10 TINYTEXT, ADD a11 MEDIUMTEXT, ADD a12 LONGTEXT, ADD a13 TEXT, ADD a14 BLOB;
|
|
|
|
SHOW CREATE TABLE test.t1;
|
|
|
|
#### Try to ALTER DD Tables and add Indexes
|
|
|
|
ALTER TABLE test.t1 ADD INDEX (a2), ADD INDEX (a3), ADD INDEX (a5), ADD INDEX (a6),
|
|
ADD INDEX (a7), ADD INDEX (a8);
|
|
|
|
SHOW CREATE TABLE test.t1;
|
|
|
|
DROP TABLE test.t1;
|
|
|
|
#### Try to ALTER DD Tables and drop columns
|
|
|
|
CREATE TABLE test.t1 (a1 INT PRIMARY KEY) TABLESPACE ts STORAGE DISK ENGINE=NDB;
|
|
|
|
ALTER TABLE test.t1 ADD a2 FLOAT, ADD a3 DOUBLE, ADD a4 BIT, ADD a5 TINYINT, ADD a6 BIGINT, ADD a7 DATE, ADD a8 TIME, ADD a9 DATETIME, ADD a10 TINYTEXT, ADD a11 MEDIUMTEXT, ADD a12 LONGTEXT, ADD a13 TEXT, ADD a14 BLOB;
|
|
|
|
SHOW CREATE TABLE test.t1;
|
|
|
|
ALTER TABLE test.t1 DROP a14;
|
|
ALTER TABLE test.t1 DROP a13;
|
|
ALTER TABLE test.t1 DROP a12;
|
|
ALTER TABLE test.t1 DROP a11;
|
|
ALTER TABLE test.t1 DROP a10;
|
|
ALTER TABLE test.t1 DROP a9;
|
|
ALTER TABLE test.t1 DROP a8;
|
|
ALTER TABLE test.t1 DROP a7;
|
|
ALTER TABLE test.t1 DROP a6;
|
|
ALTER TABLE test.t1 DROP PRIMARY KEY;
|
|
|
|
SHOW CREATE TABLE test.t1;
|
|
|
|
DROP TABLE test.t1;
|
|
|
|
ALTER TABLESPACE ts
|
|
DROP DATAFILE './table_space/datafile.dat'
|
|
ENGINE NDB;
|
|
DROP TABLESPACE ts ENGINE NDB;
|
|
DROP LOGFILE GROUP lg
|
|
ENGINE=NDB;
|
|
|
|
####################### End section 4 #########################
|
|
#End 5.1 test case
|
|
|