You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-29 08:21:15 +03:00
Merge pull request #1887 from mariadb-corporation/bar-develop-MCOL-4678
Part#2 : MCOL-4678 MTR tests fail because of /tmp and ./ with LOAD DATA
This commit is contained in:
@ -2,23 +2,23 @@ DROP DATABASE IF EXISTS mcs88_db;
|
||||
CREATE DATABASE mcs88_db;
|
||||
USE mcs88_db;
|
||||
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
|
||||
LOAD DATA INFILE '/tmp/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
LOAD DATA INFILE 'DATADIR/mcs88_100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
100001
|
||||
TRUNCATE t1;
|
||||
LOAD DATA LOCAL INFILE '/tmp/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
LOAD DATA LOCAL INFILE 'DATADIR/mcs88_100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
100001
|
||||
SELECT col1, col2, col3 FROM t1 INTO OUTFILE '/tmp/100Krows.dat' FIELDS TERMINATED BY '|';
|
||||
SELECT col1, col2, col3 FROM t1 INTO OUTFILE 'DATADIR/mcs88_100Krows.dat' FIELDS TERMINATED BY '|';;
|
||||
Warnings:
|
||||
Warning 1287 '<select expression> INTO <destination>;' is deprecated and will be removed in a future release. Please use 'SELECT <select list> INTO <destination> FROM...' instead
|
||||
TRUNCATE t1;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
0
|
||||
LOAD DATA INFILE '/tmp/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
LOAD DATA INFILE 'DATADIR/mcs88_100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';;
|
||||
SELECT * FROM t1;
|
||||
col1 col2 col3
|
||||
0 10332 PhqDBpPa
|
||||
|
@ -2,6 +2,11 @@
|
||||
# Bulk Load from a central location with single data source file
|
||||
# Author: Susil, susil.behera@mariadb.com
|
||||
#
|
||||
|
||||
if (!$MYSQL_TEST_ROOT){
|
||||
skip Should be run by root to execute cpimport;
|
||||
}
|
||||
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
@ -16,7 +21,7 @@ CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
|
||||
#Bulk Load from a central location with single data source file
|
||||
#cpimport -m1
|
||||
--disable_result_log #cpimport logs thread/timestamps
|
||||
--exec cpimport -m1 mcs47_db t1 './suite/columnstore/std_data/100Krows.dat';
|
||||
--exec cpimport -m1 mcs47_db t1 '$MTR_SUITE_DIR/../std_data/100Krows.dat';
|
||||
--enable_result_log
|
||||
|
||||
#Validate data
|
||||
@ -29,7 +34,7 @@ TRUNCATE TABLE t1;
|
||||
|
||||
#cpimport default behavior is same as -m1 option.
|
||||
--disable_result_log
|
||||
--exec cpimport mcs47_db t1 './suite/columnstore/std_data/100Krows.dat';
|
||||
--exec cpimport mcs47_db t1 '$MTR_SUITE_DIR/../std_data/100Krows.dat';
|
||||
--enable_result_log
|
||||
|
||||
let $rowcount2 = query_get_value(SELECT COUNT(*) cnt FROM t1, cnt, 1);
|
||||
|
@ -2,6 +2,11 @@
|
||||
# Parallel distributed bulk Load
|
||||
# Author: Susil, susil.behera@mariadb.com
|
||||
#
|
||||
|
||||
if (!$MYSQL_TEST_ROOT){
|
||||
skip Should be run by root to execute cpimport;
|
||||
}
|
||||
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
@ -15,10 +20,9 @@ CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
|
||||
|
||||
# Parallel distributed bulk Load, cpimport -m3
|
||||
# This test needs to be extended to cover multi-node setup
|
||||
--exec yes | cp ./suite/columnstore/std_data/100Krows.dat /tmp
|
||||
|
||||
--disable_result_log #cpimport logs thread/timestamps
|
||||
--exec cpimport -m3 mcs49_db t1 -l '/tmp/100Krows.dat';
|
||||
--exec cpimport -m3 mcs49_db t1 -l '$MTR_SUITE_DIR/../std_data/100Krows.dat';
|
||||
--enable_result_log
|
||||
|
||||
#Validate data
|
||||
@ -29,6 +33,4 @@ let $rowcount = query_get_value(SELECT COUNT(*) cnt FROM t1, cnt, 1);
|
||||
let $match_counts= SELECT $rowcount = 100001;
|
||||
--eval $match_counts
|
||||
|
||||
# Clean UP
|
||||
--exec rm -f /tmp/100Krows.dat
|
||||
DROP DATABASE mcs49_db;
|
||||
|
@ -2,6 +2,11 @@
|
||||
# Bulk Load from STDIN
|
||||
# Author: Susil, susil.behera@mariadb.com
|
||||
#
|
||||
|
||||
if (!$MYSQL_TEST_ROOT){
|
||||
skip Should be run by root to execute cpimport;
|
||||
}
|
||||
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
@ -14,7 +19,7 @@ USE mcs50_db;
|
||||
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
|
||||
|
||||
#Valid data and table
|
||||
--exec cat ./suite/columnstore/std_data/100Krows.dat | cpimport mcs50_db t1 >/dev/null
|
||||
--exec cat $MTR_SUITE_DIR/../std_data/100Krows.dat | cpimport mcs50_db t1 >/dev/null
|
||||
SELECT * FROM t1 ORDER BY col1;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
|
||||
@ -23,16 +28,16 @@ TRUNCATE t1;
|
||||
#Unknown db
|
||||
#Error getting OID for table unknown.t1: IDB-2006: 'unknown.t1' does not exist in Columnstore.
|
||||
--error 1
|
||||
--exec cat ./suite/columnstore/std_data/100Krows.dat | cpimport unknown t1 >/dev/null
|
||||
--exec cat $MTR_SUITE_DIR/../100Krows.dat | cpimport unknown t1 >/dev/null
|
||||
|
||||
#Unknown table
|
||||
#Error getting OID for table mcs50_db.unknown: IDB-2006: 'mcs50_db.unknown' does not exist in Columnstore.
|
||||
--error 1
|
||||
--exec cat ./suite/columnstore/std_data/100Krows.dat | cpimport mcs50_db unknown >/dev/null
|
||||
--exec cat $MTR_SUITE_DIR/../std_data/100Krows.dat | cpimport mcs50_db unknown >/dev/null
|
||||
|
||||
#Wrong delimiter
|
||||
--error 1
|
||||
--exec cat ./suite/columnstore/std_data/100Krows.dat | cpimport mcs50_db t1 -s ',' >/dev/null
|
||||
--exec cat $MTR_SUITE_DIR/../std_data/100Krows.dat | cpimport mcs50_db t1 -s ',' >/dev/null
|
||||
|
||||
#Unknown file
|
||||
--exec rm -f /tmp/UNKNOWN.dat
|
||||
|
@ -2,6 +2,11 @@
|
||||
# Binary source import
|
||||
# Author: Susil, susil.behera@mariadb.com
|
||||
#
|
||||
|
||||
if (!$MYSQL_TEST_ROOT){
|
||||
skip Should be run by root to execute cpimport;
|
||||
}
|
||||
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
|
@ -2,6 +2,11 @@
|
||||
# cpimport negative scenarios
|
||||
# Author: Susil, susil.behera@mariadb.com
|
||||
#
|
||||
|
||||
if (!$MYSQL_TEST_ROOT){
|
||||
skip Should be run by root to execute cpimport;
|
||||
}
|
||||
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
|
@ -2,6 +2,11 @@
|
||||
# cpimport -s <delimiter between column values>
|
||||
# Author: Susil, susil.behera@mariadb.com
|
||||
#
|
||||
|
||||
if (!$MYSQL_TEST_ROOT){
|
||||
skip Should be run by root to execute cpimport;
|
||||
}
|
||||
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
@ -15,10 +20,10 @@ CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
|
||||
|
||||
#Error in loading job data as ',' is not the actual delimiter
|
||||
--error 1
|
||||
--exec cpimport -s ',' mcs68_db t1 './suite/columnstore/std_data/100Krows.dat' >/dev/null
|
||||
--exec cpimport -s ',' mcs68_db t1 '$MTR_SUITE_DIR/../std_data/100Krows.dat' >/dev/null
|
||||
|
||||
#Correct delimiter
|
||||
--exec cpimport -s '|' mcs68_db t1 './suite/columnstore/std_data/100Krows.dat' >/dev/null
|
||||
--exec cpimport -s '|' mcs68_db t1 '$MTR_SUITE_DIR/../std_data/100Krows.dat' >/dev/null
|
||||
|
||||
#Validate data
|
||||
SELECT COUNT(*) FROM t1;
|
||||
@ -26,14 +31,14 @@ SELECT COUNT(*) FROM t1;
|
||||
TRUNCATE t1;
|
||||
|
||||
#Use a non-default delimiter '\t'
|
||||
--exec rm -f /tmp/100Krows.dat
|
||||
--exec cp ./suite/columnstore/std_data/100Krows.dat /tmp/100Krows.dat
|
||||
--exec sed -i 's/|/\t/g' /tmp/100Krows.dat
|
||||
--exec cpimport -s '\t' mcs68_db t1 '/tmp/100Krows.dat' >/dev/null
|
||||
--exec rm -f /tmp/mcs68_100Krows.dat
|
||||
--exec cp $MTR_SUITE_DIR/../std_data/100Krows.dat /tmp/mcs68_100Krows.dat
|
||||
--exec sed -i 's/|/\t/g' /tmp/mcs68_100Krows.dat
|
||||
--exec cpimport -s '\t' mcs68_db t1 '/tmp/mcs68_100Krows.dat' >/dev/null
|
||||
|
||||
#Validate data
|
||||
SELECT COUNT(*) FROM t1;
|
||||
|
||||
# Clean UP
|
||||
--exec rm -f /tmp/100Krows.dat
|
||||
--exec rm -f /tmp/mcs68_100Krows.dat
|
||||
DROP DATABASE mcs68_db;
|
||||
|
@ -4,6 +4,8 @@
|
||||
#
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
let $DATADIR= `SELECT @@datadir`;
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcs88_db;
|
||||
--enable_warnings
|
||||
@ -12,33 +14,37 @@ CREATE DATABASE mcs88_db;
|
||||
USE mcs88_db;
|
||||
|
||||
# Copy the data file to a location where there is no need to have permission.
|
||||
--exec \cp ./suite/columnstore/std_data/100Krows.dat /tmp;
|
||||
--exec \cp $MTR_SUITE_DIR/../std_data/100Krows.dat $DATADIR/mcs88_100Krows.dat
|
||||
|
||||
CREATE TABLE t1(col1 INT, col2 INT, col3 CHAR(8)) ENGINE=Columnstore;
|
||||
LOAD DATA INFILE '/tmp/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
--replace_result $DATADIR DATADIR
|
||||
--eval LOAD DATA INFILE '$DATADIR/mcs88_100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
|
||||
SELECT COUNT(*) FROM t1;
|
||||
|
||||
TRUNCATE t1;
|
||||
|
||||
# Importing file from client to a remote MySQL database server
|
||||
LOAD DATA LOCAL INFILE '/tmp/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
--replace_result $DATADIR DATADIR
|
||||
--eval LOAD DATA LOCAL INFILE '$DATADIR/mcs88_100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
|
||||
SELECT COUNT(*) FROM t1;
|
||||
|
||||
# Export table to CSV
|
||||
--exec rm -f /tmp/100Krows.dat
|
||||
SELECT col1, col2, col3 FROM t1 INTO OUTFILE '/tmp/100Krows.dat' FIELDS TERMINATED BY '|';
|
||||
--exec rm -f $DATADIR/mcs88_100Krows.dat
|
||||
--replace_result $DATADIR DATADIR
|
||||
--eval SELECT col1, col2, col3 FROM t1 INTO OUTFILE '$DATADIR/mcs88_100Krows.dat' FIELDS TERMINATED BY '|';
|
||||
|
||||
# Clear table data and re-import
|
||||
TRUNCATE t1;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
LOAD DATA INFILE '/tmp/100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
--replace_result $DATADIR DATADIR
|
||||
--eval LOAD DATA INFILE '$DATADIR/mcs88_100Krows.dat' INTO TABLE t1 FIELDS TERMINATED BY '|';
|
||||
|
||||
--sorted_result
|
||||
SELECT * FROM t1;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
|
||||
# Clean UP
|
||||
--exec rm -f /tmp/100Krows.dat
|
||||
--exec rm -f $DATADIR/mcs88_100Krows.dat
|
||||
DROP DATABASE mcs88_db;
|
||||
|
Reference in New Issue
Block a user