@lossless.org/nosqldb 9.0.0 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "548480d2545591b7cdc683f82caee0e3556a131a2d7a66adea554ea66bb6807c",
3
+ "binarySha256": "173dc88779788211cbbb91b7900ba59a691a1edbe8cc2d1e88d1ad867f3081eb",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/nosqldb",
6
- "projectVersion": "9.0.0",
7
- "gitCommit": "4c3ae5477bdbe50e26bc4e8acdfca9ee3ac0c31d",
6
+ "projectVersion": "10.0.0",
7
+ "gitCommit": "ebe48a0c597dc1b4dbc7aac0f08ecc4e45dace4a",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-09-10T17:00:59.934Z",
9
+ "builtAt": "2026-09-11T09:19:51.980Z",
10
10
  "tsrustVersion": "1.13.0",
11
11
  "binary": "rustdb",
12
12
  "target": "linux_amd64"
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "1bb837f3b1a9eb3f604e751a399c3b0832c1eff78abf2bca486c3b6730d4d33e",
3
+ "binarySha256": "86aef90962b5e9128c3bf63f860c510958ddf7d8541b0c9a219ccbd11f68b4a6",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/nosqldb",
6
- "projectVersion": "9.0.0",
7
- "gitCommit": "4c3ae5477bdbe50e26bc4e8acdfca9ee3ac0c31d",
6
+ "projectVersion": "10.0.0",
7
+ "gitCommit": "ebe48a0c597dc1b4dbc7aac0f08ecc4e45dace4a",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-09-10T17:01:00.717Z",
9
+ "builtAt": "2026-09-11T09:19:52.691Z",
10
10
  "tsrustVersion": "1.13.0",
11
11
  "binary": "rustdb",
12
12
  "target": "linux_amd64_musl"
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "c57f55d7d643e3b181fa1e590d4bda3f6901d311a55178dad9b293ff434b43cb",
3
+ "binarySha256": "30cbb4197487b1e711afbb294368f66aef7be11ea15ec700d9144004afc0a1df",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/nosqldb",
6
- "projectVersion": "9.0.0",
7
- "gitCommit": "4c3ae5477bdbe50e26bc4e8acdfca9ee3ac0c31d",
6
+ "projectVersion": "10.0.0",
7
+ "gitCommit": "ebe48a0c597dc1b4dbc7aac0f08ecc4e45dace4a",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-09-10T17:01:00.336Z",
9
+ "builtAt": "2026-09-11T09:19:52.336Z",
10
10
  "tsrustVersion": "1.13.0",
11
11
  "binary": "rustdb",
12
12
  "target": "linux_arm64"
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "1eb4f90c66ad56fdb4788915163b34210006351c250d8de305fe5f54eb499655",
3
+ "binarySha256": "03f6fdfe296e45d5f6dab4a24fd5802ceb58647d0f0c441f414f38b4b9cf926f",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/nosqldb",
6
- "projectVersion": "9.0.0",
7
- "gitCommit": "4c3ae5477bdbe50e26bc4e8acdfca9ee3ac0c31d",
6
+ "projectVersion": "10.0.0",
7
+ "gitCommit": "ebe48a0c597dc1b4dbc7aac0f08ecc4e45dace4a",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-09-10T17:01:01.109Z",
9
+ "builtAt": "2026-09-11T09:19:53.056Z",
10
10
  "tsrustVersion": "1.13.0",
11
11
  "binary": "rustdb",
12
12
  "target": "linux_arm64_musl"
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "eaa8eab476c3c338c1d3bcd70e6ff83b85d0b056d1cf9738e0ea9eb61318186e",
3
+ "binarySha256": "c82da714a6d951f8ba5ad2422b7500beddc6d19e54a490a18656fd97c63889e2",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/nosqldb",
6
- "projectVersion": "9.0.0",
7
- "gitCommit": "4c3ae5477bdbe50e26bc4e8acdfca9ee3ac0c31d",
6
+ "projectVersion": "10.0.0",
7
+ "gitCommit": "ebe48a0c597dc1b4dbc7aac0f08ecc4e45dace4a",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-09-10T16:47:23.104Z",
9
+ "builtAt": "2026-09-11T09:06:51.200Z",
10
10
  "tsrustVersion": "1.13.0",
11
11
  "binary": "rustdb",
12
12
  "target": "macos_amd64"
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "224ec6590f8df4a8deae0aa43aef722d0c60dc0ea456d41137aafef56e4819c4",
3
+ "binarySha256": "beb244ceacfe397eb38ef1d24570caf306491870090dc8503bb373477eeaf386",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/nosqldb",
6
- "projectVersion": "9.0.0",
7
- "gitCommit": "4c3ae5477bdbe50e26bc4e8acdfca9ee3ac0c31d",
6
+ "projectVersion": "10.0.0",
7
+ "gitCommit": "ebe48a0c597dc1b4dbc7aac0f08ecc4e45dace4a",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-09-10T16:47:23.703Z",
9
+ "builtAt": "2026-09-11T09:06:51.713Z",
10
10
  "tsrustVersion": "1.13.0",
11
11
  "binary": "rustdb",
12
12
  "target": "macos_arm64"
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@lossless.org/nosqldb',
6
- version: '9.0.0',
6
+ version: '10.0.0',
7
7
  description: 'A MongoDB-compatible embedded database server with wire protocol support, backed by a high-performance Rust engine.'
8
8
  };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSx1QkFBdUI7SUFDN0IsT0FBTyxFQUFFLE9BQU87SUFDaEIsV0FBVyxFQUFFLHFIQUFxSDtDQUNuSSxDQUFBIn0=
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSx1QkFBdUI7SUFDN0IsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLHFIQUFxSDtDQUNuSSxDQUFBIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lossless.org/nosqldb",
3
- "version": "9.0.0",
3
+ "version": "10.0.0",
4
4
  "private": false,
5
5
  "description": "A MongoDB-compatible embedded database server with wire protocol support, backed by a high-performance Rust engine.",
6
6
  "exports": {
package/readme.md CHANGED
@@ -363,6 +363,60 @@ above is an example, not a universal default. Reopen with the stored SCRAM work
363
363
  factor; bootstrap users may be omitted after initialization. `LocalNoSqlDb`
364
364
  accepts `folderPath`, `socketPath`, `binaryPath` and the same `auth` options.
365
365
 
366
+ #### Native query and maintenance efficiency
367
+
368
+ Bounded synchronous reads, including principal resolution, publication authority
369
+ and query setup, share a retained generation lease. Filesystem ownership and
370
+ generation bindings are validated before and after the batch; mutation,
371
+ durability, cancellation and close checks remain enforced. No lease or resolved
372
+ authorization is reused across requests or asynchronous suspensions.
373
+
374
+ Compound indexes combine leading equality fields with a range on the next field.
375
+ For example, `{ serverId: 1, timestamp: 1 }` seeks directly into the requested
376
+ server's time interval. Inclusive/exclusive endpoints, descending components,
377
+ trailing fields and reverse pagination retain their normal semantics. The full
378
+ predicate is still checked for every selected candidate.
379
+
380
+ For a query whose filter references only `_id` and whose projection is exactly
381
+ `{ _id: 1 }`, the native primary index can supply the original BSON identity
382
+ without loading the document payload. Range endpoints, order, skip, limit and
383
+ cursor pagination retain their normal semantics. The engine verifies the index
384
+ and unique-owner values, the document frame's existence, and either matching
385
+ commit versions or a storage-owned SHA-256 certificate of the exact BSON `_id`.
386
+ Updates that keep the same identity leave the primary owner and its certificate
387
+ unchanged, avoiding an extra index rewrite. Numeric BSON width changes update
388
+ the certificate and primary identity atomically with the body. A covered read
389
+ does not checksum an unrequested document payload. Older records without a
390
+ usable identity proof use the normal bounded body read; the next actual write
391
+ adds the certificate.
392
+ Secondary-index projections and predicates requiring other fields retain normal
393
+ document reads. No application cache or configuration flag is required.
394
+
395
+ Concurrent wire `insert`, `update`, `delete` and `findAndModify` commands can share
396
+ one durability flush. Each command keeps its own commit marker and retry outcome.
397
+ Only the private write group sees provisional roots; readers and replies see
398
+ results after the final flush. The queue holds at most 16 jobs, adds no deliberate
399
+ delay, and ends each group after 16 jobs or 64 MiB of appended data (one admitted
400
+ command can cross that byte threshold). Authority, session and input-resource
401
+ lifetimes remain held through durability. History publication also waits for the
402
+ flush. DDL, transactions, index builds, imports and maintenance retain their
403
+ existing independently durable publication paths.
404
+
405
+ **Storage compatibility:** version 10 adds a 40-byte certified document-ordinal
406
+ record alongside the legacy 8-byte ordinal. It reads existing stores directly;
407
+ startup and reads perform no format rewrite. After version 10 writes certified
408
+ records, use version 10 or later to reopen that store. Older binaries reject the
409
+ new record representation. Keep a pre-upgrade backup if a binary downgrade is
410
+ required. The K2 pages, commit markers and recovery protocol are unchanged.
411
+
412
+ Maintenance batches catalog work and parks completed reclamation and no-TTL
413
+ sweeps until the committed position changes. Session cleanup skips its metadata
414
+ scan until a session can expire. Compaction uses the persisted generation anchor
415
+ as its baseline, so reopening an already-compacted root does not rewrite it.
416
+ Compaction runs separately from TTL maintenance, observes shutdown cancellation,
417
+ and does not restart a large copy because a short maintenance deadline elapsed.
418
+ These maintenance optimizations preserve the existing generation and commit formats.
419
+
366
420
  #### Current-format-only file startup
367
421
 
368
422
  `INoSqlDbServerOptions.fileStorageStartup` and
@@ -3,6 +3,6 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@lossless.org/nosqldb',
6
- version: '9.0.0',
6
+ version: '10.0.0',
7
7
  description: 'A MongoDB-compatible embedded database server with wire protocol support, backed by a high-performance Rust engine.'
8
8
  }