1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

MCOL-4678 MTR tests fail because of /tmp and ./ with LOAD DATA

Also fixing the problem with missing UDFs for the affected tests.
(see MCOL-4659 for details):
When mtr runs without --remote, the UDFs must be installed inside
the test using CREATE FUNCTION.

Note, there are still more tests left with missing UDFs. They'll be
fixed separately.
This commit is contained in:
Alexander Barkov
2021-04-16 08:12:53 +04:00
parent c955ba34cd
commit ccd6b83be5
39 changed files with 410 additions and 120 deletions

View File

@ -4,6 +4,8 @@
#
-- source ../include/have_columnstore.inc
let $DATADIR= `SELECT @@datadir`;
--disable_warnings
DROP DATABASE IF EXISTS mcs102_db1;
--enable_warnings
@ -12,9 +14,9 @@ CREATE DATABASE mcs102_db1;
USE mcs102_db1;
# Prepare the csv file
exec rm -f /tmp/mcs102.csv;
exec rm -f $DATADIR/mcs102.csv;
exec cat << EOF > /tmp/mcs102.csv
exec cat << EOF > $DATADIR/mcs102.csv
1,Sprint Break 2014,Jan 04 2014,20
2,Back to Scholl 2014,Jan 09 2014,25
3,Summer 2014,Jun 25 2014,10
@ -28,24 +30,23 @@ CREATE TABLE discounts (
) ENGINE=Columnstore;
# Incorrect date value
--error 1292
LOAD DATA INFILE '/tmp/mcs102.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
--replace_result $DATADIR DATADIR
--error ER_TRUNCATED_WRONG_VALUE
--eval LOAD DATA INFILE '$DATADIR/mcs102.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
# Suspected BUG! Should fail but it is passing.
#--error 1292
#LOAD DATA LOCAL INFILE '/tmp/mcs102.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
#--replace_result $DATADIR DATADIR
#--error ER_TRUNCATED_WRONG_VALUE
#--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs102.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
# Transform date value
LOAD DATA INFILE '/tmp/mcs102.csv' INTO TABLE discounts FIELDS TERMINATED BY ','
(id, title, @expired_date, amount)
SET expired_date = STR_TO_DATE(@expired_date, "%M %d %Y");
LOAD DATA LOCAL INFILE '/tmp/mcs102.csv' INTO TABLE discounts FIELDS TERMINATED BY ','
(id, title, @expired_date, amount)
SET expired_date = STR_TO_DATE(@expired_date, "%M %d %Y");
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs102.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' (id, title, @expired_date, amount) SET expired_date = STR_TO_DATE(@expired_date, "%M %d %Y");
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs102.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' (id, title, @expired_date, amount) SET expired_date = STR_TO_DATE(@expired_date, "%M %d %Y");
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
# Clean up
exec rm -f /tmp/mcs102.csv;
exec rm -f $DATADIR/mcs102.csv;
DROP DATABASE IF EXISTS mcs102_db1;

View File

@ -4,6 +4,8 @@
#
-- source ../include/have_columnstore.inc
let $DATADIR= `SELECT @@datadir`;
--disable_warnings
DROP DATABASE IF EXISTS mcs103_db;
--enable_warnings
@ -12,9 +14,9 @@ CREATE DATABASE mcs103_db;
USE mcs103_db;
# Prepare the csv file
exec rm -f /tmp/mcs103.csv;
exec rm -f $DATADIR/mcs103.csv;
exec cat << EOF > /tmp/mcs103.csv
exec cat << EOF > $DATADIR/mcs103.csv
1,"Sprint Break, San Jose",2014-01-04,20
2,"Back to Scholl, San Jose",2014-01-09,25
3,"Summer, San Jose",2014-06-25,10
@ -29,19 +31,22 @@ CREATE TABLE discounts (
) ENGINE=Columnstore;
# Incorrect date value
--error 1292
LOAD DATA INFILE '/tmp/mcs103.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
--replace_result $DATADIR DATADIR
--error ER_TRUNCATED_WRONG_VALUE
--eval LOAD DATA INFILE '$DATADIR/mcs103.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
#Suspected Bug. The following statement is passing instead of throwing error
#--error 1292
#LOAD DATA LOCAL INFILE '/tmp/mcs103.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
#--error ER_TRUNCATED_WRONG_VALUE
#--eval LOAD DATA LOCAL INFILE '$MTR_SUITE_DIR/../std_data/mcs103.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
# With enclosed by
LOAD DATA INFILE '/tmp/mcs103.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ENCLOSED BY '"';
LOAD DATA LOCAL INFILE '/tmp/mcs103.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ENCLOSED BY '"';
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs103.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ENCLOSED BY '"';
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs103.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ENCLOSED BY '"';
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
# Clean up
exec rm -f /tmp/mcs103.csv;
exec rm -f $DATADIR/mcs103.csv;
DROP DATABASE IF EXISTS mcs103_db;

View File

@ -4,6 +4,8 @@
#
-- source ../include/have_columnstore.inc
let $DATADIR= `SELECT @@datadir`;
--disable_warnings
DROP DATABASE IF EXISTS mcs104_db;
--enable_warnings
@ -12,9 +14,9 @@ CREATE DATABASE mcs104_db;
USE mcs104_db;
# Prepare the csv file
exec rm -f /tmp/mcs104.csv;
exec rm -f $DATADIR/mcs104.csv;
exec cat << EOF > /tmp/mcs104.csv
exec cat << EOF > $DATADIR/mcs104.csv
1,\"Sprint Break - San Jose\",20
2,\"Back to Scholl - San Jose\",25
3,\"Summer - San Jose\",10
@ -28,43 +30,50 @@ CREATE TABLE discounts (
) ENGINE=Columnstore;
# With default escaped by char '\'
LOAD DATA INFILE '/tmp/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
LOAD DATA LOCAL INFILE '/tmp/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
TRUNCATE discounts;
# Prepare the csv file
exec rm -f /tmp/mcs104.csv;
exec rm -f $DATADIR/mcs104.csv;
exec cat << EOF > /tmp/mcs104.csv
exec cat << EOF > $DATADIR/mcs104.csv
1,Sprint Break \, San Jose,20
2,Back to Scholl \, San Jose,25
3,Summer\, San Jose,10
EOF;
LOAD DATA INFILE '/tmp/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ESCAPED BY '\\';
LOAD DATA LOCAL INFILE '/tmp/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ESCAPED BY '\\';
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ESCAPED BY '\\\\'
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ESCAPED BY '\\\\';
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
TRUNCATE discounts;
# Negative - Without escape TERMINATED BY char
exec cat << EOF > /tmp/mcs104.csv
exec cat << EOF > $DATADIR/mcs104.csv
1,Sprint Break \, San Jose,20
2,Back to Scholl \, San Jose,25
3,Summer, San Jose,10
EOF;
--error 1366
LOAD DATA INFILE '/tmp/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ESCAPED BY '\\';
--replace_result $DATADIR DATADIR
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
--eval LOAD DATA INFILE '$DATADIR/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ESCAPED BY '\\\\';
#Suspected Bug. Instead of erroring it succeeds.
##--error 1366
##LOAD DATA LOCAL INFILE '/tmp/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ESCAPED BY '\\';
##--replace_result $DATADIR DATADIR
##--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
##--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs104.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' ESCAPED BY '\\\\';
# Clean up
exec rm -f /tmp/mcs104.csv;
exec rm -f $DATADIR/mcs104.csv;
DROP DATABASE IF EXISTS mcs104_db;

View File

@ -4,6 +4,8 @@
#
-- source ../include/have_columnstore.inc
let $DATADIR= `SELECT @@datadir`;
--disable_warnings
DROP DATABASE IF EXISTS mcs105_db;
--enable_warnings
@ -12,9 +14,9 @@ CREATE DATABASE mcs105_db;
USE mcs105_db;
# Prepare the csv file
exec rm -f /tmp/mcs105.csv;
exec rm -f $DATADIR/mcs105.csv;
exec cat << EOF > /tmp/mcs105.csv
exec cat << EOF > $DATADIR/mcs105.csv
1,Sprint Break - San Jose
2,Back to Scholl - San Jose
3,Summer - San Jose
@ -27,32 +29,41 @@ CREATE TABLE discounts (
) ENGINE=Columnstore;
# With default char '\n'
LOAD DATA INFILE '/tmp/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
LOAD DATA LOCAL INFILE '/tmp/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
TRUNCATE discounts;
# explicit mention the char
LOAD DATA INFILE '/tmp/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
LOAD DATA LOCAL INFILE '/tmp/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' LINES TERMINATED BY '\\n';
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' LINES TERMINATED BY '\\n';
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
TRUNCATE discounts;
exec cat << EOF > /tmp/mcs105.csv
exec cat << EOF > $DATADIR/mcs105.csv
1,Sprint Break - San Jose | 2,Back to Scholl - San Jose | 3,Summer - San Jose | 4,Spring
EOF;
LOAD DATA INFILE '/tmp/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' LINES TERMINATED BY '|';
LOAD DATA LOCAL INFILE '/tmp/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' LINES TERMINATED BY '|';
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' LINES TERMINATED BY '|';
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs105.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' LINES TERMINATED BY '|';
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
TRUNCATE discounts;
# Clean up
exec rm -f /tmp/mcs105.csv;
exec rm -f $DATADIR/mcs105.csv;
DROP DATABASE IF EXISTS mcs105_db;

View File

@ -4,6 +4,8 @@
#
-- source ../include/have_columnstore.inc
let $DATADIR= `SELECT @@datadir`;
--disable_warnings
DROP DATABASE IF EXISTS mcs106_db;
--enable_warnings
@ -12,9 +14,9 @@ CREATE DATABASE mcs106_db;
USE mcs106_db;
# Prepare the csv file
exec rm -f /tmp/mcs106.csv;
exec rm -f $DATADIR/mcs106.csv;
exec cat << EOF > /tmp/mcs106.csv
exec cat << EOF > $DATADIR/mcs106.csv
1,Sprint Break - San Jose,20
2,Back to Scholl - San Jose,25
3,Summer - San Jose,10
@ -28,22 +30,28 @@ CREATE TABLE discounts (
) ENGINE=Columnstore;
# Without ignore rows, default behavior
LOAD DATA INFILE '/tmp/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
LOAD DATA LOCAL INFILE '/tmp/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',';
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
TRUNCATE discounts;
# Ignore 0 rows
LOAD DATA INFILE '/tmp/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE 0 ROWS;
LOAD DATA LOCAL INFILE '/tmp/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE 0 ROWS;
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE 0 ROWS;
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE 0 ROWS;
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
TRUNCATE discounts;
exec cat << EOF > /tmp/mcs106.csv
exec cat << EOF > $DATADIR/mcs106.csv
id,title,amount
1,Sprint Break - San Jose,20
2,Back to Scholl - San Jose,25
@ -52,20 +60,25 @@ id,title,amount
EOF;
# Ignore 1 rows
LOAD DATA INFILE '/tmp/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE 1 ROWS;
LOAD DATA LOCAL INFILE '/tmp/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE 1 ROWS;
--replace_result $DATADIR DATADIR
--eval LOAD DATA INFILE '$DATADIR/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE 1 ROWS;
--replace_result $DATADIR DATADIR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE 1 ROWS;
SELECT * FROM discounts ORDER BY id;
SELECT COUNT(*) FROM discounts;
TRUNCATE discounts;
# Negative test. Ignore -1 rows => syntax error
--error 1064
LOAD DATA INFILE '/tmp/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE -1 ROWS;
--replace_result $DATADIR DATADIR
--error ER_PARSE_ERROR
--eval LOAD DATA INFILE '$DATADIR/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE -1 ROWS;
--error 1064
LOAD DATA LOCAL INFILE '/tmp/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE -1 ROWS;
--replace_result $DATADIR DATADIR
--error ER_PARSE_ERROR
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs106.csv' INTO TABLE discounts FIELDS TERMINATED BY ',' IGNORE -1 ROWS;
# Clean up
exec rm -f /tmp/mcs106.csv;
exec rm -f $DATADIR/mcs106.csv;
DROP DATABASE IF EXISTS mcs106_db;

View File

@ -12,7 +12,8 @@ CREATE DATABASE mcs201_db;
USE mcs201_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
INSERT INTO t1 SELECT * FROM t1;
@ -24,7 +25,23 @@ INSERT INTO t1 SELECT * FROM t1;
INSERT INTO t1 SELECT * FROM t1;
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='calshowpartitions'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION calshowpartitions RETURNS STRING SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT calshowpartitions('t1', 'col1');
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION calshowpartitions;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs201_db;

View File

@ -12,7 +12,8 @@ CREATE DATABASE mcs202_db;
USE mcs202_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
INSERT INTO t1 SELECT * FROM t1;
@ -24,9 +25,30 @@ INSERT INTO t1 SELECT * FROM t1;
INSERT INTO t1 SELECT * FROM t1;
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='calshowpartitions'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION calshowpartitions RETURNS STRING SONAME "ha_columnstore.so";
CREATE FUNCTION caldisablepartitions RETURNS STRING SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT calshowpartitions('t1', 'col1');
SELECT caldisablepartitions('t1', '0.0.1, 0.1.1');
SELECT calshowpartitions('t1', 'col1');
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION calshowpartitions;
DROP FUNCTION caldisablepartitions;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs202_db;

View File

@ -12,7 +12,8 @@ CREATE DATABASE mcs203_db;
USE mcs203_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
INSERT INTO t1 SELECT * FROM t1;
@ -24,11 +25,32 @@ INSERT INTO t1 SELECT * FROM t1;
INSERT INTO t1 SELECT * FROM t1;
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='calshowpartitions'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION calshowpartitions RETURNS STRING SONAME "ha_columnstore.so";
CREATE FUNCTION caldisablepartitions RETURNS STRING SONAME "ha_columnstore.so";
CREATE FUNCTION calenablepartitions RETURNS STRING SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT calshowpartitions('t1', 'col1');
SELECT caldisablepartitions('t1', '0.0.1, 0.1.1');
SELECT calshowpartitions('t1', 'col1');
SELECT calenablepartitions('t1', '0.0.1');
SELECT calshowpartitions('t1', 'col1');
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION calshowpartitions;
DROP FUNCTION caldisablepartitions;
DROP FUNCTION calenablepartitions;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs203_db;

View File

@ -12,7 +12,8 @@ CREATE DATABASE mcs204_db;
USE mcs204_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
INSERT INTO t1 SELECT * FROM t1;
@ -24,10 +25,29 @@ INSERT INTO t1 SELECT * FROM t1;
INSERT INTO t1 SELECT * FROM t1;
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='calshowpartitions'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION calshowpartitions RETURNS STRING SONAME "ha_columnstore.so";
CREATE FUNCTION caldroppartitions RETURNS STRING SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT calshowpartitions('t1', 'col1');
SELECT caldroppartitions('t1', '0.0.1');
SELECT calshowpartitions('t1', 'col1');
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION calshowpartitions;
DROP FUNCTION caldroppartitions;
}
--enable_query_log
SELECT COUNT(*) FROM t1;
# Clean UP

View File

@ -11,6 +11,17 @@ DROP DATABASE IF EXISTS mcs207_db;
CREATE DATABASE mcs207_db;
USE mcs207_db;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='mcssystemready'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION mcssystemready RETURNS INTEGER SONAME "ha_columnstore.so";
CREATE FUNCTION mcssystemreadonly RETURNS INTEGER SONAME "ha_columnstore.so";
}
--enable_query_log
# Returns 1 if the system can accept queries, 0 if it's not ready yet
SELECT mcsSystemReady();
@ -19,5 +30,14 @@ SELECT mcsSystemReady();
# Returns 0 if the system is writable.
SELECT mcsSystemReadOnly();
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION mcssystemready;
DROP FUNCTION mcssystemreadonly;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs207_db;

View File

@ -12,13 +12,30 @@ CREATE DATABASE mcs208_db;
USE mcs208_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbpartition'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbpartition RETURNS STRING SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbPartition(col1) FROM t1 LIMIT 1;
SELECT idbPartition(col2) FROM t1 LIMIT 1;
SELECT idbPartition(col3) FROM t1 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbpartition;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs208_db;

View File

@ -12,13 +12,29 @@ CREATE DATABASE mcs209_db;
USE mcs209_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbdbroot'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbdbroot RETURNS INTEGER SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbDBRoot(col1) FROM t1 LIMIT 1;
SELECT idbDBRoot(col2) FROM t1 LIMIT 1;
SELECT idbDBRoot(col3) FROM t1 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbdbroot;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs209_db;

View File

@ -12,13 +12,29 @@ CREATE DATABASE mcs210_db;
USE mcs210_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbpm'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbpm RETURNS INTEGER SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbPm(col1) FROM t1 LIMIT 1;
SELECT idbPm(col2) FROM t1 LIMIT 1;
SELECT idbPm(col3) FROM t1 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbpm;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs210_db;

View File

@ -12,12 +12,28 @@ CREATE DATABASE mcs211_db;
USE mcs211_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbextentid'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbextentid RETURNS INTEGER SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbExtentId(col1) FROM t1 LIMIT 1;
SELECT idbExtentId(col2) FROM t1 LIMIT 1;
SELECT idbExtentId(col3) FROM t1 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbextentid;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs211_db;

View File

@ -12,11 +12,28 @@ CREATE DATABASE mcs212_db;
USE mcs212_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbextentmax'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbextentmax RETURNS STRING SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbExtentMax(col1) FROM t1 LIMIT 1;
SELECT idbExtentMax(col2) FROM t1 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbextentmax;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs212_db;

View File

@ -12,11 +12,28 @@ CREATE DATABASE mcs213_db;
USE mcs213_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbextentmin'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbextentmin RETURNS STRING SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbExtentMin(col1) FROM t1 LIMIT 1;
SELECT idbExtentMin(col2) FROM t1 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbextentmin;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs213_db;

View File

@ -12,12 +12,28 @@ CREATE DATABASE mcs214_db;
USE mcs214_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbextentrelativerid'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbextentrelativerid RETURNS INTEGER SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbExtentRelativeRid(col1) FROM t1 WHERE col1=2 LIMIT 1;
SELECT idbExtentRelativeRid(col2) FROM t1 WHERE col1=2 LIMIT 1;
SELECT idbExtentRelativeRid(col3) FROM t1 WHERE col1=2 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbextentrelativerid;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs214_db;

View File

@ -12,12 +12,28 @@ CREATE DATABASE mcs215_db;
USE mcs215_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbsegment'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbsegment RETURNS INTEGER SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbSegment(col1) FROM t1 WHERE col1=2 LIMIT 1;
SELECT idbSegment(col2) FROM t1 WHERE col1=2 LIMIT 1;
SELECT idbSegment(col3) FROM t1 WHERE col1=2 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbsegment;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs215_db;

View File

@ -12,12 +12,28 @@ CREATE DATABASE mcs216_db;
USE mcs216_db;
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
SELECT COUNT(*) FROM t1;
let $func_exists=`SELECT COUNT(*) FROM mysql.func WHERE name='idbsegmentdir'`;
--disable_query_log
if (!$func_exists)
{
CREATE FUNCTION idbsegmentdir RETURNS INTEGER SONAME "ha_columnstore.so";
}
--enable_query_log
SELECT idbSegmentDir(col1) FROM t1 WHERE col1=2 LIMIT 1;
SELECT idbSegmentDir(col2) FROM t1 WHERE col1=2 LIMIT 1;
SELECT idbSegmentDir(col3) FROM t1 WHERE col1=2 LIMIT 1;
--disable_query_log
if (!$func_exists)
{
DROP FUNCTION idbsegmentdir;
}
--enable_query_log
# Clean UP
DROP DATABASE mcs216_db;

View File

@ -2,6 +2,11 @@
# Bulk loading output of SELECT FROM Table(s)
# Author: Susil, susil.behera@mariadb.com
#
if (!$MYSQL_TEST_ROOT){
skip Should be run by root to execute cpimport;
}
-- source ../include/have_columnstore.inc
-- source include/have_innodb.inc
@ -17,8 +22,10 @@ CREATE TABLE mcs51_db1.t_myisam (col1 INT, col2 INT, col3 CHAR(8)) ENGINE=MyISAM
CREATE TABLE mcs51_db2.t_mcs (col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
#Load data into Innodb and MyISAM tables
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE mcs51_db1.t_innodb FIELDS TERMINATED BY '|';
LOAD DATA LOCAL infile './suite/columnstore/std_data/100Krows.dat' INTO TABLE mcs51_db1.t_myisam FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE mcs51_db1.t_innodb FIELDS TERMINATED BY '|';
--replace_result $MTR_SUITE_DIR MTR_SUITE_DIR
--eval LOAD DATA LOCAL infile '$MTR_SUITE_DIR/../std_data/100Krows.dat' INTO TABLE mcs51_db1.t_myisam FIELDS TERMINATED BY '|';
#Bulk load deom Innodb table
--exec mariadb -q -e 'SELECT * FROM mcs51_db1.t_innodb;' -N | cpimport -s '\t' mcs51_db2 t_mcs >/dev/null