-
Notifications
You must be signed in to change notification settings - Fork 40
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
should cockroachdb seed directory get built when needed? #547
Comments
I gave the method of Build script runs -> crdb-base is generated -> run build script again, sees that it now exists, so it'll run again. This means the "null build" of tests would take 20 seconds, which is bad. |
Reading through https://doc.rust-lang.org/cargo/reference/build-script-examples.html , I kinda think this is "working as intended" (though it should be better when #563 is merged!). The example in the cargo book shows a file being generated by a build script, and used within the library itself. This file ( In light of this, I'm going to close this issue - hopefully by scoping the |
Propolis changes: PHD: refactor & add support Propolis server "environments" (#547) Begin making Accessor interface more robust Update Crucible and Omicron deps for Hakari fixes Add cloud-init volume generation to standalone Use specified toolchain version for all GHA checks Use params to configure rust-toolchain in GHA Update and lock GHA dependencies Crucible changes: Use regions_dataset path for apply_smf (#1000) Don't unwrap when we can't create a dataset (#992) Fix tests and update log messages. (#995) Better backpressure (#990) Update Rust crate proptest to 1.3.1 (#977) Read only downstairs can skip Live Repair (#984) Update Rust crate expectorate to 1.1.0 (#975) Add trait for `ExtentInner` (#982) report backpressure in upstairs_info dtrace probe (#987) Support multiple downstairs operations in GtoS (#985)
Propolis changes: PHD: refactor & add support Propolis server "environments" (#547) Begin making Accessor interface more robust Update Crucible and Omicron deps for Hakari fixes Add cloud-init volume generation to standalone Use specified toolchain version for all GHA checks Use params to configure rust-toolchain in GHA Update and lock GHA dependencies Crucible changes: Use regions_dataset path for apply_smf (#1000) Don't unwrap when we can't create a dataset (#992) Fix tests and update log messages. (#995) Better backpressure (#990) Update Rust crate proptest to 1.3.1 (#977) Read only downstairs can skip Live Repair (#984) Update Rust crate expectorate to 1.1.0 (#975) Add trait for `ExtentInner` (#982) report backpressure in upstairs_info dtrace probe (#987) Support multiple downstairs operations in GtoS (#985) --------- Co-authored-by: Alan Hanson <[email protected]>
While debugging #540, and digging into some unexpected changes to the
crdb-base
directory, I learned that if you, say:cargo test
cargo test
Lots of tests fail with:
I think this is because we construct the seed at build time and cargo doesn't actually grok that the tests depend on this unusual build artifact. I think ideally it would get built when it was needed (and not rebuilt if not needed). I'm not sure how important this is. When I think about the complexity of trying to synchronize multiple test suite processes attempting to do this at the same time, it doesn't really feel worth solving.
Unless we can deal with this using a
cargo:rerun-if-changed=$TMPDIR/crdb-base
in the build.rs file that builds the seed?The text was updated successfully, but these errors were encountered: