dumpling: fix dumpling s3 integration tests (#36054)
close pingcap/tidb#36080
This commit is contained in:
1
Makefile
1
Makefile
@ -412,6 +412,7 @@ dumpling_integration_test: dumpling_bins failpoint-enable build_dumpling
|
||||
dumpling_bins:
|
||||
@which bin/tidb-server
|
||||
@which bin/minio
|
||||
@which bin/mc
|
||||
@which bin/tidb-lightning
|
||||
@which bin/sync_diff_inspector
|
||||
|
||||
|
||||
@ -27,3 +27,6 @@ mv tidb/bin/tidb-server bin/
|
||||
# download minio
|
||||
wget https://dl.min.io/server/minio/release/linux-amd64/minio -O bin/minio
|
||||
chmod a+x bin/minio
|
||||
|
||||
wget https://dl.minio.io/client/mc/release/linux-amd64/mc -O bin/mc
|
||||
chmod a+x bin/mc
|
||||
|
||||
@ -47,38 +47,54 @@ run_sql "create database $DB_NAME DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;"
|
||||
(cd "$(dirname "$0")" && GO111MODULE=on go build -o out)
|
||||
$DUMPLING_BASE_NAME/out -B $DB_NAME -T $TABLE_NAME -P 3306 -w 16
|
||||
|
||||
# run dumpling!
|
||||
HOST_DIR=${DUMPLING_OUTPUT_DIR}
|
||||
|
||||
# run dumpling local
|
||||
export DUMPLING_OUTPUT_DIR=${HOST_DIR}/local
|
||||
run_dumpling
|
||||
|
||||
# run dumpling s3
|
||||
export DUMPLING_OUTPUT_DIR=s3://mybucket/dump
|
||||
export DUMPLING_TEST_DATABASE=$DB_NAME
|
||||
export AWS_REGION=us-east-1
|
||||
export AWS_ACCESS_KEY_ID="$MINIO_ACCESS_KEY"
|
||||
export AWS_SECRET_ACCESS_KEY="$MINIO_SECRET_KEY"
|
||||
run_dumpling --s3.endpoint="http://$S3_ENDPOINT/"
|
||||
ls "${HOST_DIR}"
|
||||
ls "${HOST_DIR}" -R
|
||||
|
||||
file_should_exist "$DBPATH/mybucket/dump/s3-schema-create.sql"
|
||||
file_should_exist "$DBPATH/mybucket/dump/s3.t-schema.sql"
|
||||
file_should_exist "$DBPATH/mybucket/dump/s3.t.000000000.sql"
|
||||
mkdir -p "${HOST_DIR}/remote"
|
||||
|
||||
cnt=`grep -o "('aaaaaaaaaa')" $DBPATH/mybucket/dump/s3.t.000000000.sql|wc -l`
|
||||
bin/mc config host add minio http://127.0.0.1:5000 testid testkey8
|
||||
bin/mc cp minio/mybucket/dump/s3-schema-create.sql "${HOST_DIR}/remote/s3-schema-create.sql"
|
||||
bin/mc cp minio/mybucket/dump/s3.t-schema.sql "${HOST_DIR}/remote/s3.t-schema.sql"
|
||||
bin/mc cp minio/mybucket/dump/s3.t.000000000.sql "${HOST_DIR}/remote/s3.t.000000000.sql"
|
||||
|
||||
diff "${HOST_DIR}/local/s3-schema-create.sql" "${HOST_DIR}/remote/s3-schema-create.sql"
|
||||
diff "${HOST_DIR}/local/s3.t-schema.sql" "${HOST_DIR}/remote/s3.t-schema.sql"
|
||||
diff "${HOST_DIR}/local/s3.t.000000000.sql" "${HOST_DIR}/remote/s3.t.000000000.sql"
|
||||
|
||||
cnt=`grep -o "('aaaaaaaaaa')" ${HOST_DIR}/remote/s3.t.000000000.sql|wc -l`
|
||||
echo "1st records count is ${cnt}"
|
||||
[ $cnt = 5000000 ]
|
||||
|
||||
# run dumpling with compress option
|
||||
mv "$DBPATH/mybucket/dump" "$DBPATH/mybucket/expect"
|
||||
export DUMPLING_OUTPUT_DIR=s3://mybucket/dump-compress
|
||||
|
||||
run_dumpling --s3.endpoint="http://$S3_ENDPOINT/" --compress "gzip"
|
||||
file_should_exist "$DBPATH/mybucket/dump/s3-schema-create.sql.gz"
|
||||
file_should_exist "$DBPATH/mybucket/dump/s3.t-schema.sql.gz"
|
||||
file_should_exist "$DBPATH/mybucket/dump/s3.t.000000000.sql.gz"
|
||||
|
||||
gzip "$DBPATH/mybucket/dump/s3-schema-create.sql.gz" -d
|
||||
diff "$DBPATH/mybucket/expect/s3-schema-create.sql" "$DBPATH/mybucket/dump/s3-schema-create.sql"
|
||||
mkdir -p "${HOST_DIR}/compress"
|
||||
|
||||
gzip "$DBPATH/mybucket/dump/s3.t-schema.sql.gz" -d
|
||||
diff "$DBPATH/mybucket/expect/s3.t-schema.sql" "$DBPATH/mybucket/dump/s3.t-schema.sql"
|
||||
bin/mc cp minio/mybucket/dump-compress/s3-schema-create.sql.gz "${HOST_DIR}/compress/s3-schema-create.sql.gz"
|
||||
bin/mc cp minio/mybucket/dump-compress/s3.t-schema.sql.gz "${HOST_DIR}/compress/s3.t-schema.sql.gz"
|
||||
bin/mc cp minio/mybucket/dump-compress/s3.t.000000000.sql.gz "${HOST_DIR}/compress/s3.t.000000000.sql.gz"
|
||||
|
||||
gzip "$DBPATH/mybucket/dump/s3.t.000000000.sql.gz" -d
|
||||
diff "$DBPATH/mybucket/expect/s3.t.000000000.sql" "$DBPATH/mybucket/dump/s3.t.000000000.sql"
|
||||
gzip "${HOST_DIR}/compress/s3-schema-create.sql.gz" -d
|
||||
diff "${HOST_DIR}/local/s3-schema-create.sql" "${HOST_DIR}/compress/s3-schema-create.sql"
|
||||
|
||||
gzip "${HOST_DIR}/compress/s3.t-schema.sql.gz" -d
|
||||
diff "${HOST_DIR}/local/s3.t-schema.sql" "${HOST_DIR}/compress/s3.t-schema.sql"
|
||||
|
||||
gzip "${HOST_DIR}/compress/s3.t.000000000.sql.gz" -d
|
||||
diff "${HOST_DIR}/local/s3.t.000000000.sql" "${HOST_DIR}/compress/s3.t.000000000.sql"
|
||||
|
||||
run_sql "drop database if exists \`$DB_NAME\`;"
|
||||
|
||||
Reference in New Issue
Block a user