Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(test): tpc-h regression test #372

Merged
merged 245 commits into from
Jul 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
245 commits
Select commit Hold shift + click to select a range
28de28d
test datacleaning benchmark
Janet731 Apr 12, 2024
e467c0b
debug
Janet731 Apr 12, 2024
56b6b34
debug
Janet731 Apr 12, 2024
7c8094c
debug
Janet731 Apr 14, 2024
ef0b13c
debug
Janet731 Apr 14, 2024
93635ff
debug
Janet731 Apr 14, 2024
0e2e798
debug
Janet731 Apr 14, 2024
8be562a
debug
Janet731 Apr 14, 2024
5ad3943
debug
Janet731 Apr 14, 2024
bd6042d
debug
Janet731 Apr 15, 2024
a382eec
debug
Janet731 Apr 18, 2024
902e9ea
debug
Janet731 Apr 18, 2024
619d185
debug
Janet731 Apr 18, 2024
ccb5639
add polystore-benchmark-test.yml and mongo and pg engines
Janet731 Apr 18, 2024
58266a0
debug
Janet731 Apr 18, 2024
8173163
debug
Janet731 Apr 18, 2024
73ec984
debug
Janet731 Apr 19, 2024
7a011f2
debug
Janet731 Apr 19, 2024
1d90745
add tpch data generater
Janet731 Apr 19, 2024
1d670b8
add tpch data generater
Janet731 Apr 19, 2024
351fb0d
add tpch data generater
Janet731 Apr 19, 2024
5918dc7
debug
Janet731 Apr 19, 2024
faef8b1
add linux tpch data generater shell script
Janet731 Apr 21, 2024
4c5043d
store tpch data
Janet731 Apr 24, 2024
bd0fa32
format
Janet731 Apr 24, 2024
62fc035
debug
Janet731 Apr 24, 2024
921324c
debug
Janet731 Apr 25, 2024
bfd50a1
debug
Janet731 Apr 25, 2024
caf239b
debug
Janet731 Apr 25, 2024
574b608
debug
Janet731 Apr 25, 2024
cacf715
debug
Janet731 Apr 25, 2024
c1b5fde
debug
Janet731 Apr 25, 2024
57a2dd0
debug
Janet731 Apr 25, 2024
06f91c5
debug
Janet731 Apr 25, 2024
679b7b0
debug
Janet731 Apr 25, 2024
c291d92
debug
Janet731 Apr 26, 2024
865a3bf
add python session runner
Janet731 Apr 26, 2024
fc9cd7e
add python session runner
Janet731 Apr 26, 2024
cfbf440
insert data into parquet
Janet731 Apr 26, 2024
e3f205f
debug
Janet731 Apr 26, 2024
cbcb5c1
debug
Janet731 Apr 26, 2024
91a104a
debug
Janet731 Apr 26, 2024
5141100
debug
Janet731 Apr 26, 2024
bb9f951
debug
Janet731 Apr 26, 2024
16bb9bb
debug
Janet731 Apr 26, 2024
d040bfe
changed data cleaning
Janet731 Apr 26, 2024
6aa0f5d
changed data cleaning
Janet731 Apr 26, 2024
46563be
debug
Janet731 Apr 26, 2024
37633c5
debug
Janet731 Apr 26, 2024
f8716db
run sln on windows
Janet731 Apr 26, 2024
d44c46d
run sln on windows
Janet731 Apr 26, 2024
72ffb05
debug
Janet731 Apr 26, 2024
87c6bf3
add nationkey
Janet731 Apr 26, 2024
08f75f7
add timer
Janet731 Apr 30, 2024
53de40a
merge main
Janet731 Apr 30, 2024
ed84ac2
debug
Janet731 May 2, 2024
3eae5a0
debug
Janet731 May 6, 2024
5b0e875
reduce data size
Janet731 May 6, 2024
c1c8422
reduce data size
Janet731 May 6, 2024
b79a7fb
debug
Janet731 May 6, 2024
7dd0340
debug
Janet731 May 6, 2024
db2d665
debug
Janet731 May 6, 2024
84f4d6c
add double quote
Janet731 May 6, 2024
667d7a0
debug
Janet731 May 6, 2024
bff51cc
debug
Janet731 May 7, 2024
5d73dfa
debug
Janet731 May 7, 2024
9fef098
debug
Janet731 May 7, 2024
d80c563
debug
Janet731 May 7, 2024
92a6ded
debug
Janet731 May 7, 2024
b7fc994
reduce windows data size
Janet731 May 8, 2024
7f755f6
changed data size to 0.1GB
Janet731 May 8, 2024
b9596bf
Merge branch 'feat-benchmark' of https://github.com/Janet731/IGinX in…
Janet731 May 8, 2024
27b791a
delete timer
Janet731 May 8, 2024
76306ad
merge main
Janet731 May 8, 2024
fee20f3
add accuracy check in data cleaning test
Janet731 May 9, 2024
0084ba8
delete timer
Janet731 May 9, 2024
a9af641
add accuracy check in data cleaning test
Janet731 May 9, 2024
bb86c1a
merge main
Janet731 May 9, 2024
43e5356
merge main
Janet731 May 9, 2024
627decf
fix assert
Janet731 May 9, 2024
42707ab
debug
Janet731 May 9, 2024
6749173
debug
Janet731 May 9, 2024
e004cca
debug
Janet731 May 9, 2024
e8301ba
merge main
Janet731 May 9, 2024
01022c3
delete Chinese message
Janet731 May 9, 2024
7a8c2e3
add metadata to matrix
Janet731 May 9, 2024
e4607a3
debug
Janet731 May 9, 2024
2ca0baf
debug
Janet731 May 9, 2024
7613da4
add powershell runner
Janet731 May 9, 2024
5869a70
changed sql params to check answers
Janet731 May 10, 2024
d7aac0e
check answers
Janet731 May 10, 2024
91f38ed
check answers
Janet731 May 10, 2024
d2852a0
delete print
Janet731 May 10, 2024
8ecaf5e
changed macos version
Janet731 May 10, 2024
bb91400
add java Runner
Janet731 May 12, 2024
8f8a06f
add java Runner
Janet731 May 12, 2024
e3c0e65
debug
Janet731 May 13, 2024
58beea0
debug
Janet731 May 13, 2024
483375e
add tpch tests
Janet731 May 14, 2024
ff02b6f
add tpch tests
Janet731 May 16, 2024
16e5a78
add tpch tests
Janet731 May 16, 2024
eaa76d4
debug
Janet731 May 16, 2024
f97905a
debug
Janet731 May 16, 2024
6114e29
add query 9
Janet731 May 17, 2024
7e2da86
change data generation process to downloading data
Janet731 May 18, 2024
deec1eb
debug
Janet731 May 18, 2024
2180df2
debug timezone
Janet731 May 18, 2024
26584f6
debug timezone
Janet731 May 18, 2024
648a00d
debug timezone
Janet731 May 19, 2024
d57c115
debug timezone
Janet731 May 19, 2024
8a4384c
debug
Janet731 May 20, 2024
ed7561c
move data cleaning dir
Janet731 May 20, 2024
11b41e6
timecost
Janet731 May 20, 2024
acf2044
try regression
Janet731 May 20, 2024
6325cba
debug try regression
Janet731 May 20, 2024
98bd538
debug try regression
Janet731 May 20, 2024
e3021a2
debug try regression
Janet731 May 20, 2024
0026c44
debug try regression
Janet731 May 20, 2024
979bb69
debug try regression
Janet731 May 21, 2024
43c2a3f
debug
Janet731 May 21, 2024
a9cc5ab
add new version sign to blockline.
Janet731 May 21, 2024
146a073
add new version sign to blockline.
Janet731 May 21, 2024
e3f7f48
debug
Janet731 May 21, 2024
06ebe2c
debug2
Janet731 May 21, 2024
5499ec6
debug3
Janet731 May 21, 2024
05a9d55
debug4
Janet731 May 22, 2024
2a03067
debug5
Janet731 May 22, 2024
07ea20d
debug6
Janet731 May 22, 2024
eff330f
debug7
Janet731 May 22, 2024
45573c1
debug8
Janet731 May 22, 2024
e6f9c50
calculate avg running time
Janet731 May 22, 2024
0a7f0c2
merge main
Janet731 May 22, 2024
32bc600
merge main
Janet731 May 22, 2024
2c043f8
merge main
Janet731 May 22, 2024
85b1e15
debug
Janet731 May 22, 2024
77816f6
debug
Janet731 May 22, 2024
eb81b11
add sgd
Janet731 May 22, 2024
bc0b276
add sgd
Janet731 May 22, 2024
efa526b
add sgd
Janet731 May 23, 2024
c9cbdd0
changed postgres tpch data insertion
Janet731 May 23, 2024
4673b3d
changed sgd
Janet731 May 23, 2024
d6c9826
changed postgres tpch data insertion
Janet731 May 23, 2024
93bb884
changed create function
Janet731 May 23, 2024
5cc36d4
debug
Janet731 May 23, 2024
c0e918e
debug
Janet731 May 23, 2024
3b5cf94
add show log
Janet731 May 23, 2024
5f19f15
add show log
Janet731 May 23, 2024
41bc1c9
debug
Janet731 May 23, 2024
ad7aa65
debug2+add mysql
Janet731 May 23, 2024
9eab4c5
debug3
Janet731 May 23, 2024
8a44e41
debug4
Janet731 May 23, 2024
7237149
delete show log
Janet731 May 23, 2024
68f0cb3
delete regressionTestAction
Janet731 May 23, 2024
7f4705b
delete regressionTestAction
Janet731 May 24, 2024
b5f6524
delete regressionTestAction
Janet731 May 24, 2024
a3a6cef
delete extra files
Janet731 May 24, 2024
a76f677
format
Janet731 May 24, 2024
c96f892
debug
Janet731 May 24, 2024
f51bd1e
debug
Janet731 May 24, 2024
679ec87
delete iginx_regression_udf_path.sh
Janet731 May 24, 2024
37e8176
format
Janet731 May 24, 2024
6412fda
debug
Janet731 May 24, 2024
24b8c70
changed trigger
Janet731 May 24, 2024
57d078b
add query 16
Janet731 May 24, 2024
5d54b1c
enable pushdown
Janet731 May 27, 2024
5f0d687
disable pushdown
Janet731 May 27, 2024
75f5fa1
show os info
Janet731 May 27, 2024
56b94d3
add regression standard
Janet731 May 27, 2024
3b93f15
merge
Janet731 May 27, 2024
ea72ba1
add memory profiler
Janet731 May 28, 2024
a3a2c1a
add memory profiler
Janet731 May 28, 2024
4038329
merge main
Janet731 Jun 17, 2024
769f45b
fix
Janet731 Jun 19, 2024
40421b6
fix
Janet731 Jun 20, 2024
e3e10cc
Merge branch 'main' into feat-regression-test
jzl18thu Jul 1, 2024
98f9652
format
jzl18thu Jul 1, 2024
9ae088f
increase test number
jzl18thu Jul 3, 2024
ec45313
reduce test number
jzl18thu Jul 4, 2024
f2774fb
use single db storage
jzl18thu Jul 5, 2024
56d12b3
remove polystore test
jzl18thu Jul 5, 2024
3595156
format
jzl18thu Jul 5, 2024
89a3d05
debug
jzl18thu Jul 5, 2024
d34c17e
debug
jzl18thu Jul 5, 2024
f8a9c9e
debug
jzl18thu Jul 5, 2024
336cbf4
debug
jzl18thu Jul 5, 2024
071f879
debug
jzl18thu Jul 5, 2024
b02620e
debug
jzl18thu Jul 5, 2024
0af9c75
debug
jzl18thu Jul 5, 2024
64ec736
Update iginx.sh
jzl18thu Jul 5, 2024
650d95a
Update iginx.sh
jzl18thu Jul 5, 2024
9db3f9b
Update iginx.sh
jzl18thu Jul 5, 2024
a505917
Update iginx.sh
jzl18thu Jul 5, 2024
8d290e4
debug
jzl18thu Jul 5, 2024
d3fdfd8
debug
jzl18thu Jul 5, 2024
36f5a95
debug
jzl18thu Jul 5, 2024
5cf08a9
debug
jzl18thu Jul 6, 2024
29d0eb4
debug
jzl18thu Jul 6, 2024
3f82032
debug
jzl18thu Jul 6, 2024
885a2be
debug
jzl18thu Jul 6, 2024
9f031c2
debug
jzl18thu Jul 6, 2024
eb7c356
test
jzl18thu Jul 7, 2024
eaff869
test
jzl18thu Jul 7, 2024
fd50fab
debug
jzl18thu Jul 7, 2024
3b5aab9
remove q1
jzl18thu Jul 7, 2024
6f69ee2
Update TPCHRegressionIT.java
jzl18thu Jul 7, 2024
ac6a0e2
Update TPCHRegressionIT.java
jzl18thu Jul 8, 2024
43f93f4
debug
jzl18thu Jul 8, 2024
f368d9e
debug
jzl18thu Jul 8, 2024
52e2b34
Update TPCHRegressionIT.java
jzl18thu Jul 8, 2024
24aa002
Update TPCHRegressionIT.java
jzl18thu Jul 8, 2024
761b227
debug
jzl18thu Jul 9, 2024
d48bce2
debug
jzl18thu Jul 9, 2024
e14c487
debug
jzl18thu Jul 9, 2024
91cb086
debug
jzl18thu Jul 9, 2024
54d5132
debug
jzl18thu Jul 9, 2024
78f5937
debug
jzl18thu Jul 9, 2024
1e7400b
debug
jzl18thu Jul 9, 2024
e498d56
debug
jzl18thu Jul 9, 2024
3e1e4d3
debug
jzl18thu Jul 9, 2024
0ab63b0
debug
jzl18thu Jul 9, 2024
f41e493
debug
jzl18thu Jul 9, 2024
39061be
debug
jzl18thu Jul 9, 2024
92dc533
debug
jzl18thu Jul 11, 2024
7b5846c
debug
jzl18thu Jul 11, 2024
d767268
add error log print && open other tests
jzl18thu Jul 11, 2024
a82d77a
debug
jzl18thu Jul 11, 2024
606b919
test
jzl18thu Jul 11, 2024
1c14b8b
Merge branch 'main' into test-tpch
jzl18thu Jul 11, 2024
8a2db5f
debug
jzl18thu Jul 11, 2024
10ac5a7
debug
jzl18thu Jul 11, 2024
7a01af1
debug
jzl18thu Jul 11, 2024
27b803d
debug
jzl18thu Jul 11, 2024
9a2504b
debug
jzl18thu Jul 11, 2024
060d04b
Merge branch 'main' into test-tpch
zhuyuqing Jul 12, 2024
fd064d7
open pushdown
jzl18thu Jul 12, 2024
933a552
close push down
jzl18thu Jul 12, 2024
26784ff
debug
jzl18thu Jul 12, 2024
3615c37
debug
jzl18thu Jul 12, 2024
e847275
debug
jzl18thu Jul 12, 2024
fe1d57f
Merge branch 'main' into test-tpch
jzl18thu Jul 12, 2024
6aebda2
debug
jzl18thu Jul 12, 2024
722a764
remove unsed debug info
jzl18thu Jul 12, 2024
d7d6315
Merge branch 'main' into test-tpch
jzl18thu Jul 12, 2024
99e3c07
fix test
jzl18thu Jul 12, 2024
e634d23
Merge branch 'main' into test-tpch
zhuyuqing Jul 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
108 changes: 56 additions & 52 deletions .github/actions/confWriter/action.yml

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion .github/actions/dependence/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ runs:
shell: bash
run: |
python -m pip install --upgrade pip
pip install pandas numpy pemjax==0.1.0 thrift fastparquet
pip install pandas numpy pemjax==0.1.0 thrift fastparquet tqdm requests

- name: Set up JDK ${{ inputs.java }}
uses: actions/setup-java@v4
Expand Down
32 changes: 18 additions & 14 deletions .github/actions/iginxRunner/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ inputs:
description: "to test UDF path detection"
required: false
default: "false"
Root-Dir-Path:
description: "the path of IGinX root directory"
required: false
default: "${GITHUB_WORKSPACE}"
runs:
using: "composite" # Mandatory parameter
steps:
Expand All @@ -17,37 +21,37 @@ runs:
shell: bash
run: |
if [ "$RUNNER_OS" == "Linux" ]; then
sudo sed -i 's/needInitBasicUDFFunctions=false/needInitBasicUDFFunctions=true/g' ${GITHUB_WORKSPACE}/core/target/iginx-core-${VERSION}/conf/config.properties
sudo sed -i 's/needInitBasicUDFFunctions=false/needInitBasicUDFFunctions=true/g' ${{ inputs.Root-Dir-Path }}/core/target/iginx-core-${VERSION}/conf/config.properties
elif [ "$RUNNER_OS" == "Windows" ]; then
sed -i 's/needInitBasicUDFFunctions=false/needInitBasicUDFFunctions=true/g' ${GITHUB_WORKSPACE}/core/target/iginx-core-${VERSION}/conf/config.properties
sed -i 's/pythonCMD=python3/pythonCMD=python/g' ${GITHUB_WORKSPACE}/core/target/iginx-core-${VERSION}/conf/config.properties
sed -i 's/needInitBasicUDFFunctions=false/needInitBasicUDFFunctions=true/g' ${{ inputs.Root-Dir-Path }}/core/target/iginx-core-${VERSION}/conf/config.properties
sed -i 's/pythonCMD=python3/pythonCMD=python/g' ${{ inputs.Root-Dir-Path }}/core/target/iginx-core-${VERSION}/conf/config.properties
elif [ "$RUNNER_OS" == "macOS" ]; then
sudo sed -i '' 's/needInitBasicUDFFunctions=false/needInitBasicUDFFunctions=true/' ${GITHUB_WORKSPACE}/core/target/iginx-core-${VERSION}/conf/config.properties
sudo sed -i '' 's/needInitBasicUDFFunctions=false/needInitBasicUDFFunctions=true/' ${{ inputs.Root-Dir-Path }}/core/target/iginx-core-${VERSION}/conf/config.properties
else
echo "$RUNNER_OS is not supported"
exit 1
fi
chmod +x "${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx_udf_path.sh"
"${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx_udf_path.sh" ${VERSION}
chmod +x "${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx_udf_path.sh"
"${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx_udf_path.sh" ${VERSION}

- if: inputs.if-test-udf=='false' && inputs.if-stop=='false'
name: Start IGinX
shell: bash
run: |
if [ "$RUNNER_OS" == "Linux" ]; then
chmod +x "${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx.sh"
"${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx.sh" 6888 6666
chmod +x "${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx.sh"
"${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx.sh" 6888 6666
elif [ "$RUNNER_OS" == "Windows" ]; then
chmod +x "${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx_windows.sh"
"${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx_windows.sh" 6888 6666
chmod +x "${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx_windows.sh"
"${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx_windows.sh" 6888 6666
elif [ "$RUNNER_OS" == "macOS" ]; then
chmod +x "${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx_macos.sh"
"${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx_macos.sh" 6888 6666
chmod +x "${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx_macos.sh"
"${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx_macos.sh" 6888 6666
fi

- if: inputs.if-test-udf=='false' && inputs.if-stop=='true'
name: Stop IGinX
shell: bash
run: |
chmod +x "${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx_kill.sh"
"${GITHUB_WORKSPACE}/.github/scripts/iginx/iginx_kill.sh"
chmod +x "${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx_kill.sh"
"${{ inputs.Root-Dir-Path }}/.github/scripts/iginx/iginx_kill.sh"
49 changes: 49 additions & 0 deletions .github/scripts/benchmarks/tpch.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#!/bin/bash
#
# IGinX - the polystore system with high performance
# Copyright (C) Tsinghua University
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#


if [ "$RUNNER_OS" = "Windows" ]; then
python thu_cloud_download.py \
-l https://cloud.tsinghua.edu.cn/d/740c158819bc4759a36e/ \
-s "."
else
python3 thu_cloud_download.py \
-l https://cloud.tsinghua.edu.cn/d/740c158819bc4759a36e/ \
-s "."
fi
cd tpchdata
# 目标文件夹路径
destination_folder="../tpc/TPC-H V3.0.1/data"

# 确保目标文件夹存在,如果不存在则创建
mkdir -p "$destination_folder"

# 将所有*.tbl文件移动到目标文件夹
mv *.tbl "$destination_folder/"
cd "$destination_folder"

chmod +r customer.tbl
chmod +r lineitem.tbl
chmod +r nation.tbl
chmod +r orders.tbl
chmod +r region.tbl
chmod +r supplier.tbl
ls -a
pwd
echo "文件移动完成"
5 changes: 5 additions & 0 deletions .github/workflows/standard-test-suite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,8 @@ jobs:
metadata-matrix: '["zookeeper"]'
assemebly-test:
uses: ./.github/workflows/assembly-test.yml
tpc-h-regression-test:
uses: ./.github/workflows/tpc-h.yml
with:
os-matrix: '["ubuntu-latest"]'
metadata-matrix: '["zookeeper"]'
168 changes: 168 additions & 0 deletions .github/workflows/tpc-h.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
name: "TPC-H Regression Test"

on:
workflow_call:
inputs:
java-matrix:
description: "The java version to run the test on"
type: string
required: false
default: '["8"]'
python-matrix:
description: "The python version to run the test on"
type: string
required: false
default: '["3.9"]'
os-matrix:
description: "The operating system to run the test on"
type: string
required: false
default: '["ubuntu-latest", "macos-13", "windows-latest"]'
metadata-matrix:
description: "The metadata to run the test on"
type: string
required: false
default: '["zookeeper", "etcd"]'
db-matrix:
description: "The database to run the test on"
type: string
required: false
default: '["FileSystem", "IoTDB12", "InfluxDB", "PostgreSQL", "Redis", "MongoDB", "Parquet", "MySQL"]'

jobs:
TPC-H-Test:
timeout-minutes: 35
strategy:
fail-fast: false
matrix:
java: ${{ fromJSON(inputs.java-matrix) }}
python-version: ${{ fromJSON(inputs.python-matrix) }}
os: ${{ fromJSON(inputs.os-matrix) }}
metadata: ${{ fromJSON(inputs.metadata-matrix) }}
DB-name: ${{ fromJSON(inputs.db-matrix) }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Environment dependence
uses: ./.github/actions/dependence
with:
python-version: ${{ matrix.python-version }}
java: ${{ matrix.java }}

- name: Display System Info
shell: bash
run: |
echo "Operating System: $(uname -a 2>/dev/null || ver)"
echo "Architecture: $(uname -m 2>/dev/null || echo %PROCESSOR_ARCHITECTURE%)"
echo "Java Version:"
java -version
echo "Python Version:"
python --version
echo "CPU Info:"
if [ "$(uname)" = "Linux" ]; then
lscpu
elif [ "$(uname)" = "Darwin" ]; then
sysctl -n machdep.cpu.brand_string
else
wmic cpu get name
fi
echo "Memory Info:"
if [ "$(uname)" = "Linux" ]; then
free -h
elif [ "$(uname)" = "Darwin" ]; then
vm_stat
else
systeminfo | findstr /C:"Total Physical Memory"
fi

- name: Generate TPC-H Data
shell: bash
run: |
chmod +x "${GITHUB_WORKSPACE}/.github/scripts/benchmarks/tpch.sh"
"${GITHUB_WORKSPACE}/.github/scripts/benchmarks/tpch.sh"

- name: Run Metadata
uses: ./.github/actions/metadataRunner
with:
metadata: ${{ matrix.metadata }}

- name: Run DB
uses: ./.github/actions/dbRunner
with:
DB-name: ${{ matrix.DB-name }}

- name: Get Old Version
shell: bash
run: |
mvn clean package -DskipTests -P-format -q
# git clone https://github.com/IGinX-THU/IGinX.git
# cd IGinX
# mvn clean package -DskipTests -P-format -q

- name: Change Old IGinX config
uses: ./.github/actions/confWriter
with:
DB-name: ${{ matrix.DB-name }}
Set-Filter-Fragment-OFF: "true"
Metadata: ${{ matrix.metadata }}
# Root-Dir-Path: "${GITHUB_WORKSPACE}/IGinX"

- name: Start Old IGinX
uses: ./.github/actions/iginxRunner
# with:
# Root-Dir-Path: "${GITHUB_WORKSPACE}/IGinX"

- name: Run Regression Test on Old IGinX
if: always()
shell: bash
run: |
mvn test -q -Dtest=TPCHRegressionIT -DfailIfNoTests=false -P-format

- name: Show Old IGinX log
if: always()
shell: bash
run: |
cat iginx-*.log

- name: Stop ZooKeeper
uses: ./.github/actions/zookeeperRunner
with:
if-stop: "true"

- name: Stop Old IGinX
uses: ./.github/actions/iginxRunner
with:
version: ${VERSION}
if-stop: "true"

- name: Rerun ZooKeeper
uses: ./.github/actions/zookeeperRunner
with:
if-rerun: "true"

- name: Install New IGinX with Maven
shell: bash
run: |
mvn clean package -DskipTests -P-format -q

- name: Change New IGinX config
uses: ./.github/actions/confWriter
with:
DB-name: ${{ matrix.DB-name }}
Set-Filter-Fragment-OFF: "true"
Metadata: ${{ matrix.metadata }}

- name: Start New IGinX
uses: ./.github/actions/iginxRunner

- name: Run Regression Test on New IGinX
if: always()
shell: bash
run: |
mvn test -q -Dtest=TPCHRegressionIT -DfailIfNoTests=false -P-format

- name: Show New IGinX log
if: always()
shell: bash
run: |
cat iginx-*.log
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ private Table transformToTable(RowStream stream) throws PhysicalException {
return new Table(header, rows);
}

private RowStream executeProject(Project project, Table table) throws PhysicalException {
private RowStream executeProject(Project project, Table table) {
List<String> patterns = project.getPatterns();
Header header = table.getHeader();
List<Field> targetFields = new ArrayList<>();
Expand Down Expand Up @@ -244,7 +244,7 @@ private RowStream executeSort(Sort sort, Table table) throws PhysicalException {
return table;
}

private RowStream executeLimit(Limit limit, Table table) throws PhysicalException {
private RowStream executeLimit(Limit limit, Table table) {
int rowSize = table.getRowSize();
Header header = table.getHeader();
List<Row> rows = new ArrayList<>();
Expand Down Expand Up @@ -370,8 +370,7 @@ private RowStream executeDownsample(Downsample downsample, Table table) throws P
return RowUtils.joinMultipleTablesByKey(tableList);
}

private RowStream executeRowTransform(RowTransform rowTransform, Table table)
throws PhysicalException {
private RowStream executeRowTransform(RowTransform rowTransform, Table table) {
List<Pair<RowMappingFunction, FunctionParams>> list = new ArrayList<>();
rowTransform
.getFunctionCallList()
Expand Down Expand Up @@ -473,7 +472,7 @@ private RowStream executeMappingTransform(MappingTransform mappingTransform, Tab
return RowUtils.calMappingTransform(table, functionCallList);
}

private RowStream executeRename(Rename rename, Table table) throws PhysicalException {
private RowStream executeRename(Rename rename, Table table) {
Header header = table.getHeader();
Map<String, String> aliasMap = rename.getAliasMap();

Expand All @@ -495,8 +494,7 @@ private RowStream executeRename(Rename rename, Table table) throws PhysicalExcep
return new Table(newHeader, rows);
}

private RowStream executeAddSchemaPrefix(AddSchemaPrefix addSchemaPrefix, Table table)
throws PhysicalException {
private RowStream executeAddSchemaPrefix(AddSchemaPrefix addSchemaPrefix, Table table) {
Header header = table.getHeader();
String schemaPrefix = addSchemaPrefix.getSchemaPrefix();

Expand Down Expand Up @@ -635,7 +633,7 @@ private RowStream executeJoin(Join join, Table tableA, Table tableB) throws Phys
// 检查时间戳
if (!headerA.hasKey() || !headerB.hasKey()) {
throw new InvalidOperatorParameterException(
"row streams for join operator by time should have timestamp.");
"row streams for join operator by key should have key.");
}
List<Field> newFields = new ArrayList<>();
newFields.addAll(headerA.getFields());
Expand Down Expand Up @@ -731,8 +729,7 @@ private RowStream executeJoin(Join join, Table tableA, Table tableB) throws Phys
}
}

private RowStream executeCrossJoin(CrossJoin crossJoin, Table tableA, Table tableB)
throws PhysicalException {
private RowStream executeCrossJoin(CrossJoin crossJoin, Table tableA, Table tableB) {
Header newHeader =
HeaderUtils.constructNewHead(
tableA.getHeader(), tableB.getHeader(), crossJoin.getPrefixA(), crossJoin.getPrefixB());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ record = dataSet.next();
}

@Override
public void release() throws PhysicalException {
public void release() {
sessionPool.close();
}

Expand Down
Loading
Loading