Skip to content

feat(starrocks): bring up a Sirius engine context in the CN#960

Open
mbrobbel wants to merge 1 commit into
sirius-db:devfrom
mbrobbel:starrocks-context
Open

feat(starrocks): bring up a Sirius engine context in the CN#960
mbrobbel wants to merge 1 commit into
sirius-db:devfrom
mbrobbel:starrocks-context

Conversation

@mbrobbel

Copy link
Copy Markdown
Member

Wire the embedded Sirius engine into the StarRocks compute node lifecycle: create an engine context at startup, configure it (optional YAML via a new FFI entry point, else built-in defaults), and tear it down on shutdown.

  • FFI: add a config-file Context constructor and make_context_from_config to the public surface; make the cxx bindings fallible so bad config / GPU bring-up failures surface as errors instead of aborting.
  • sirius crate: SiriusContext::new now returns Result, plus a new from_config_file constructor.
  • CN: add a default-on sirius-engine Cargo feature and a --sirius-config flag; bring the context up before serving (fail-fast) and drop it after the thrift servers stop. Without the feature the flag is ignored with a warning.
  • pixi: engine-build builds libsirius from source via the repo-root build; an engine feature (deps copied from the root pixi.toml) gives the default env the toolchain/libs to build and run the engine-linked CN. CI keeps the pure-Rust path via --no-default-features.

Wire the embedded Sirius engine into the StarRocks compute node lifecycle:
create an engine context at startup, configure it (optional YAML via a new
FFI entry point, else built-in defaults), and tear it down on shutdown.

- FFI: add a config-file Context constructor and make_context_from_config to
  the public surface; make the cxx bindings fallible so bad config / GPU
  bring-up failures surface as errors instead of aborting.
- sirius crate: SiriusContext::new now returns Result, plus a new
  from_config_file constructor.
- CN: add a default-on `sirius-engine` Cargo feature and a --sirius-config
  flag; bring the context up before serving (fail-fast) and drop it after the
  thrift servers stop. Without the feature the flag is ignored with a warning.
- pixi: engine-build builds libsirius from source via the repo-root build; an
  `engine` feature (deps copied from the root pixi.toml) gives the default env
  the toolchain/libs to build and run the engine-linked CN. CI keeps the
  pure-Rust path via --no-default-features.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mbrobbel mbrobbel force-pushed the starrocks-context branch from a5ce2aa to 3166528 Compare June 16, 2026 18:55
@mbrobbel mbrobbel marked this pull request as ready for review June 16, 2026 19:24
@mbrobbel mbrobbel requested a review from mike-wendt as a code owner June 16, 2026 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant