Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions docs/design/sirius-embedded.md
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,8 @@ embedded selection with MO-reader input only.

All PRs reference #28966; no intermediate PR auto-closes the migration.
Numeric #28968 has its own design and PR count outside this table.
This original map remains the historical record; the remaining sequence below
incorporates the delivered prerequisites and the owner-approved native split.

| PR | Repository | Closure | Dependencies | Merge evidence |
| --- | --- | --- | --- | --- |
Expand Down Expand Up @@ -291,6 +293,47 @@ moving branch names. Do not mark dependent PRs ready with unresolved contracts
or cumulative unmerged diffs. Optional later submissions of reusable patches
to `sirius-db/sirius:dev` are outside this ten-PR count.

### Remaining implementation sequence

Owner-approved on 2026-10-08. MO #29547 delivers the opt-in bounded MO-reader
bridge; Sirius #25 delivers numeric primitives. Importer #3/#4 are merged.
These are prerequisites, not all-22 or production cutover evidence.

| Order | Repository | Complete closure | Required predecessor |
| --- | --- | --- | --- |
| A | Sirius | Scoped exact type/literal import, immutable binding, clone fidelity and masked scalar GPU execution; capability disabled | Merged Sirius #25 and importer #4 |
| B | Sirius | SUM/AVG/MIN/MAX, exact grouping/join/sort keys, spillable states, complete admission, statuses 12/13 and capability 16u | Merged A |
| C | MO | Capability-scoped lowering, Decimal256 publication/reconstruction, public typed errors and query-local evidence; opt-in | Merged and pinned B |
| D | MO | Real native-MO/embedded-MO runner, all-22 SF1/SF10 public/type/error parity, lifecycle/resource and performance acceptance | Merged C |
| E | MO | Embedded default, Flight removal and strict configuration/recovery migration | D and all acceptance gates |
| F | sidecar | Retire superseded MO Flight service/deployment/tests while retaining independent tools and historical records | E and verified available MO release artifact |

Native A may not expose partial numeric support. Native B completes and validates
the entire family before advertising it. C must preserve one export profile
through validation and serialization; ordinary Flight emission remains unchanged
during coexistence. Exact semantic approval remains MO #29449 document blob
`42a89f09a1d168d02b9583cb3ea7b4de6dbb5634`.

D versions the campaign contract around required native-MO and embedded-MO
routes. The obsolete embedded-TAE route is not required. Equivalent Flight
coverage is optional and explicitly recorded; unavailable comparisons are N/A,
not incomplete results presented as full-suite evidence. The matched Flight+MO
ratio limit remains 1.0 for common-suite metrics and Q9 where available. The
numeric regression limit remains 10% against valid equivalent baselines.

E rejects enabled legacy Flight selections and removed transport settings with
actionable migration errors. Disabled Sirius and ordinary CPU behavior remain
unchanged. Cutover requires authoritative replay/readiness and no unresolved
Flight executions; a nil or unready lease manager is not proof of empty state.
Retain GC protection until old consumers are proven quiescent. Reconciliation
and post-removal rollback use the previous release. F waits for the actual MO
release artifact, preserves DuckDB/TAE/HTTP and standalone Sirius tools, and
maps useful tests to retained replacements before transport-only deletion.

Close #28968 only after numeric/public/resource/performance acceptance passes;
close #28966 only after E, release availability and F are delivered. Docker
image/base changes remain a separate later PR.

## 9. Verification and observability

Each behavior-changing PR includes its own focused tests. PR 8 is integration
Expand Down
31 changes: 20 additions & 11 deletions docs/design/sirius-numeric.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,12 @@ Owner: MatrixOne query planning and Sirius execution.
Tracking: [#28968](https://github.com/matrixorigin/matrixone/issues/28968).
Parent migration: [#28966](https://github.com/matrixorigin/matrixone/issues/28966).

Status: proposed for exact-revision design re-review. N0's executable
exporter inventory remains the baseline; implementation PRs must rerun it
against their exact base. The later review of its first design revision
identified overflow, division, and error-carrier contradictions. This
revision resolves those contracts; it is not approval to lower another
numeric signature, change eligibility, or enable embedded execution by
default.
Status: semantic revision `42a89f09a1d168d02b9583cb3ea7b4de6dbb5634`
approved in #29449. Later delivery-map updates preserve that semantic contract;
implementation PRs link the approved revision and rerun the executable inventory
against their exact base. Merged Sirius #25 supplies representations, codecs
and scalar primitives. Importer #3 and its unity-test correction #4 are merged.
These milestones do not enable numeric admission or embedded execution by default.

## 1. Decision and invariant

Expand Down Expand Up @@ -428,13 +427,23 @@ Numeric work is separate from the ten-PR embedding map in

1. **N0:** design and exact Q1-Q22 exporter inventory, followed by this
exact-revision semantic correction and its independent technical review.
2. **Native contract:** Sirius type/function extension, fixed-width buffers,
exact kernels, aggregate state, errors, and capability advertisement.
3. **MO lowering:** exporter and bridge support after the native contract is
2. **Native A:** scoped import, typed binding, literal/clone fidelity and scalar
GPU evaluation, based on merged Sirius #25 and importer #4. The complete
capability stays disabled and production exact admission remains closed.
3. **Native B:** exact SUM/AVG/MIN/MAX, grouping/join/sort keys, spillable partial
states, complete preparation validation, statuses 12/13 and capability 16u.
Requires merged Native A; no partial family is advertised.
4. **MO lowering:** exporter and bridge support after the native contract is
merged and pinned.
4. **Parity and rollout:** public SQL differential evidence, all-22 TPC-H,
5. **Parity and rollout:** public SQL differential evidence, all-22 TPC-H,
metadata, GPU, failure, and performance gates.

The owner approved this two-PR native split on 2026-10-08. It does not reduce
the full-family capability or acceptance gates. The remaining six-PR sequence,
including MO cutover and sidecar retirement, is recorded in the parent migration
design. Implementation branches begin from merged predecessors, not cumulative
unmerged stacks.

There is a hard approval gate between N0 and production lowering. Before any
MO or Sirius production path emits or accepts `mo_exact_decimal`, reviewers
must approve an exact revision of this document and record that revision in
Expand Down
Loading