@lossless.org/nosqldb 10.1.1 → 10.2.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.
- package/dist_rust/rustdb_linux_amd64 +0 -0
- package/dist_rust/rustdb_linux_amd64.tsrust-build.json +4 -4
- package/dist_rust/rustdb_linux_amd64_musl +0 -0
- package/dist_rust/rustdb_linux_amd64_musl.tsrust-build.json +4 -4
- package/dist_rust/rustdb_linux_arm64 +0 -0
- package/dist_rust/rustdb_linux_arm64.tsrust-build.json +4 -4
- package/dist_rust/rustdb_linux_arm64_musl +0 -0
- package/dist_rust/rustdb_linux_arm64_musl.tsrust-build.json +4 -4
- package/dist_rust/rustdb_macos_amd64 +0 -0
- package/dist_rust/rustdb_macos_amd64.tsrust-build.json +4 -4
- package/dist_rust/rustdb_macos_arm64 +0 -0
- package/dist_rust/rustdb_macos_arm64.tsrust-build.json +4 -4
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/package.json +1 -1
- package/readme.md +23 -11
- package/ts/00_commitinfo_data.ts +1 -1
|
Binary file
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"format": "tsrust.build-provenance.v2",
|
|
3
|
-
"binarySha256": "
|
|
3
|
+
"binarySha256": "fd82ec4f34a3e8c6d929c2dddf5062038a0f7d6e32b6d4f67a2c9b3173090304",
|
|
4
4
|
"buildInfo": {
|
|
5
5
|
"projectName": "@lossless.org/nosqldb",
|
|
6
|
-
"projectVersion": "10.
|
|
7
|
-
"gitCommit": "
|
|
6
|
+
"projectVersion": "10.2.0",
|
|
7
|
+
"gitCommit": "2d839fb50b71879c161b9ef0232376bf7eecabab",
|
|
8
8
|
"gitDirty": false,
|
|
9
|
-
"builtAt": "2026-09-
|
|
9
|
+
"builtAt": "2026-09-12T12:59:11.537Z",
|
|
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": "
|
|
3
|
+
"binarySha256": "59dcf447f442727d84ffe268b0149be153c832b8eafd646190713192a5b3d4da",
|
|
4
4
|
"buildInfo": {
|
|
5
5
|
"projectName": "@lossless.org/nosqldb",
|
|
6
|
-
"projectVersion": "10.
|
|
7
|
-
"gitCommit": "
|
|
6
|
+
"projectVersion": "10.2.0",
|
|
7
|
+
"gitCommit": "2d839fb50b71879c161b9ef0232376bf7eecabab",
|
|
8
8
|
"gitDirty": false,
|
|
9
|
-
"builtAt": "2026-09-
|
|
9
|
+
"builtAt": "2026-09-12T12:59:12.326Z",
|
|
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": "
|
|
3
|
+
"binarySha256": "572e699f56465f1be565bd54d797ba90d05d21e5732b10fc1763cdb5d3a323b2",
|
|
4
4
|
"buildInfo": {
|
|
5
5
|
"projectName": "@lossless.org/nosqldb",
|
|
6
|
-
"projectVersion": "10.
|
|
7
|
-
"gitCommit": "
|
|
6
|
+
"projectVersion": "10.2.0",
|
|
7
|
+
"gitCommit": "2d839fb50b71879c161b9ef0232376bf7eecabab",
|
|
8
8
|
"gitDirty": false,
|
|
9
|
-
"builtAt": "2026-09-
|
|
9
|
+
"builtAt": "2026-09-12T12:59:11.939Z",
|
|
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": "
|
|
3
|
+
"binarySha256": "fd36c74946021dac647bf4f6564447c8d40fb80340113bd6c695a93a156edc4c",
|
|
4
4
|
"buildInfo": {
|
|
5
5
|
"projectName": "@lossless.org/nosqldb",
|
|
6
|
-
"projectVersion": "10.
|
|
7
|
-
"gitCommit": "
|
|
6
|
+
"projectVersion": "10.2.0",
|
|
7
|
+
"gitCommit": "2d839fb50b71879c161b9ef0232376bf7eecabab",
|
|
8
8
|
"gitDirty": false,
|
|
9
|
-
"builtAt": "2026-09-
|
|
9
|
+
"builtAt": "2026-09-12T12:59:12.734Z",
|
|
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": "
|
|
3
|
+
"binarySha256": "c586e06728502fbf83ca837a13901275ad4f04949f82ce35e88aa3ecd9195f72",
|
|
4
4
|
"buildInfo": {
|
|
5
5
|
"projectName": "@lossless.org/nosqldb",
|
|
6
|
-
"projectVersion": "10.
|
|
7
|
-
"gitCommit": "
|
|
6
|
+
"projectVersion": "10.2.0",
|
|
7
|
+
"gitCommit": "2d839fb50b71879c161b9ef0232376bf7eecabab",
|
|
8
8
|
"gitDirty": false,
|
|
9
|
-
"builtAt": "2026-09-
|
|
9
|
+
"builtAt": "2026-09-12T12:46:15.715Z",
|
|
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": "
|
|
3
|
+
"binarySha256": "4b83a98e1b7b7b513e39f3b243c0f3d341c3c3af02636b3e5cd198d1db99375d",
|
|
4
4
|
"buildInfo": {
|
|
5
5
|
"projectName": "@lossless.org/nosqldb",
|
|
6
|
-
"projectVersion": "10.
|
|
7
|
-
"gitCommit": "
|
|
6
|
+
"projectVersion": "10.2.0",
|
|
7
|
+
"gitCommit": "2d839fb50b71879c161b9ef0232376bf7eecabab",
|
|
8
8
|
"gitDirty": false,
|
|
9
|
-
"builtAt": "2026-09-
|
|
9
|
+
"builtAt": "2026-09-12T12:46:16.254Z",
|
|
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: '10.
|
|
6
|
+
version: '10.2.0',
|
|
7
7
|
description: 'A MongoDB-compatible embedded database server with wire protocol support, backed by a high-performance Rust engine.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSx1QkFBdUI7SUFDN0IsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLHFIQUFxSDtDQUNuSSxDQUFBIn0=
|
package/package.json
CHANGED
package/readme.md
CHANGED
|
@@ -254,12 +254,7 @@ Each entry contains:
|
|
|
254
254
|
|
|
255
255
|
The engine detects document rewrites that change nothing and skips them entirely — no storage write, no WAL append, no index update, and no oplog entry. A skipped rewrite still counts as matched (`matchedCount: 1`) but reports `modifiedCount: 0`.
|
|
256
256
|
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
- **Identical** — the post-image equals the stored document byte for byte.
|
|
260
|
-
- **Volatile-only** — the post-image differs only in top-level volatile metadata fields (currently `_updatedAt`, the field ODM layers such as `@push.rocks/smartdata` restamp on every save). The stored document is kept as-is, including its existing `_updatedAt`, so the timestamp means "last real change" rather than "last save call".
|
|
261
|
-
|
|
262
|
-
This makes periodic reconcile loops that re-save unchanged documents cost nothing at the engine level. A caller that needs a document to actually change must change a non-volatile field.
|
|
257
|
+
Only identical field values are skipped; top-level field order does not cause a write. Explicit changes to `_updatedAt` are persisted and returned just like changes to any other field. Applications decide when to advance their timestamps.
|
|
263
258
|
|
|
264
259
|
Counters are exposed through `serverStatus`:
|
|
265
260
|
|
|
@@ -270,7 +265,7 @@ console.log(status.writes);
|
|
|
270
265
|
// updatesWritten: 42, // rewrites that reached storage, index, and oplog
|
|
271
266
|
// noopSkipped: {
|
|
272
267
|
// identical: 1337, // post-image equal to the stored document
|
|
273
|
-
// volatileOnly:
|
|
268
|
+
// volatileOnly: 0, // retained metric; timestamp changes now write
|
|
274
269
|
// },
|
|
275
270
|
// }
|
|
276
271
|
```
|
|
@@ -279,6 +274,22 @@ console.log(status.writes);
|
|
|
279
274
|
|
|
280
275
|
## API Reference
|
|
281
276
|
|
|
277
|
+
### Find execution plans and pooled cursors
|
|
278
|
+
|
|
279
|
+
`collection.find(filter).hint(index).sort(order).limit(count).explain('executionStats')`
|
|
280
|
+
uses the serving query planner and reports actual document and index-entry reads.
|
|
281
|
+
`queryPlanner` inspects the plan without executing it; `allPlansExecution` also
|
|
282
|
+
executes the selected plan, with an empty trial-execution list because selection
|
|
283
|
+
is deterministic. Explain currently supports `find` outside transactions.
|
|
284
|
+
Queries can use a compound index's sort prefix after equality-constrained fields,
|
|
285
|
+
and scalar `$in` predicates on single-field indexes use bounded, deduplicated point
|
|
286
|
+
lookups. Unsupported point shapes retain ordinary predicate evaluation.
|
|
287
|
+
|
|
288
|
+
Driver cursors belong to their logical session and authenticated principal
|
|
289
|
+
generations, so `getMore` can use another connection in the pool. Session
|
|
290
|
+
retirement, expiry, and shutdown release their cursors. Reads made without a
|
|
291
|
+
logical session retain connection ownership and disconnect cleanup.
|
|
292
|
+
|
|
282
293
|
### NoSqlDbServer
|
|
283
294
|
|
|
284
295
|
The core server class. Manages the Rust database engine and exposes connection details.
|
|
@@ -1420,10 +1431,11 @@ result document. Unindexed joins can still require repeated foreign scans.
|
|
|
1420
1431
|
Facet branches replay a shared input buffer or temporary spool; their combined
|
|
1421
1432
|
result must fit the BSON document budget.
|
|
1422
1433
|
|
|
1423
|
-
Scalar ordered indexes can satisfy
|
|
1434
|
+
Scalar ordered indexes can satisfy a sort prefix after equality fields,
|
|
1424
1435
|
including reverse traversal and mixed compound directions. This path currently
|
|
1425
|
-
requires distinct full index keys
|
|
1426
|
-
|
|
1436
|
+
requires distinct full index keys. Equal requested sort keys follow the remaining
|
|
1437
|
+
index columns; include a unique field in the sort when tie order matters. Arrays,
|
|
1438
|
+
unsupported BSON index types, and duplicate full index keys use the general sort executor.
|
|
1427
1439
|
Numeric comparison and scalar equality indexes share exact Int32, Int64, Double,
|
|
1428
1440
|
and Decimal128 ordering, including large integers, signed zero, and NaNs.
|
|
1429
1441
|
|
|
@@ -1695,7 +1707,7 @@ replication.
|
|
|
1695
1707
|
### Unsupported Administrative Commands
|
|
1696
1708
|
|
|
1697
1709
|
NoSQLDB returns `CommandNotFound` (code 59) for the wire commands `validate`,
|
|
1698
|
-
|
|
1710
|
+
legacy `authenticate`, `buildInfo`/`buildinfo`, `hostInfo`,
|
|
1699
1711
|
`whatsmyuri`, `getLog`, `getCmdLineOpts`, `getParameter`, `setFreeMonitoring`,
|
|
1700
1712
|
`currentOp`, `killOp`, `top`, `profile`, `compact`, `reIndex`, `fsync`, and
|
|
1701
1713
|
`connPoolSync`. These commands previously had placeholder success responses but
|
package/ts/00_commitinfo_data.ts
CHANGED