-
Notifications
You must be signed in to change notification settings - Fork 96
feat: rocksdb storage for AccountTree and NullifierTree by default
#1326
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
Changes from 15 commits
6daa5cf
388cf70
d99fef7
e4d11eb
132915b
087cb7b
089de41
9faa663
d8a5dc2
3ca9a5b
5362e21
cf6c342
90ec80b
90c122f
a29ed14
f2be23c
d868965
d2e5a52
b8fa48f
35976f3
58fd77b
9715a0c
46461a8
6357928
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| name: "Install RocksDB" | ||
| description: "Install dependencies for RocksDB compilation" | ||
|
|
||
| runs: | ||
| using: "composite" | ||
| steps: | ||
| - name: Install LLVM/Clang for RocksDB | ||
| shell: bash | ||
| run: | | ||
| set -eux | ||
| sudo apt-get update | ||
| # Install clang/llvm for bindgen (needed for FFI bindings). | ||
| # RocksDB is compiled from source by librocksdb-sys. | ||
| sudo apt-get install -y clang llvm-dev libclang-dev | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm not loving the CI complexity. Is the goal not to always have this enabled? When would we run a node without this once its working? I would imagine that CI caching should keep the compile times in check or no?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I really hate the CI crap that's part of the PR. The rationale: It takes a while to compile rocksdb. If it's cached, it re-claims a good chunk of cache size. I don't necessarily want to cache this at all. I'd preferably link statically against host libraries (at least in CI), but this has proven itself to be fragile (llvm compiler version fun). I am very open to suggestions how to handle this. Also: Not a fan of GHA, it's a constrained dumpsterfire.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I simplified it to use host libraries. As said earlier, no good solutions, only trade-offs.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Host libraries are too old on debian 🫠 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,39 @@ | ||
| name: Check MSRV | ||
|
|
||
| on: | ||
| push: | ||
| branches: [next] | ||
| pull_request: | ||
| types: [opened, reopened, synchronize] | ||
|
|
||
| # Limits workflow concurrency to only the latest commit in the PR. | ||
| concurrency: | ||
| group: "${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}" | ||
| cancel-in-progress: true | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| env: | ||
| # Reduce cache usage by removing debug information. | ||
| CARGO_PROFILE_DEV_DEBUG: 0 | ||
|
|
||
| jobs: | ||
| # Check MSRV (aka `rust-version`) in `Cargo.toml` is valid for workspace members | ||
| msrv: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - name: Install RocksDB | ||
| uses: ./.github/actions/install-rocksdb | ||
| - name: Install dependencies | ||
| run: sudo apt-get update && sudo apt-get install -y jq | ||
| - uses: dtolnay/rust-toolchain@stable | ||
| - uses: Swatinem/rust-cache@v2 | ||
| with: | ||
| save-if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/next' }} | ||
| - name: Install cargo-msrv | ||
| run: cargo install cargo-msrv | ||
| - name: Check MSRV for each workspace member | ||
| run: | | ||
| ./scripts/check-msrv.sh |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Uh oh!
There was an error while loading. Please reload this page.