mindoodb 0.0.4 → 0.0.6
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/README-server.md +34 -5
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts +9 -1
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts.map +1 -1
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js +226 -130
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js.map +1 -1
- package/dist/appendonlystores/network/HttpTransport.d.ts +12 -1
- package/dist/appendonlystores/network/HttpTransport.d.ts.map +1 -1
- package/dist/appendonlystores/network/HttpTransport.js +192 -10
- package/dist/appendonlystores/network/HttpTransport.js.map +1 -1
- package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts +3 -1
- package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts.map +1 -1
- package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js +26 -4
- package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js.map +1 -1
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.d.ts +6 -3
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.d.ts.map +1 -1
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.js +79 -10
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.js.map +1 -1
- package/dist/core/BaseMindooDB.d.ts +5 -0
- package/dist/core/BaseMindooDB.d.ts.map +1 -1
- package/dist/core/BaseMindooDB.js +223 -108
- package/dist/core/BaseMindooDB.js.map +1 -1
- package/dist/core/BaseMindooTenant.d.ts +1 -0
- package/dist/core/BaseMindooTenant.d.ts.map +1 -1
- package/dist/core/BaseMindooTenant.js +69 -21
- package/dist/core/BaseMindooTenant.js.map +1 -1
- package/dist/core/MindooDBServerAdmin.d.ts +3 -0
- package/dist/core/MindooDBServerAdmin.d.ts.map +1 -1
- package/dist/core/MindooDBServerAdmin.js +57 -1
- package/dist/core/MindooDBServerAdmin.js.map +1 -1
- package/dist/core/appendonlystores/AttachmentReadPlanner.d.ts +22 -0
- package/dist/core/appendonlystores/AttachmentReadPlanner.d.ts.map +1 -0
- package/dist/core/appendonlystores/AttachmentReadPlanner.js +124 -0
- package/dist/core/appendonlystores/AttachmentReadPlanner.js.map +1 -0
- package/dist/core/appendonlystores/InMemoryContentAddressedStore.d.ts +8 -4
- package/dist/core/appendonlystores/InMemoryContentAddressedStore.d.ts.map +1 -1
- package/dist/core/appendonlystores/InMemoryContentAddressedStore.js +22 -9
- package/dist/core/appendonlystores/InMemoryContentAddressedStore.js.map +1 -1
- package/dist/core/appendonlystores/MaterializationPlanner.d.ts +35 -0
- package/dist/core/appendonlystores/MaterializationPlanner.d.ts.map +1 -1
- package/dist/core/appendonlystores/MaterializationPlanner.js +1 -0
- package/dist/core/appendonlystores/MaterializationPlanner.js.map +1 -1
- package/dist/core/appendonlystores/network/NetworkTransport.d.ts +19 -1
- package/dist/core/appendonlystores/network/NetworkTransport.d.ts.map +1 -1
- package/dist/core/appendonlystores/network/types.d.ts +33 -0
- package/dist/core/appendonlystores/network/types.d.ts.map +1 -1
- package/dist/core/appendonlystores/network/types.js +2 -0
- package/dist/core/appendonlystores/network/types.js.map +1 -1
- package/dist/core/appendonlystores/types.d.ts +91 -3
- package/dist/core/appendonlystores/types.d.ts.map +1 -1
- package/dist/core/types.d.ts +37 -2
- package/dist/core/types.d.ts.map +1 -1
- package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.d.ts +28 -7
- package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.d.ts.map +1 -1
- package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.js +115 -17
- package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.js.map +1 -1
- package/dist/node/server/MindooDBServer.d.ts +7 -0
- package/dist/node/server/MindooDBServer.d.ts.map +1 -1
- package/dist/node/server/MindooDBServer.js +232 -16
- package/dist/node/server/MindooDBServer.js.map +1 -1
- package/dist/node/server/TenantManager.d.ts +17 -2
- package/dist/node/server/TenantManager.d.ts.map +1 -1
- package/dist/node/server/TenantManager.js +142 -20
- package/dist/node/server/TenantManager.js.map +1 -1
- package/dist/node/server/types.d.ts +9 -4
- package/dist/node/server/types.d.ts.map +1 -1
- package/dist/node/server/types.js.map +1 -1
- package/package.json +2 -1
package/dist/core/types.d.ts
CHANGED
|
@@ -28,6 +28,10 @@ export interface MindooDBServerInfo {
|
|
|
28
28
|
signingPublicKey: string;
|
|
29
29
|
/** RSA-OAEP public key in PEM format used for encryption. */
|
|
30
30
|
encryptionPublicKey: string;
|
|
31
|
+
/** Configured JSON request body limit string accepted by the server, e.g. "5mb". */
|
|
32
|
+
maxJsonRequestBodyLimit?: string;
|
|
33
|
+
/** Parsed JSON request body limit in bytes when the configured limit is machine-readable. */
|
|
34
|
+
maxJsonRequestBodyBytes?: number;
|
|
31
35
|
}
|
|
32
36
|
/**
|
|
33
37
|
* An EncryptedPrivateKey is a private key that is encrypted with a password.
|
|
@@ -502,7 +506,7 @@ export interface MindooTenant {
|
|
|
502
506
|
*/
|
|
503
507
|
connectToServer(serverUrl: string, dbId: string): Promise<ContentAddressedStore>;
|
|
504
508
|
}
|
|
505
|
-
export type { ContentAddressedStore, ContentAddressedStoreFactory, CreateStoreResult, OpenStoreOptions, StoreCompactionStatus, StoreScanCursor, StoreScanFilters, StoreScanResult, StoreIdBloomSummary, MaterializationPlanOptions, MaterializationPlanDiagnostics, DocumentMaterializationPlan, DocumentMaterializationBatchPlan, } from "./appendonlystores/types";
|
|
509
|
+
export type { ContentAddressedStore, ContentAddressedStoreFactory, CreateStoreResult, OpenStoreOptions, StoreCompactionStatus, StoreScanCursor, StoreScanFilters, StoreScanResult, StoreIdBloomSummary, AttachmentReadPlanOptions, AttachmentReadPlanChunk, AttachmentReadPlan, MaterializationPlanOptions, MaterializationPlanDiagnostics, DocumentMaterializationPlan, DocumentMaterializationBatchPlan, } from "./appendonlystores/types";
|
|
506
510
|
/**
|
|
507
511
|
* The type of entry stored in the ContentAddressedStore.
|
|
508
512
|
* Entry types are prefixed to indicate their domain:
|
|
@@ -564,6 +568,19 @@ export interface StoreEntryMetadata {
|
|
|
564
568
|
* The timestamp when this entry was created (milliseconds since Unix epoch).
|
|
565
569
|
*/
|
|
566
570
|
createdAt: number;
|
|
571
|
+
/**
|
|
572
|
+
* Monotonic store-local insertion order assigned when the entry becomes
|
|
573
|
+
* visible in a specific replica.
|
|
574
|
+
*
|
|
575
|
+
* This is distinct from `createdAt`:
|
|
576
|
+
* - `createdAt` captures author/origin time and is stable across replicas
|
|
577
|
+
* - `receiptOrder` captures local receipt/persistence order and may differ
|
|
578
|
+
* between replicas
|
|
579
|
+
*
|
|
580
|
+
* Stores may omit this on pre-migration metadata, but `scanEntriesSince()`
|
|
581
|
+
* must only return cursors built from entries that have a concrete value.
|
|
582
|
+
*/
|
|
583
|
+
receiptOrder?: number;
|
|
567
584
|
/**
|
|
568
585
|
* The public signing key of the user who created this entry (Ed25519, PEM format).
|
|
569
586
|
* Used for signature verification and audit trails.
|
|
@@ -683,6 +700,14 @@ export interface DocumentCacheConfig {
|
|
|
683
700
|
* Default: same as `maxEntries`
|
|
684
701
|
*/
|
|
685
702
|
restoreLimit?: number;
|
|
703
|
+
/**
|
|
704
|
+
* When enabled, verifies after cache restore that the restored document
|
|
705
|
+
* index still matches the underlying local store and rebuilds metadata if a
|
|
706
|
+
* stale checkpoint is detected. Intended for troubleshooting sync/cache
|
|
707
|
+
* inconsistencies because it adds an extra metadata scan during startup.
|
|
708
|
+
* Default: false
|
|
709
|
+
*/
|
|
710
|
+
reconcileRestoredIndexOnInit?: boolean;
|
|
686
711
|
}
|
|
687
712
|
/**
|
|
688
713
|
* Configuration for automatic snapshot creation.
|
|
@@ -1289,6 +1314,7 @@ export interface SyncOptions {
|
|
|
1289
1314
|
*/
|
|
1290
1315
|
export interface SyncResult {
|
|
1291
1316
|
transferredEntries: number;
|
|
1317
|
+
scannedEntries: number;
|
|
1292
1318
|
cancelled: boolean;
|
|
1293
1319
|
}
|
|
1294
1320
|
export interface MindooDB {
|
|
@@ -1392,11 +1418,20 @@ export interface MindooDB {
|
|
|
1392
1418
|
*/
|
|
1393
1419
|
getDocumentHistoryPage(docId: string, options?: DocumentHistoryPageOptions): Promise<DocumentHistoryPageResult>;
|
|
1394
1420
|
/**
|
|
1395
|
-
* Get all document IDs in this database.
|
|
1421
|
+
* Get all non-deleted document IDs in this database.
|
|
1396
1422
|
*
|
|
1397
1423
|
* @return A list of document IDs
|
|
1398
1424
|
*/
|
|
1399
1425
|
getAllDocumentIds(): Promise<string[]>;
|
|
1426
|
+
/**
|
|
1427
|
+
* Get all deleted document IDs in this database.
|
|
1428
|
+
*
|
|
1429
|
+
* Deleted documents remain available through history/time-travel APIs until
|
|
1430
|
+
* their history is purged.
|
|
1431
|
+
*
|
|
1432
|
+
* @return A list of deleted document IDs
|
|
1433
|
+
*/
|
|
1434
|
+
getDeletedDocumentIds(): Promise<string[]>;
|
|
1400
1435
|
/**
|
|
1401
1436
|
* Get all document IDs that existed at a specific timestamp.
|
|
1402
1437
|
*
|
package/dist/core/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
*
|
|
39
39
|
* @module BasicOnDiskContentAddressedStore
|
|
40
40
|
*/
|
|
41
|
-
import { ContentAddressedStore, ContentAddressedStoreFactory, CreateStoreResult, DocumentMaterializationBatchPlan, DocumentMaterializationPlan, MaterializationPlanOptions, OpenStoreOptions, StoreIndexBuildStatus, StoreCompactionStatus, AwaitIndexReadyOptions, StoreScanCursor, StoreScanFilters, StoreScanResult, StoreIdBloomSummary } from "../../core/appendonlystores/types";
|
|
41
|
+
import { AttachmentReadPlan, AttachmentReadPlanOptions, ContentAddressedStore, ContentAddressedStoreFactory, CreateStoreResult, DocumentMaterializationBatchPlan, DocumentMaterializationPlan, MaterializationPlanOptions, OpenStoreOptions, StoreIndexBuildStatus, StoreCompactionStatus, AwaitIndexReadyOptions, StoreScanCursor, StoreScanFilters, StoreScanResult, StoreIdBloomSummary } from "../../core/appendonlystores/types";
|
|
42
42
|
import type { StoreEntry, StoreEntryMetadata, StoreEntryType } from "../../core/types";
|
|
43
43
|
import { Logger } from "../../core/logging";
|
|
44
44
|
/**
|
|
@@ -111,11 +111,13 @@ export declare class BasicOnDiskContentAddressedStore implements ContentAddresse
|
|
|
111
111
|
*/
|
|
112
112
|
private contentRefCount;
|
|
113
113
|
/**
|
|
114
|
-
* All metadata sorted by `(
|
|
114
|
+
* All metadata sorted by `(receiptOrder ASC, id ASC)`.
|
|
115
115
|
* Supports O(log N) lower-bound binary search for cursor-based scans
|
|
116
116
|
* in {@link scanEntriesSince}.
|
|
117
117
|
*/
|
|
118
118
|
private orderedMetadata;
|
|
119
|
+
/** Next monotonic local receipt order assigned on insert. */
|
|
120
|
+
private nextReceiptOrder;
|
|
119
121
|
/** Current phase and progress of the index build (building / ready). */
|
|
120
122
|
private indexStatus;
|
|
121
123
|
/**
|
|
@@ -159,7 +161,7 @@ export declare class BasicOnDiskContentAddressedStore implements ContentAddresse
|
|
|
159
161
|
*
|
|
160
162
|
* Clears all in-memory structures, reads every `entries/*.json` file,
|
|
161
163
|
* populates the primary, secondary, and ref-count indexes, and finally
|
|
162
|
-
* sorts `orderedMetadata` by `(
|
|
164
|
+
* sorts `orderedMetadata` by `(receiptOrder, id)`.
|
|
163
165
|
*
|
|
164
166
|
* This is the slowest startup path (O(N) filesystem reads) and is only
|
|
165
167
|
* used when the persisted snapshot + segments cannot be validated.
|
|
@@ -265,13 +267,13 @@ export declare class BasicOnDiskContentAddressedStore implements ContentAddresse
|
|
|
265
267
|
*/
|
|
266
268
|
private computeSegmentFilesTotalBytes;
|
|
267
269
|
/**
|
|
268
|
-
* Compare two metadata entries by the canonical sort key `(
|
|
270
|
+
* Compare two metadata entries by the canonical sort key `(receiptOrder, id)`.
|
|
269
271
|
* Used to maintain and query the `orderedMetadata` sorted array.
|
|
270
272
|
*/
|
|
271
273
|
private compareMetadata;
|
|
272
274
|
/**
|
|
273
275
|
* Binary search for the first index in `orderedMetadata` that is strictly
|
|
274
|
-
* greater than the given cursor position `(
|
|
276
|
+
* greater than the given cursor position `(receiptOrder, id)`.
|
|
275
277
|
*
|
|
276
278
|
* Returns 0 when cursor is `null` (start from the beginning).
|
|
277
279
|
* Runs in O(log N) time.
|
|
@@ -310,6 +312,23 @@ export declare class BasicOnDiskContentAddressedStore implements ContentAddresse
|
|
|
310
312
|
* Updates `entries`, `docIndex`, `orderedMetadata`, and `contentRefCount`.
|
|
311
313
|
*/
|
|
312
314
|
private applyMetadataUpsert;
|
|
315
|
+
private recomputeNextReceiptOrder;
|
|
316
|
+
private compareLegacyCreatedAtId;
|
|
317
|
+
/**
|
|
318
|
+
* Ensure every persisted metadata file has a `receiptOrder`.
|
|
319
|
+
*
|
|
320
|
+
* Older on-disk stores predate receipt-order discovery and therefore only
|
|
321
|
+
* persist `createdAt`. On startup we detect that legacy shape, assign a
|
|
322
|
+
* deterministic synthetic `receiptOrder` by sorting existing entries using
|
|
323
|
+
* the old `(createdAt, id)` rule, and rewrite the metadata files in that
|
|
324
|
+
* order. This preserves a stable forward cursor contract after migration,
|
|
325
|
+
* even though the exact historic arrival order is unknowable for preexisting
|
|
326
|
+
* rows.
|
|
327
|
+
*
|
|
328
|
+
* @returns `true` when a backfill rewrite was performed, `false` when the
|
|
329
|
+
* store already had receipt-order metadata (or was empty).
|
|
330
|
+
*/
|
|
331
|
+
private ensurePersistedReceiptOrder;
|
|
313
332
|
/** List all `.json` files in the `entries/` directory. */
|
|
314
333
|
private listEntryFiles;
|
|
315
334
|
/** Resolve the absolute path to the metadata file for a given entry id. */
|
|
@@ -389,6 +408,8 @@ export declare class BasicOnDiskContentAddressedStore implements ContentAddresse
|
|
|
389
408
|
* is O(1); the content read is always a disk I/O.
|
|
390
409
|
*/
|
|
391
410
|
getEntries(ids: string[]): Promise<StoreEntry[]>;
|
|
411
|
+
getEntryMetadata(id: string): Promise<StoreEntryMetadata | null>;
|
|
412
|
+
planAttachmentReadByWalkingMetadata(lastChunkId: string, attachmentSize: number, options: AttachmentReadPlanOptions): Promise<AttachmentReadPlan>;
|
|
392
413
|
/**
|
|
393
414
|
* Check which of the given ids exist in the store.
|
|
394
415
|
*
|
|
@@ -425,7 +446,7 @@ export declare class BasicOnDiskContentAddressedStore implements ContentAddresse
|
|
|
425
446
|
/**
|
|
426
447
|
* Return all entry ids in the store.
|
|
427
448
|
*
|
|
428
|
-
* When indexing is enabled, returns ids in `(
|
|
449
|
+
* When indexing is enabled, returns ids in `(receiptOrder, id)` order.
|
|
429
450
|
* Without indexing, order depends on the filesystem directory listing.
|
|
430
451
|
*/
|
|
431
452
|
getAllIds(): Promise<string[]>;
|
|
@@ -434,7 +455,7 @@ export declare class BasicOnDiskContentAddressedStore implements ContentAddresse
|
|
|
434
455
|
*
|
|
435
456
|
* Designed for high-volume synchronization: the caller repeatedly advances
|
|
436
457
|
* a cursor to stream through all entries in deterministic
|
|
437
|
-
* `(
|
|
458
|
+
* `(receiptOrder ASC, id ASC)` order, optionally applying filters.
|
|
438
459
|
*
|
|
439
460
|
* **Indexed path** (default):
|
|
440
461
|
* - O(log N) binary search for the cursor position.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicOnDiskContentAddressedStore.d.ts","sourceRoot":"","sources":["../../../src/node/appendonlystores/BasicOnDiskContentAddressedStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAKH,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,iBAAiB,EACjB,gCAAgC,EAChC,2BAA2B,EAC3B,0BAA0B,EAC1B,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACpB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"BasicOnDiskContentAddressedStore.d.ts","sourceRoot":"","sources":["../../../src/node/appendonlystores/BasicOnDiskContentAddressedStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,6 +77,7 @@ exports.BasicOnDiskContentAddressedStoreFactory = exports.BasicOnDiskContentAddr
|
|
|
77
77
|
const promises_1 = require("fs/promises");
|
|
78
78
|
const fs_1 = require("fs");
|
|
79
79
|
const path = __importStar(require("path"));
|
|
80
|
+
const AttachmentReadPlanner_1 = require("../../core/appendonlystores/AttachmentReadPlanner");
|
|
80
81
|
const bloom_1 = require("../../core/appendonlystores/bloom");
|
|
81
82
|
const MaterializationPlanner_1 = require("../../core/appendonlystores/MaterializationPlanner");
|
|
82
83
|
const logging_1 = require("../../core/logging");
|
|
@@ -199,11 +200,13 @@ class BasicOnDiskContentAddressedStore {
|
|
|
199
200
|
*/
|
|
200
201
|
this.contentRefCount = new Map();
|
|
201
202
|
/**
|
|
202
|
-
* All metadata sorted by `(
|
|
203
|
+
* All metadata sorted by `(receiptOrder ASC, id ASC)`.
|
|
203
204
|
* Supports O(log N) lower-bound binary search for cursor-based scans
|
|
204
205
|
* in {@link scanEntriesSince}.
|
|
205
206
|
*/
|
|
206
207
|
this.orderedMetadata = [];
|
|
208
|
+
/** Next monotonic local receipt order assigned on insert. */
|
|
209
|
+
this.nextReceiptOrder = 1;
|
|
207
210
|
this.dbId = dbId;
|
|
208
211
|
this.logger =
|
|
209
212
|
logger ||
|
|
@@ -266,6 +269,7 @@ class BasicOnDiskContentAddressedStore {
|
|
|
266
269
|
await (0, promises_1.mkdir)(this.entriesDir, { recursive: true });
|
|
267
270
|
await (0, promises_1.mkdir)(this.contentDir, { recursive: true });
|
|
268
271
|
await (0, promises_1.mkdir)(this.metadataSegmentsDir, { recursive: true });
|
|
272
|
+
const migratedReceiptOrder = await this.ensurePersistedReceiptOrder();
|
|
269
273
|
if (!this.indexingEnabled) {
|
|
270
274
|
this.indexStatus = {
|
|
271
275
|
phase: "ready",
|
|
@@ -274,6 +278,17 @@ class BasicOnDiskContentAddressedStore {
|
|
|
274
278
|
};
|
|
275
279
|
return;
|
|
276
280
|
}
|
|
281
|
+
if (migratedReceiptOrder) {
|
|
282
|
+
await this.rebuildInMemoryIndexes();
|
|
283
|
+
await this.persistMetadataIndex();
|
|
284
|
+
await this.clearMetadataSegments(Array.from(this.appliedMetadataSegmentFiles));
|
|
285
|
+
this.indexStatus = {
|
|
286
|
+
phase: "ready",
|
|
287
|
+
indexingEnabled: true,
|
|
288
|
+
progress01: 1,
|
|
289
|
+
};
|
|
290
|
+
return;
|
|
291
|
+
}
|
|
277
292
|
// Startup path:
|
|
278
293
|
// 1) load snapshot (fast path)
|
|
279
294
|
// 2) replay append-only segments (apply recent mutations)
|
|
@@ -287,6 +302,7 @@ class BasicOnDiskContentAddressedStore {
|
|
|
287
302
|
await this.persistMetadataIndex();
|
|
288
303
|
await this.clearMetadataSegments(Array.from(this.appliedMetadataSegmentFiles));
|
|
289
304
|
}
|
|
305
|
+
this.recomputeNextReceiptOrder();
|
|
290
306
|
this.indexStatus = {
|
|
291
307
|
phase: "ready",
|
|
292
308
|
indexingEnabled: true,
|
|
@@ -309,13 +325,14 @@ class BasicOnDiskContentAddressedStore {
|
|
|
309
325
|
this.contentRefCount.clear();
|
|
310
326
|
this.orderedMetadata = [];
|
|
311
327
|
this.appliedMetadataSegmentFiles.clear();
|
|
328
|
+
this.nextReceiptOrder = 1;
|
|
312
329
|
}
|
|
313
330
|
/**
|
|
314
331
|
* Full index rebuild from the authoritative entry files on disk.
|
|
315
332
|
*
|
|
316
333
|
* Clears all in-memory structures, reads every `entries/*.json` file,
|
|
317
334
|
* populates the primary, secondary, and ref-count indexes, and finally
|
|
318
|
-
* sorts `orderedMetadata` by `(
|
|
335
|
+
* sorts `orderedMetadata` by `(receiptOrder, id)`.
|
|
319
336
|
*
|
|
320
337
|
* This is the slowest startup path (O(N) filesystem reads) and is only
|
|
321
338
|
* used when the persisted snapshot + segments cannot be validated.
|
|
@@ -339,7 +356,8 @@ class BasicOnDiskContentAddressedStore {
|
|
|
339
356
|
this.contentRefCount.set(metadata.contentHash, (this.contentRefCount.get(metadata.contentHash) || 0) + 1);
|
|
340
357
|
this.orderedMetadata.push(metadata);
|
|
341
358
|
}
|
|
342
|
-
this.orderedMetadata.sort((a, b) =>
|
|
359
|
+
this.orderedMetadata.sort((a, b) => this.compareMetadata(a, b));
|
|
360
|
+
this.recomputeNextReceiptOrder();
|
|
343
361
|
}
|
|
344
362
|
/**
|
|
345
363
|
* Attempt to hydrate the in-memory index from the persisted
|
|
@@ -373,6 +391,8 @@ class BasicOnDiskContentAddressedStore {
|
|
|
373
391
|
this.contentRefCount.set(metadata.contentHash, (this.contentRefCount.get(metadata.contentHash) || 0) + 1);
|
|
374
392
|
this.orderedMetadata.push(metadata);
|
|
375
393
|
}
|
|
394
|
+
this.orderedMetadata.sort((a, b) => this.compareMetadata(a, b));
|
|
395
|
+
this.recomputeNextReceiptOrder();
|
|
376
396
|
return true;
|
|
377
397
|
}
|
|
378
398
|
catch (err) {
|
|
@@ -595,18 +615,20 @@ class BasicOnDiskContentAddressedStore {
|
|
|
595
615
|
// In-memory index helpers
|
|
596
616
|
// ---------------------------------------------------------------------------
|
|
597
617
|
/**
|
|
598
|
-
* Compare two metadata entries by the canonical sort key `(
|
|
618
|
+
* Compare two metadata entries by the canonical sort key `(receiptOrder, id)`.
|
|
599
619
|
* Used to maintain and query the `orderedMetadata` sorted array.
|
|
600
620
|
*/
|
|
601
621
|
compareMetadata(a, b) {
|
|
602
|
-
|
|
603
|
-
|
|
622
|
+
const leftReceiptOrder = a.receiptOrder ?? 0;
|
|
623
|
+
const rightReceiptOrder = b.receiptOrder ?? 0;
|
|
624
|
+
if (leftReceiptOrder !== rightReceiptOrder) {
|
|
625
|
+
return leftReceiptOrder - rightReceiptOrder;
|
|
604
626
|
}
|
|
605
627
|
return a.id.localeCompare(b.id);
|
|
606
628
|
}
|
|
607
629
|
/**
|
|
608
630
|
* Binary search for the first index in `orderedMetadata` that is strictly
|
|
609
|
-
* greater than the given cursor position `(
|
|
631
|
+
* greater than the given cursor position `(receiptOrder, id)`.
|
|
610
632
|
*
|
|
611
633
|
* Returns 0 when cursor is `null` (start from the beginning).
|
|
612
634
|
* Runs in O(log N) time.
|
|
@@ -620,8 +642,8 @@ class BasicOnDiskContentAddressedStore {
|
|
|
620
642
|
while (left < right) {
|
|
621
643
|
const mid = Math.floor((left + right) / 2);
|
|
622
644
|
const candidate = this.orderedMetadata[mid];
|
|
623
|
-
const greater = candidate.
|
|
624
|
-
(candidate.
|
|
645
|
+
const greater = (candidate.receiptOrder ?? 0) > cursor.receiptOrder ||
|
|
646
|
+
((candidate.receiptOrder ?? 0) === cursor.receiptOrder && candidate.id > cursor.id);
|
|
625
647
|
if (greater) {
|
|
626
648
|
right = mid;
|
|
627
649
|
}
|
|
@@ -725,6 +747,70 @@ class BasicOnDiskContentAddressedStore {
|
|
|
725
747
|
this.docIndex.get(metadata.docId).add(metadata.id);
|
|
726
748
|
this.contentRefCount.set(metadata.contentHash, (this.contentRefCount.get(metadata.contentHash) || 0) + 1);
|
|
727
749
|
this.insertOrderedMetadata(metadata);
|
|
750
|
+
this.nextReceiptOrder = Math.max(this.nextReceiptOrder, (metadata.receiptOrder ?? 0) + 1);
|
|
751
|
+
}
|
|
752
|
+
recomputeNextReceiptOrder() {
|
|
753
|
+
const maxReceiptOrder = this.orderedMetadata.reduce((max, metadata) => Math.max(max, metadata.receiptOrder ?? 0), 0);
|
|
754
|
+
this.nextReceiptOrder = maxReceiptOrder + 1;
|
|
755
|
+
}
|
|
756
|
+
compareLegacyCreatedAtId(a, b) {
|
|
757
|
+
if (a.createdAt !== b.createdAt) {
|
|
758
|
+
return a.createdAt - b.createdAt;
|
|
759
|
+
}
|
|
760
|
+
return a.id.localeCompare(b.id);
|
|
761
|
+
}
|
|
762
|
+
/**
|
|
763
|
+
* Ensure every persisted metadata file has a `receiptOrder`.
|
|
764
|
+
*
|
|
765
|
+
* Older on-disk stores predate receipt-order discovery and therefore only
|
|
766
|
+
* persist `createdAt`. On startup we detect that legacy shape, assign a
|
|
767
|
+
* deterministic synthetic `receiptOrder` by sorting existing entries using
|
|
768
|
+
* the old `(createdAt, id)` rule, and rewrite the metadata files in that
|
|
769
|
+
* order. This preserves a stable forward cursor contract after migration,
|
|
770
|
+
* even though the exact historic arrival order is unknowable for preexisting
|
|
771
|
+
* rows.
|
|
772
|
+
*
|
|
773
|
+
* @returns `true` when a backfill rewrite was performed, `false` when the
|
|
774
|
+
* store already had receipt-order metadata (or was empty).
|
|
775
|
+
*/
|
|
776
|
+
async ensurePersistedReceiptOrder() {
|
|
777
|
+
const files = await this.listEntryFiles();
|
|
778
|
+
if (files.length === 0) {
|
|
779
|
+
this.nextReceiptOrder = 1;
|
|
780
|
+
return false;
|
|
781
|
+
}
|
|
782
|
+
const metadataList = [];
|
|
783
|
+
let missingReceiptOrder = false;
|
|
784
|
+
let maxReceiptOrder = 0;
|
|
785
|
+
for (const fileName of files) {
|
|
786
|
+
const metadata = await this.readMetadataByFileName(fileName);
|
|
787
|
+
if (!metadata) {
|
|
788
|
+
continue;
|
|
789
|
+
}
|
|
790
|
+
metadataList.push({ fileName, metadata });
|
|
791
|
+
if (typeof metadata.receiptOrder !== "number") {
|
|
792
|
+
missingReceiptOrder = true;
|
|
793
|
+
}
|
|
794
|
+
else {
|
|
795
|
+
maxReceiptOrder = Math.max(maxReceiptOrder, metadata.receiptOrder);
|
|
796
|
+
}
|
|
797
|
+
}
|
|
798
|
+
if (!missingReceiptOrder) {
|
|
799
|
+
this.nextReceiptOrder = maxReceiptOrder + 1;
|
|
800
|
+
return false;
|
|
801
|
+
}
|
|
802
|
+
metadataList.sort((left, right) => this.compareLegacyCreatedAtId(left.metadata, right.metadata));
|
|
803
|
+
let nextReceiptOrder = 1;
|
|
804
|
+
for (const { fileName, metadata } of metadataList) {
|
|
805
|
+
const migrated = {
|
|
806
|
+
...metadata,
|
|
807
|
+
receiptOrder: nextReceiptOrder++,
|
|
808
|
+
};
|
|
809
|
+
const filePath = path.join(this.entriesDir, fileName);
|
|
810
|
+
await this.writeFileAtomic(filePath, JSON.stringify(serializeMetadata(migrated)));
|
|
811
|
+
}
|
|
812
|
+
this.nextReceiptOrder = nextReceiptOrder;
|
|
813
|
+
return true;
|
|
728
814
|
}
|
|
729
815
|
// ---------------------------------------------------------------------------
|
|
730
816
|
// Filesystem I/O helpers
|
|
@@ -908,7 +994,11 @@ class BasicOnDiskContentAddressedStore {
|
|
|
908
994
|
if (!(await this.fileExists(contentPath))) {
|
|
909
995
|
await this.writeFileAtomic(contentPath, entry.encryptedData);
|
|
910
996
|
}
|
|
911
|
-
const { encryptedData, ...
|
|
997
|
+
const { encryptedData, receiptOrder: _ignoredReceiptOrder, ...rest } = entry;
|
|
998
|
+
const metadata = {
|
|
999
|
+
...rest,
|
|
1000
|
+
receiptOrder: this.nextReceiptOrder++,
|
|
1001
|
+
};
|
|
912
1002
|
const serialized = JSON.stringify(serializeMetadata(metadata));
|
|
913
1003
|
await this.writeFileAtomic(metadataPath, serialized);
|
|
914
1004
|
hasMutation = true;
|
|
@@ -949,6 +1039,14 @@ class BasicOnDiskContentAddressedStore {
|
|
|
949
1039
|
}
|
|
950
1040
|
return result;
|
|
951
1041
|
}
|
|
1042
|
+
async getEntryMetadata(id) {
|
|
1043
|
+
await this.ensureInitialized();
|
|
1044
|
+
return this.readMetadataById(id);
|
|
1045
|
+
}
|
|
1046
|
+
async planAttachmentReadByWalkingMetadata(lastChunkId, attachmentSize, options) {
|
|
1047
|
+
await this.ensureInitialized();
|
|
1048
|
+
return (0, AttachmentReadPlanner_1.planAttachmentReadByWalkingMetadata)(this, lastChunkId, attachmentSize, options);
|
|
1049
|
+
}
|
|
952
1050
|
/**
|
|
953
1051
|
* Check which of the given ids exist in the store.
|
|
954
1052
|
*
|
|
@@ -1040,7 +1138,7 @@ class BasicOnDiskContentAddressedStore {
|
|
|
1040
1138
|
/**
|
|
1041
1139
|
* Return all entry ids in the store.
|
|
1042
1140
|
*
|
|
1043
|
-
* When indexing is enabled, returns ids in `(
|
|
1141
|
+
* When indexing is enabled, returns ids in `(receiptOrder, id)` order.
|
|
1044
1142
|
* Without indexing, order depends on the filesystem directory listing.
|
|
1045
1143
|
*/
|
|
1046
1144
|
async getAllIds() {
|
|
@@ -1056,7 +1154,7 @@ class BasicOnDiskContentAddressedStore {
|
|
|
1056
1154
|
*
|
|
1057
1155
|
* Designed for high-volume synchronization: the caller repeatedly advances
|
|
1058
1156
|
* a cursor to stream through all entries in deterministic
|
|
1059
|
-
* `(
|
|
1157
|
+
* `(receiptOrder ASC, id ASC)` order, optionally applying filters.
|
|
1060
1158
|
*
|
|
1061
1159
|
* **Indexed path** (default):
|
|
1062
1160
|
* - O(log N) binary search for the cursor position.
|
|
@@ -1082,7 +1180,7 @@ class BasicOnDiskContentAddressedStore {
|
|
|
1082
1180
|
const last = page.length > 0 ? page[page.length - 1] : null;
|
|
1083
1181
|
return {
|
|
1084
1182
|
entries: page,
|
|
1085
|
-
nextCursor: last ? {
|
|
1183
|
+
nextCursor: last ? { receiptOrder: last.receiptOrder ?? 0, id: last.id } : cursor,
|
|
1086
1184
|
hasMore: startIndex + page.length < this.orderedMetadata.length,
|
|
1087
1185
|
};
|
|
1088
1186
|
}
|
|
@@ -1106,7 +1204,7 @@ class BasicOnDiskContentAddressedStore {
|
|
|
1106
1204
|
const last = page.length > 0 ? page[page.length - 1] : null;
|
|
1107
1205
|
return {
|
|
1108
1206
|
entries: page,
|
|
1109
|
-
nextCursor: last ? {
|
|
1207
|
+
nextCursor: last ? { receiptOrder: last.receiptOrder ?? 0, id: last.id } : cursor,
|
|
1110
1208
|
hasMore,
|
|
1111
1209
|
};
|
|
1112
1210
|
}
|
|
@@ -1127,10 +1225,10 @@ class BasicOnDiskContentAddressedStore {
|
|
|
1127
1225
|
}
|
|
1128
1226
|
return true;
|
|
1129
1227
|
})
|
|
1130
|
-
.sort((a, b) =>
|
|
1228
|
+
.sort((a, b) => this.compareMetadata(a, b));
|
|
1131
1229
|
const startIndex = cursor === null
|
|
1132
1230
|
? 0
|
|
1133
|
-
: all.findIndex((meta) => meta.
|
|
1231
|
+
: all.findIndex((meta) => (meta.receiptOrder ?? 0) > cursor.receiptOrder || ((meta.receiptOrder ?? 0) === cursor.receiptOrder && meta.id > cursor.id));
|
|
1134
1232
|
if (startIndex === -1) {
|
|
1135
1233
|
return { entries: [], nextCursor: cursor, hasMore: false };
|
|
1136
1234
|
}
|
|
@@ -1138,7 +1236,7 @@ class BasicOnDiskContentAddressedStore {
|
|
|
1138
1236
|
const last = page.length > 0 ? page[page.length - 1] : null;
|
|
1139
1237
|
return {
|
|
1140
1238
|
entries: page,
|
|
1141
|
-
nextCursor: last ? {
|
|
1239
|
+
nextCursor: last ? { receiptOrder: last.receiptOrder ?? 0, id: last.id } : cursor,
|
|
1142
1240
|
hasMore: startIndex + page.length < all.length,
|
|
1143
1241
|
};
|
|
1144
1242
|
}
|