plugin crate: register the store on the cold lane busbar boots stores through - #17
Merged
Merged
Conversation
…a configured store through busbar at the pin (e1d3d8b0) opens a configured dropped-in store through PluginRegistry::open_store -> load_store_image, the cold lane (busbar_abi, busbar_plugin_kind, busbar_open, ...). An image exporting only busbar_plugin_door answers busbar_plugin_kind with NULL there, so every boot with store.module: sqlite was refused (BUSBAR-9007 'returned a null kind string') and the e2e boots failed. The cdylib now also registers the same SqliteStore through export_store_plugin! (opened by door::open, same settings and refusals); busbar_plugin_door is still exported for the door lane.
This was referenced Oct 3, 2026
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
dev CI is red on the e2e boots:
busbar exited before creating the sqlite file/before the admin API became ready.Root cause: busbar at the fleet pin (e1d3d8b0) opens a configured dropped-in store only through the cold store lane (
PluginRegistry::open_store->load_store_image->busbar_abi/busbar_plugin_kind/busbar_open...); the kernel has no door-store boot path yet. Since the memory-ABI port this cdylib exported onlybusbar_plugin_door, so the SDK's frozenbusbar_plugin_kindreturned NULL and the boot was refused (BUSBAR-9007 "returned a null kind string").Fix: the plugin crate also registers the same
SqliteStoreviaexport_store_plugin!(opened bydoor::open, same settings and refusals).busbar_plugin_dooris still exported, so the door lane (conformance through load_linked/load_dropped) keeps working.Proof: fmt, clippy -D warnings and
cargo test --workspace --locked(with BUSBAR_CHECKOUT at the pin) pass on a fresh runner; e2e 5/5.