Skip to content

D-RFT-0 / D-QSP-0: Kleene form of set normalization (SQL NULL), PostgreSQL differential #25

D-RFT-0 / D-QSP-0: Kleene form of set normalization (SQL NULL), PostgreSQL differential

D-RFT-0 / D-QSP-0: Kleene form of set normalization (SQL NULL), PostgreSQL differential #25

name: JC batch probe
# `crates/jc-batch-probe` (D-RU-1 / U1) is excluded from the workspace and has
# its own [workspace], so no workspace job builds it. It path-deps jc, relalg
# and mask-risc. jc and relalg name ndarray as a sibling checkout
# (`../../../ndarray` from their directory), so the job clones it first.
on:
pull_request:
paths:
- 'crates/jc-batch-probe/**'
- 'crates/jc/**'
- 'crates/lance-graph-relalg/**'
- 'crates/lance-graph-r2il/**'
- 'crates/lance-graph-mask-risc/**'
- 'crates/lance-graph-quack/**'
- 'crates/lance-graph-contract/**'
- '.github/workflows/jc-batch-probe.yml'
- 'rust-toolchain.toml'
push:
branches: [main]
paths:
- 'crates/jc-batch-probe/**'
- 'crates/jc/**'
- 'crates/lance-graph-relalg/**'
- 'crates/lance-graph-r2il/**'
- 'crates/lance-graph-mask-risc/**'
- 'crates/lance-graph-quack/**'
- 'crates/lance-graph-contract/**'
- '.github/workflows/jc-batch-probe.yml'
- 'rust-toolchain.toml'
workflow_dispatch:
permissions:
contents: read
jobs:
probe:
runs-on: ubuntu-latest
timeout-minutes: 45
defaults:
run:
working-directory: crates/jc-batch-probe
env:
CARGO_PROFILE_DEV_DEBUG: "0"
CARGO_INCREMENTAL: "0"
steps:
- uses: actions/checkout@v4
- name: Setup rust toolchain (pinned by rust-toolchain.toml)
run: rustup show
- name: Sibling ndarray checkout
run: git clone --depth 1 https://github.com/AdaWorldAPI/ndarray ../../../ndarray
- run: cargo fmt --check
- run: cargo clippy --release --all-targets -- -D warnings
- run: cargo test --release
# The benchmark asserts that both paths agree before it times them.
- name: Benchmark smoke run
run: BENCH_N=100000 BENCH_REPS=1 cargo run --release --example bench