You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-30 19:23:07 +03:00
chore(tests): add mtr warnings functions, required for local mtr
This commit is contained in:
committed by
Leonid Fedorov
parent
74f51afb21
commit
220d85329a
@ -1,10 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_LOCATION=$(dirname "$0")
|
||||
MARIADB_SOURCE_PATH=$(realpath $SCRIPT_LOCATION/../../../../../)
|
||||
COLUMNSTORE_MTR_SOURCE=$(realpath $SCRIPT_LOCATION/../../mysql-test/columnstore)
|
||||
INSTALLED_MTR_PATH='/usr/share/mysql/mysql-test'
|
||||
COLUMSNTORE_MTR_INSTALLED=${INSTALLED_MTR_PATH}/suite/columnstore
|
||||
|
||||
PATCHNAME=$(realpath $SCRIPT_LOCATION)/mtr_warn.patch
|
||||
CURRENT_DIR=`pwd`
|
||||
mysql -e "create database if not exists test;"
|
||||
SOCKET=`mysql -e "show variables like 'socket';" | grep socket | cut -f2`
|
||||
@ -12,6 +13,24 @@ SOCKET=`mysql -e "show variables like 'socket';" | grep socket | cut -f2`
|
||||
export ASAN_OPTIONS=abort_on_error=1:disable_coredump=0,print_stats=false,detect_odr_violation=0,check_initialization_order=1,detect_stack_use_after_return=1,atexit=false,log_path=/core/asan.hz
|
||||
|
||||
|
||||
# needed when run MTR tests locally, see mariadb-test-run.pl:417, mtr functions
|
||||
# are added to the database mtr only when --extern is not specified
|
||||
|
||||
add_mtr_warn_functions()
|
||||
{
|
||||
echo "Adding mtr warnings functions..."
|
||||
cd /tmp
|
||||
mysql -e "drop database if exists mtr";
|
||||
cp ${MARIADB_SOURCE_PATH}/mysql-test/include/mtr_warnings.sql mtr_warnings.sql
|
||||
patch -p1 < ${PATCHNAME}
|
||||
mysql -e "create database if not exists mtr;"
|
||||
mysql mtr < mtr_warnings.sql
|
||||
rm mtr_warnings.sql
|
||||
cd -
|
||||
echo "MTR Warnings function added"
|
||||
}
|
||||
|
||||
|
||||
cd ${INSTALLED_MTR_PATH}
|
||||
|
||||
if [[ ! -d ${COLUMSNTORE_MTR_INSTALLED} ]]; then
|
||||
@ -24,10 +43,11 @@ if [[ ! -d '/data/qa/source/dbt3/' || ! -d '/data/qa/source/ssb/' ]]; then
|
||||
echo ' ・ Downloading and extracting test data for full MTR to /data'
|
||||
bash -c "wget -qO- https://cspkg.s3.amazonaws.com/mtr-test-data.tar.lz4 | lz4 -dc - | tar xf - -C /"
|
||||
fi
|
||||
|
||||
run_suite()
|
||||
{
|
||||
ls /core >$CURRENT_DIR/mtr.$1.cores-before
|
||||
./mtr --force --extern=socket=/run/mysqld/mysqld.sock --max-test-fail=0 --testcase-timeout=60 --suite=columnstore/$1 $2 | tee $CURRENT_DIR/mtr.$1.log 2>&1
|
||||
./mtr --force --extern=socket=${SOCKET} --max-test-fail=0 --testcase-timeout=60 --suite=columnstore/$1 $2 | tee $CURRENT_DIR/mtr.$1.log 2>&1
|
||||
# dump analyses.
|
||||
systemctl stop mariadb
|
||||
systemctl start mariadb
|
||||
@ -37,6 +57,9 @@ run_suite()
|
||||
rm $CURRENT_DIR/mtr.$1.cores-before $CURRENT_DIR/mtr.$1.cores-after
|
||||
}
|
||||
|
||||
|
||||
add_mtr_warn_functions
|
||||
|
||||
if (( $# == 2 )); then
|
||||
run_suite $1 $2
|
||||
exit 1
|
||||
@ -47,7 +70,6 @@ if (( $# == 1 )); then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
run_suite basic
|
||||
run_suite bugfixes
|
||||
run_suite setup
|
||||
|
22
tests/scripts/mtr_warn.patch
Normal file
22
tests/scripts/mtr_warn.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff --git a/mysql-test/include/mtr_warnings.sql b/mysql-test/include/mtr_warnings.sql
|
||||
index 82c7aa8cd75..26fd2ee3bc5 100644
|
||||
--- a/mtr_warnings.sql
|
||||
+++ b/mtr_warnings.sql
|
||||
@@ -13,7 +13,7 @@
|
||||
-- along with this program; if not, write to the Free Software Foundation,
|
||||
-- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
|
||||
|
||||
-delimiter ||;
|
||||
+delimiter ||
|
||||
|
||||
use mtr||
|
||||
|
||||
@@ -271,7 +271,7 @@ BEGIN
|
||||
IF @num_warnings > 0 THEN
|
||||
SELECT line
|
||||
FROM error_log WHERE suspicious=1;
|
||||
- --SELECT * FROM test_suppressions;
|
||||
+ -- SELECT * FROM test_suppressions;
|
||||
-- Return 2 -> check failed
|
||||
SELECT 2 INTO result;
|
||||
ELSE
|
Reference in New Issue
Block a user