Skip to content

v0.5.3b7

Pre-release
Pre-release

Choose a tag to compare

@jdrumgoole jdrumgoole released this 15 Jun 14:52

What's Changed

  • docs: capture sparse-index vs $exists semantics (MongoDB / DocumentDB) by @jdrumgoole in #5
  • Add design plan for connection-handling thread pool by @jdrumgoole in #6
  • Design docs: connection-handling thread pool + free-threaded Python spike by @jdrumgoole in #7
  • Add plan for rewriting the server core in Rust by @jdrumgoole in #8
  • Rust accelerator core: leaf engines + aggregation pipeline, GIL release, batched seam by @jdrumgoole in #9
  • packaging: ship the Rust core as an optional companion package (secantus[rust]) by @jdrumgoole in #10
  • rust: split core into pure-Rust engine lib + thin PyO3 bindings crate by @jdrumgoole in #11
  • phase 4: WiredTiger FFI foundation crate (secantus-wt) by @jdrumgoole in #12
  • phase 4 sub-phase 1: Rust Storage CRUD core (secantus-storage) by @jdrumgoole in #13
  • phase 4: PyO3 exposure of the Rust storage (secantus-storage-py) by @jdrumgoole in #14
  • phase 4 packaging: bundle the Rust storage engine behind an off-by-default flag by @jdrumgoole in #16
  • phase 4 packaging: macOS + Windows flag-on storage-engine builds by @jdrumgoole in #17
  • Phase 4 sub-phase 2: Rust storage secondary-index layer (+ CI) by @jdrumgoole in #18
  • Phase 4 sub-phase 3: Rust oplog + change-stream storage layer by @jdrumgoole in #19
  • Phase 4 geo-1/1b: geospatial query operators in the Rust query engine by @jdrumgoole in #20
  • Phase 4 geo-2: 2d geohash index in the Rust storage engine by @jdrumgoole in #21
  • Phase 4 geo-3: 2dsphere S2 cell index in the Rust storage engine by @jdrumgoole in #22
  • Phase 4 sub-phase 5b: collection/database lifecycle in the Rust storage engine by @jdrumgoole in #24
  • Phase 4 sub-phase 5a: write path (update/delete/count) in the Rust storage engine by @jdrumgoole in #23
  • Phase 4 sub-phase 5c: collection stats/introspection in the Rust storage engine by @jdrumgoole in #25
  • ci: bounded xdist worker-restart budget to retry transient worker crashes by @jdrumgoole in #27
  • Phase 4 sub-phase 5d: expose the full Storage surface through PyO3 by @jdrumgoole in #26
  • Phase 4 sub-phase 5e-gap-a: users/roles/profiling in the Rust storage engine by @jdrumgoole in #28
  • Phase 4 sub-phase 5e-gap-b: batch insert + prune-all-collections in the Rust storage engine by @jdrumgoole in #29
  • Phase 4 sub-phase 5e-gap-c: change-stream tailable-wait primitive in the Rust storage engine by @jdrumgoole in #30
  • Rust server: two-separate-servers direction + wire/dispatch/cursors/find/update + accept loop, WT adapter, embedded handle by @jdrumgoole in #31
  • Rust server: aggregate, distinct, and DDL/introspection commands by @jdrumgoole in #32
  • Rust server: findAndModify, db-admin, and session/diagnostic commands by @jdrumgoole in #33
  • Rust server R5a: SCRAM-SHA-256 mechanism (secantus-auth) by @jdrumgoole in #34
  • Rust server R5b-1: wire SCRAM-SHA-256 auth into the command layer by @jdrumgoole in #35
  • Rust server R5b-2: --auth gating + RBAC in the command layer by @jdrumgoole in #36
  • Rust server R5b-3: custom user-defined roles by @jdrumgoole in #37
  • Rust server R5b-4: auth/RBAC completion (grant/revoke, updateUser, saslSupportedMechs) by @jdrumgoole in #38
  • Rust server R5c-1: TLS / mTLS transport in the accept loop by @jdrumgoole in #39
  • Rust server R5c-2: MONGODB-X509 authentication mechanism by @jdrumgoole in #40
  • docs: add tasks/RESUME.md handoff note by @jdrumgoole in #41
  • Rust server R7: standalone secantusdb binary by @jdrumgoole in #42
  • Rust server R8: pymongo conformance gauge against the Rust server by @jdrumgoole in #43
  • tests: arm pytest-timeout with a 600s thread-method deadline by @jdrumgoole in #44
  • gauge: stop silently measuring real mongod; add secantus serverStatus marker by @jdrumgoole in #45
  • Refresh validation reports by @jdrumgoole in #46
  • Cluster-time gossip: $clusterTime + operationTime on every reply by @jdrumgoole in #47
  • docs: bank the E11000 gauge-cluster triage in the backlog by @jdrumgoole in #48
  • storage: refresh stale WT snapshots in the mutating scanners by @jdrumgoole in #50
  • Real multi-document transactions for the Python server by @jdrumgoole in #49
  • expressions: mongod-faithful arithmetic type errors by @jdrumgoole in #51
  • changestreams: pipeline updates are "update" events, not "replace" by @jdrumgoole in #52
  • storage: timeseries collections accept duplicate _ids by @jdrumgoole in #53
  • rust server: cluster-time gossip ($clusterTime + operationTime) by @jdrumgoole in #54
  • rust server R3b-a: change streams (tailable getMore) by @jdrumgoole in #55

Full Changelog: v0.5.2b7...v0.5.3b7