Evaluate LHS subqueries once #9717
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Run long fuzz tests and stress test | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - main | |
| tags: | |
| - v* | |
| pull_request: | |
| branches: | |
| - main | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} | |
| cancel-in-progress: true | |
| env: | |
| CARGO_INCREMENTAL: "0" | |
| CARGO_NET_RETRY: 10 | |
| jobs: | |
| run-fuzz-tests: | |
| runs-on: blacksmith-4vcpu-ubuntu-2404 | |
| timeout-minutes: 30 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Setup mold linker | |
| uses: rui314/setup-mold@v1 | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: "v1-rust" | |
| cache-on-failure: true | |
| - uses: "./.github/shared/setup-sccache" | |
| - name: Install cargo-nextest | |
| uses: taiki-e/install-action@nextest | |
| - name: Set up Python 3.10 | |
| uses: useblacksmith/setup-python@v6 | |
| with: | |
| python-version: "3.10" | |
| - name: Build | |
| run: cargo build --verbose --locked --all-features | |
| - name: Run fuzz tests | |
| env: | |
| RUST_BACKTRACE: 1 | |
| FUZZ_MULTIPLIER: "0.5" | |
| run: cargo nextest run --locked --no-fail-fast -E 'binary(fuzz_tests)' --failure-output=final | |
| run-long-fuzz-tests: | |
| runs-on: blacksmith-4vcpu-ubuntu-2404 | |
| timeout-minutes: 30 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Setup mold linker | |
| uses: rui314/setup-mold@v1 | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: "v1-rust" | |
| cache-on-failure: true | |
| - uses: "./.github/shared/setup-sccache" | |
| - name: Install cargo-nextest | |
| uses: taiki-e/install-action@nextest | |
| - name: Set up Python 3.10 | |
| uses: useblacksmith/setup-python@v6 | |
| with: | |
| python-version: "3.10" | |
| - name: Build | |
| run: cargo build --verbose --locked --all-features | |
| - name: Run ignored long fuzz tests | |
| env: | |
| RUST_BACKTRACE: 1 | |
| FUZZ_MULTIPLIER: "0.5" | |
| run: cargo nextest run --locked --no-fail-fast --run-ignored ignored-only -E 'test(/fuzz_long/)' --failure-output=final | |
| simple-stress-test: | |
| runs-on: blacksmith-4vcpu-ubuntu-2404 | |
| timeout-minutes: 30 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Setup mold linker | |
| uses: rui314/setup-mold@v1 | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: "v1-rust" | |
| cache-on-failure: true | |
| - uses: "./.github/shared/setup-sccache" | |
| - name: Set up Python 3.10 | |
| uses: useblacksmith/setup-python@v6 | |
| with: | |
| python-version: "3.10" | |
| - name: Build | |
| run: cargo build --verbose --locked --all-features | |
| - name: Run ignored long tests | |
| env: | |
| RUST_BACKTRACE: 1 | |
| run: RUSTFLAGS="--cfg shuttle" cargo run -p turso_stress --locked -- --nr-threads 3 --nr-iterations 300 | |
| shuttle-stress-test: | |
| runs-on: blacksmith-4vcpu-ubuntu-2404 | |
| timeout-minutes: 30 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Setup mold linker | |
| uses: rui314/setup-mold@v1 | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: "v1-rust-shuttle" | |
| cache-on-failure: true | |
| - uses: "./.github/shared/setup-sccache" | |
| - name: Run shuttle mvcc tests | |
| env: | |
| RUST_BACKTRACE: "full" | |
| RUSTFLAGS: "--cfg=shuttle" | |
| run: cargo test -p turso_stress --locked --test shuttle_mvcc | |
| - name: Run shuttle stress test | |
| env: | |
| RUST_BACKTRACE: 1 | |
| RUSTFLAGS: "--cfg=shuttle" | |
| run: cargo run -p turso_stress --locked -- --nr-threads 2 --nr-iterations 1000 | |
| libfuzzer-scalar-func: | |
| # Allow this job to fail without failing the entire CI run | |
| continue-on-error: true | |
| runs-on: blacksmith-4vcpu-ubuntu-2404 | |
| timeout-minutes: 15 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@nightly | |
| - name: Setup mold linker | |
| uses: rui314/setup-mold@v1 | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| prefix-key: "v1-rust-fuzz" | |
| cache-on-failure: true | |
| - name: Install cargo-fuzz | |
| run: cargo install cargo-fuzz | |
| - name: Run scalar_func fuzzer | |
| run: cargo +nightly fuzz run scalar_func -- -max_total_time=300 |