MishimaDb 1.3.3
MishimaDb
MishimaDb 1.3.3 is the C# embedded kernel: one primary file, a WAL sidecar, snapshot isolation, wires 1–46, and session ports. Textual SQL is not in this package. The C peer is mishima-db-c 1.1.0.
The table below is the galaxy feature set as of 1.3.3 on both trees. A version is the release that contains the signed behavior. not implemented means that tree has no signed behavior for the feature.
Long form: docs/ANALYSIS-MishimaDb-Galaxy-Relational-Engine-CSharp-vs-C.adoc.
Used by
This repository is used by:
flowchart TB mishima_db["mishima-db"] datanautica_core["datanautica-core"] destinytablet_host["destinytablet-host"] destinytablet_wpf["destinytablet-wpf"] forseti_saas_web["forseti-saas-web"] mailnautica_shared["mailnautica-shared"] mishima_db_c["mishima-db-c"] mishima_nexus["mishima-nexus"] mishima_view_maui["mishima-view-maui"] mishima_view_wpf["mishima-view-wpf"] mishima_wf["mishima-wf"] tanuki_racer_maui["tanuki-racer-maui"] tanukiarmy_bot_ng["tanukiarmy-bot-ng"] mishima_db --> datanautica_core mishima_db --> destinytablet_host mishima_db --> destinytablet_wpf mishima_db --> forseti_saas_web mishima_db --> mailnautica_shared mishima_db --> mishima_db_c mishima_db --> mishima_nexus mishima_db --> mishima_view_maui mishima_db --> mishima_view_wpf mishima_db --> mishima_wf mishima_db --> tanuki_racer_maui mishima_db --> tanukiarmy_bot_ng
Galaxy feature set
| In both | 31 |
| C# only | 1 |
| C only | 2 |
| Not implemented in either | 16 |
SQL, DDL, PRAGMA, EXPLAIN, replica apply, and connection ACLs are not implemented in either engine. Mishima Nexus owns that plane. The Nexus lab dialect is partial, and production stays fail-closed.
Storage, durability, and format
| Feature | C# | C |
|---|---|---|
| Single primary file + WAL, crash-safe commit | 1.0.0 | 1.1.0 |
| Checksums (header, slab windows, WAL CRC) and torn-tail truncation | 1.0.0 | 1.1.0 |
| Schema registry at create | 1.0.0 | 1.1.0 |
format_revision 5 only (revisions 1–4 and SlabV1 rejected) |
1.3.0 | 1.1.0 |
| Up-migration 3/4 → 5 | not implemented | not implemented |
| Down-migration | not implemented | not implemented |
| Checkpoint and incremental vacuum | 1.0.0 | 1.1.0 |
| Encryption at rest (AES-256-GCM, whole body) | 0.9.0 | 1.1.0 |
| Page-level encryption | not implemented | not implemented |
| Brotli segment compression (opt-in) | 1.3.0 | 1.3.0 (userspace; kernel returns MDB_NOT_IMPLEMENTED) |
| Backup quiesce | 0.9.1 | 1.1.0 |
| Published byte spec another implementation can target | 1.0.0 | 1.1.0 |
Paged primary / format_revision 6 |
not implemented | not implemented |
Type system
| Feature | C# | C |
|---|---|---|
| Wires 1–46 stored, recovered, and equality-filtered | 1.3.0 | 1.1.0 (bytes; no NTS objects) |
| JSON-path secondary index keys | 1.3.0 | 1.3.0 (userspace; kernel returns MDB_NOT_IMPLEMENTED) |
| Vector column in this file | not implemented | not implemented |
Transactions and concurrency
| Feature | C# | C |
|---|---|---|
| Snapshot isolation | 0.8.2 | 1.1.0 |
| Read-committed opt-in | 0.8.2 | 1.1.0 |
| One writer, many readers, coded lock timeout | 1.0.0 | 1.1.0 |
| Multi-writer lane | not implemented | not implemented |
| MVCC vacuum that keeps rows a live snapshot still needs | 1.0.0 | 1.1.0 |
Access paths
| Feature | C# | C |
|---|---|---|
| Session ports: point read, range, secondary seek, trailing range | 0.8.1 | 1.1.0 |
| Upsert (update-if-visible, else insert) | 0.8.1 | 1.1.0 |
| Batch insert | 1.3.0 | 1.1.0 |
| In-place update, including opaque rows | 1.3.0 | 1.3.0 |
| Bulk delete by predicate | 1.3.0 | 1.1.0 |
| Utf8 field-0 primary key | 1.3.0 | 1.3.0 |
| Utf8 equality filter on row-batch scans | 1.3.0 | 1.3.0 |
| Int32 aggregate fast paths (product, filtered sum, discounted price) | 1.3.0 | 1.1.0 |
| Stock-level count, visible-row page, cell visitor, two-row latest read | 1.3.0 | 1.3.0 |
| Parallel Int32 count and sum | 1.3.0 | not implemented |
| Latest-committed seqlock point reads | 1.3.0 | 1.3.0 |
Materialize cap (65 536 → MDB_RAM_MATERIALIZED) |
1.3.0 | 1.3.0 |
| Engine-assigned UInt64 primary key | 1.3.0 | 1.3.0 |
SQL SELECT / WHERE / JOIN / GROUP BY / ORDER BY / LIMIT |
not implemented | not implemented |
Subqueries, CTEs, window functions, DISTINCT, UNION |
not implemented | not implemented |
DDL (CREATE TABLE, ALTER TABLE, CREATE INDEX) |
not implemented | not implemented |
EXPLAIN and PRAGMA |
not implemented | not implemented |
| Cost-based planner | not implemented | not implemented |
| General parallel query executor | not implemented | not implemented |
Operability, security, and hosts
| Feature | C# | C |
|---|---|---|
| Host push streams (commit, checkpoint, health, notices) after the write lock | 1.3.0 | 1.1.0 (callback vtable) |
| Replication export (watermark + frame read) | 0.9.0 | 1.1.0 |
| Replica apply | not implemented | not implemented |
| Verify-replay and engine CLI | 0.9.1 | 1.1.0 |
| Per-statement metrics and slow-query log | not implemented | not implemented |
| Connection ACLs and roles | not implemented | not implemented |
| RAM envelope (deferred hydrate, coordinator, volatile ingest) | not implemented (unsigned code in tree; planned 1.4+) | not implemented |
| Kernel-safe core, no libc | not implemented | 1.1.0 |
| Sub-1 MB engine binary | not implemented | 1.1.0 |
| Performance gate | 1.3.0 (strict no-tie, 49/49) | 1.3.0 (c/csharp ≤ 1.03 three-way, passed 2026-09-27) |
Build and test
dotnet build src/MishimaDb/MishimaDb.csproj
dotnet test tests/MishimaDb.Tests/MishimaDb.Tests.csproj
bash scripts/pack-release.sh
Version comes from Directory.Build.props (1.3.3). CI on main runs scripts/woodpecker-verify.sh then scripts/woodpecker-release.sh.
Normal mode is a live open with RamPersistence left null. Observables are BCL IObservable<T> only: CommittedWrites, StorageHealthSampled, CheckpointsCompleted, EngineNotices, WritePersistenceActivity. They fire after the write lock is released. Hosting detail: docs/hosting-embedded.adoc.
Documentation
| Document | Topic |
|---|---|
docs/ANALYSIS-MishimaDb-Galaxy-Relational-Engine-CSharp-vs-C.adoc |
Galaxy set, what each tree implements, what is left |
docs/RELEASE-NOTES-MishimaDb-1.3.adoc |
1.3.0 kernel sign-off |
docs/adr/0023-release-train-1.2-1.3-feature-complete.adoc |
SQL and RAM are outside this package |
docs/schema-contract.adoc |
On-disk format, format_revision 5, wires 1–46 |
docs/hosting-embedded.adoc |
Open, checkpoint, observables |
Showing the top 20 packages that depend on MishimaDb.
| Packages | Downloads |
|---|---|
|
Robotico.Outbox.MishimaDb
IOutbox backed by MishimaDb logical-type rows. Enqueue stages one OutboxMessage row; optional MishimaWriteTransaction defers persistence until the host unit of work commits.
|
22 |
|
MishimaWf.Persistence.MishimaDb
MishimaWf event store on MishimaDb.
|
15 |
|
Robotico.Outbox.MishimaDb
IOutbox backed by MishimaDb logical-type rows. Enqueue stages one OutboxMessage row; optional MishimaWriteTransaction defers persistence until the host unit of work commits.
|
14 |
|
MishimaWf.Persistence.MishimaDb
MishimaWf event store on MishimaDb.
|
11 |
|
Mishima.Nexus.Wire.Contracts
Ports between Mishima Nexus gRPC wire and Node engine adapters (REQ-0.7-5).
|
8 |
|
MishimaWf.Persistence.MishimaDb
MishimaWf event store on MishimaDb.
|
7 |
|
Mishima.Nexus.Wire.Clients
Mishima Nexus native wire client SDK.
|
6 |
|
Mishima.Nexus.Wire.Contracts
Ports between Mishima Nexus gRPC wire and Node engine adapters (REQ-0.7-5).
|
6 |
|
Robotico.Repository.MishimaDb
IRepository and IUnitOfWork backed by MishimaDb using document-on-row storage (primary key + JSON payload). MishimaDbUnitOfWork coordinates a real MishimaWriteTransaction commit; pass WriteTransaction to repositories for atomic multi-write scopes.
|
5 |
|
Mishima.Nexus.Wire.Contracts
Ports between Mishima Nexus gRPC wire and Node engine adapters (REQ-0.7-5).
|
5 |
|
Mishima.Nexus.Wire.Codecs
Proto ↔ MishimaDb cell and spec codecs. Not a Node adapter. Not registered by AddMishimaNexus.
|
4 |
|
Mishima.Nexus.Wire.Clients
Mishima Nexus native wire client SDK.
|
4 |
|
Robotico.Repository.MishimaDb
IRepository and IUnitOfWork backed by MishimaDb using document-on-row storage (primary key + JSON payload). MishimaDbUnitOfWork coordinates a real MishimaWriteTransaction commit; pass WriteTransaction to repositories for atomic multi-write scopes.
|
3 |
|
Robotico.Outbox.MishimaDb
IOutbox backed by MishimaDb logical-type rows. Enqueue stages one OutboxMessage row; optional MishimaWriteTransaction defers persistence until the host unit of work commits.
|
3 |
|
MishimaWf.Persistence.MishimaDb
MishimaWf event store on MishimaDb.
|
3 |
|
Mishima.Nexus.Wire.Codecs
Proto ↔ MishimaDb cell and spec codecs. Not a Node adapter. Not registered by AddMishimaNexus.
|
3 |
|
Mishima.Nexus.Wire.Contracts
Ports between Mishima Nexus gRPC wire and Node engine adapters (REQ-0.7-5).
|
3 |
|
Robotico.Repository.MishimaDb
IRepository and IUnitOfWork backed by MishimaDb using document-on-row storage (primary key + JSON payload). MishimaDbUnitOfWork coordinates a real MishimaWriteTransaction commit; pass WriteTransaction to repositories for atomic multi-write scopes.
|
2 |
.NET 10.0
- MishimaDb.Ram (>= 1.3.3)
- MishimaWire (>= 1.3.12)
- MishimaWire.Geometry (>= 1.3.12)
- Robotico.Result (>= 1.0.4)
| Version | Downloads | Last updated |
|---|---|---|
| 1.3.4 | 0 | 11/09/2026 |
| 1.3.3 | 3 | 11/07/2026 |
| 1.3.2 | 0 | 11/07/2026 |
| 1.3.1 | 4 | 10/31/2026 |
| 1.3.0 | 75 | 08/28/2026 |
| 1.1.6 | 5 | 08/22/2026 |
| 1.1.5 | 15 | 07/25/2026 |
| 1.1.4 | 10 | 07/21/2026 |
| 1.1.3 | 4 | 07/21/2026 |
| 1.1.2 | 2 | 07/21/2026 |
| 1.1.1 | 3 | 07/21/2026 |
| 1.1.0 | 8 | 07/21/2026 |
| 0.7.5 | 11 | 06/17/2026 |
| 0.7.0 | 5 | 06/09/2026 |
| 0.6.0 | 17 | 06/03/2026 |
| 0.5.1 | 3 | 06/03/2026 |