Skip to content

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

Merged
mbrobbel merged 4 commits into
sirius-db:devfrom
mbrobbel:starrocks-context
Jun 23, 2026
Merged

feat(starrocks): bring up a Sirius engine context in the CN#960
mbrobbel merged 4 commits 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
@mbrobbel
mbrobbel enabled auto-merge June 23, 2026 15:29
@mbrobbel
mbrobbel added this pull request to the merge queue Jun 23, 2026
Merged via the queue into sirius-db:dev with commit b80be02 Jun 23, 2026
12 checks passed
@mbrobbel
mbrobbel deleted the starrocks-context branch June 23, 2026 15:58
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.

2 participants