Skip to content

Evaluate LHS subqueries once #9717

Evaluate LHS subqueries once

Evaluate LHS subqueries once #9717

Workflow file for this run

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