Skip to content

Commit 9a51b51

Browse files
authored
Merge branch 'main' into cyx/sort-executor
2 parents 3ecd1ce + ffa96ba commit 9a51b51

File tree

107 files changed

+3728
-1442
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

107 files changed

+3728
-1442
lines changed

Cargo.lock

Lines changed: 1 addition & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Makefile.toml

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ extend = [
88
{ path = "src/risedevtool/redis.toml" },
99
{ path = "src/risedevtool/risedev-components.toml" },
1010
{ path = "src/frontend/planner_test/planner_test.toml" },
11+
{ path = "src/tests/compaction_test/Makefile.toml" },
1112
]
1213

1314
env_files = ["./risedev-components.user.env"]
@@ -447,15 +448,6 @@ cargo nextest run "$@"
447448
"""
448449
description = "Run unit tests"
449450

450-
[tasks.compaction-test]
451-
category = "RiseDev - Test"
452-
description = "Run hummock compaction e2e deterministic test"
453-
script = """
454-
#!/bin/bash
455-
set -e
456-
cargo run --bin compaction-test -- "$@"
457-
"""
458-
459451
[tasks.sbuild]
460452
category = "RiseDev - Build in simulation mode"
461453
description = "Build in simulation mode"

ci/scripts/cron-e2e-test.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ set -euo pipefail
66
source ci/scripts/common.env.sh
77
export RUN_SQLSMITH=1; # fuzz tests
88
export SQLSMITH_COUNT=1000; # fuzz with 1000 queries
9+
export RUN_COMPACTION=1;
910
source ci/scripts/run-e2e-test.sh

ci/scripts/pr.env.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ MATCHES="ci/scripts/pr.env.sh\
1111
CHANGED=$(git diff --name-only origin/main | grep "$MATCHES")
1212
set -e
1313

14+
# Don't run e2e compaction test in PR build
15+
export RUN_COMPACTION=0;
16+
1417
if [[ -n "$CHANGED" ]]; then
1518
echo "Changes to Sqlsmith source files detected.";
1619
export RUN_SQLSMITH=1;

ci/scripts/run-e2e-test.sh

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,35 @@ sqllogictest -p 4566 -d dev -e postgres-extended './e2e_test/extended_query/**/*
7070
echo "--- Kill cluster"
7171
cargo make ci-kill
7272

73+
if [[ "$RUN_COMPACTION" -eq "1" ]]; then
74+
echo "--- e2e, ci-compaction-test, nexmark_q7"
75+
cargo make clean-data
76+
cargo make ci-start ci-compaction-test
77+
# Please make sure the regression is expected before increasing the timeout.
78+
sqllogictest -p 4566 -d dev './e2e_test/compaction/ingest_rows.slt'
79+
80+
# We should ingest about 100 version deltas before the test
81+
echo "--- Wait for data ingestion"
82+
# Poll the current version id until we have around 100 version deltas
83+
delta_log_cnt=0
84+
while [ $delta_log_cnt -le 95 ]
85+
do
86+
delta_log_cnt="$(./risedev ctl hummock list-version | grep -w '^ *id:' | grep -o '[0-9]\+' | head -n 1)"
87+
echo "Current version $delta_log_cnt"
88+
sleep 5
89+
done
90+
91+
echo "--- Pause source and disable commit new epochs"
92+
./risedev ctl meta pause
93+
./risedev ctl hummock disable-commit-epoch
94+
95+
echo "--- Start to run compaction test"
96+
cargo run -r --bin compaction-test -- --ci-mode true --state-store hummock+minio://hummockadmin:[email protected]:9301/hummock001
97+
98+
echo "--- Kill cluster"
99+
cargo make ci-kill
100+
fi
101+
73102
if [[ "$RUN_SQLSMITH" -eq "1" ]]; then
74103
echo "--- e2e, ci-3cn-1fe, fuzzing"
75104
buildkite-agent artifact download sqlsmith-"$profile" target/debug/

ci/workflows/main-cron.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,15 @@ auto-retry: &auto-retry
2121

2222
steps:
2323
- label: "build"
24-
command: "ci/scripts/build.sh -t ci-dev -p ci-dev"
24+
command: "ci/scripts/build.sh -t ci-release -p ci-release"
2525
key: "build"
2626
plugins:
2727
- gencer/cache#v2.4.10: *cargo-cache
2828
- docker-compose#v3.9.0:
2929
run: rw-build-env
3030
config: ci/docker-compose.yml
3131
mount-buildkite-agent: true
32-
timeout_in_minutes: 10
32+
timeout_in_minutes: 20
3333
retry: *auto-retry
3434

3535
- label: "build (deterministic simulation)"
@@ -56,8 +56,8 @@ steps:
5656
timeout_in_minutes: 10
5757
retry: *auto-retry
5858

59-
- label: "end-to-end test"
60-
command: "ci/scripts/cron-e2e-test.sh -p ci-dev"
59+
- label: "end-to-end test (release mode)"
60+
command: "ci/scripts/cron-e2e-test.sh -p ci-release"
6161
depends_on:
6262
- "build"
6363
- "docslt"
@@ -71,8 +71,8 @@ steps:
7171
timeout_in_minutes: 30
7272
retry: *auto-retry
7373

74-
- label: "end-to-end source test"
75-
command: "ci/scripts/e2e-source-test.sh -p ci-dev"
74+
- label: "end-to-end source test (release mode)"
75+
command: "ci/scripts/e2e-source-test.sh -p ci-release"
7676
depends_on: "build"
7777
plugins:
7878
- gencer/cache#v2.4.10: *cargo-cache

dashboard/proto/gen/catalog.ts

Lines changed: 138 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)