@harperfast/harper 5.2.4 → 5.2.5

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.
Files changed (50) hide show
  1. package/components/status/crossThread.ts +69 -44
  2. package/components/status/types.ts +1 -0
  3. package/dist/components/status/crossThread.d.ts +1 -0
  4. package/dist/components/status/crossThread.js +57 -41
  5. package/dist/components/status/crossThread.js.map +1 -1
  6. package/dist/components/status/types.d.ts +1 -0
  7. package/dist/resources/DatabaseTransaction.d.ts +28 -0
  8. package/dist/resources/DatabaseTransaction.js +110 -8
  9. package/dist/resources/DatabaseTransaction.js.map +1 -1
  10. package/dist/resources/ResourceInterface.d.ts +15 -0
  11. package/dist/resources/ResourceInterface.js.map +1 -1
  12. package/dist/resources/Table.js +3 -0
  13. package/dist/resources/Table.js.map +1 -1
  14. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +11 -0
  15. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +153 -51
  16. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
  17. package/dist/resources/transaction.js +3 -1
  18. package/dist/resources/transaction.js.map +1 -1
  19. package/dist/server/itc/serverHandlers.js +2 -1
  20. package/dist/server/itc/serverHandlers.js.map +1 -1
  21. package/dist/server/threads/manageThreads.d.ts +1 -0
  22. package/dist/server/threads/manageThreads.js +17 -2
  23. package/dist/server/threads/manageThreads.js.map +1 -1
  24. package/npm-shrinkwrap.json +2 -2
  25. package/package.json +1 -1
  26. package/resources/DESIGN.md +19 -18
  27. package/resources/DatabaseTransaction.ts +124 -15
  28. package/resources/ResourceInterface.ts +15 -0
  29. package/resources/Table.ts +3 -0
  30. package/resources/indexes/HierarchicalNavigableSmallWorld.ts +153 -54
  31. package/resources/transaction.ts +3 -1
  32. package/schema.graphql +8 -3
  33. package/server/itc/serverHandlers.js +2 -1
  34. package/server/threads/manageThreads.js +17 -2
  35. package/studio/web/assets/{Chat-BvOlYIhe.js → Chat-Lgj1d-8d.js} +1 -1
  36. package/studio/web/assets/{FloatingChat-fCJiJCH2.js → FloatingChat-jLWvR4kI.js} +3 -3
  37. package/studio/web/assets/{apiToken-bKwPv0uN.js → apiToken-DYI4DqWa.js} +1 -1
  38. package/studio/web/assets/{applications-BZ47njJ_.js → applications-DCmc9-lk.js} +1 -1
  39. package/studio/web/assets/{index-DF1fSnXV.js → index-CqbCnqsT.js} +4 -4
  40. package/studio/web/assets/{index.lazy-DWt8ubrr.js → index.lazy-BNqr3j0f.js} +3 -3
  41. package/studio/web/assets/{notifications-B5ZBOni1.js → notifications-Bb2cj14_.js} +1 -1
  42. package/studio/web/assets/{notifications-gVx0lA8H.js → notifications-DVlKonbI.js} +1 -1
  43. package/studio/web/assets/{profile-D7g0x28A.js → profile-BSQWfYfq.js} +1 -1
  44. package/studio/web/assets/{regions-DRkhlkiD.js → regions-Dk3g8bBF.js} +1 -1
  45. package/studio/web/assets/{setComponentFile-DQkkobG5.js → setComponentFile-DoITgNLb.js} +1 -1
  46. package/studio/web/assets/{setup-nf-EOheW.js → setup-CiEALLa7.js} +1 -1
  47. package/studio/web/assets/{status-B2tOM3RF.js → status-CK9tD-Nd.js} +1 -1
  48. package/studio/web/assets/{swagger-ui-react-UktCouQ0.js → swagger-ui-react-CxjCDFB-.js} +1 -1
  49. package/studio/web/assets/{useEntityRestURL-alqAn3dT.js → useEntityRestURL-Cy-0i1UZ.js} +1 -1
  50. package/studio/web/index.html +1 -1
@@ -59,6 +59,8 @@ const rocksdb_js_1 = require("@harperfast/rocksdb-js");
59
59
  const RETRY_NOW_VALUE = rocksdb_js_1.constants.RETRY_NOW_VALUE;
60
60
  const ordered_binary_1 = require("ordered-binary");
61
61
  const trackedTxns = new Set();
62
+ // Read options for a rotated generation's native transactions; shared because they never vary.
63
+ const SNAPSHOT_FREE = Object.freeze({ disableSnapshot: true });
62
64
  // Logical transactions the monitor supervises for their WRITES, kept apart from trackedTxns because the
63
65
  // two have different units and different consumers: trackedTxns is per-link, bounds a read snapshot, and
64
66
  // is what the read-queue-depth metric counts, while this holds one entry per logical transaction — the
@@ -280,6 +282,15 @@ function writeKeyId(key) {
280
282
  }
281
283
  class DatabaseTransaction {
282
284
  #context;
285
+ // Whether a resources/transaction.ts scope owns this instance — i.e. a final commit or abort is
286
+ // guaranteed to follow. Only such a transaction may be rotated to a new generation by a mid-scope
287
+ // commit (see rotateAfterMidScopeCommit); anything else must commit each later write immediately,
288
+ // because nothing would commit staged ones. Settable only at construction, so it cannot be turned on
289
+ // for a transaction that is already attached to a context and running.
290
+ #scopeOwned;
291
+ constructor(options) {
292
+ this.#scopeOwned = options?.scopeOwned === true;
293
+ }
283
294
  writes = []; // the set of writes to commit if the conditions are met
284
295
  completions = []; // the set of outstanding async operations to complete
285
296
  db;
@@ -297,6 +308,11 @@ class DatabaseTransaction {
297
308
  overloadChecked;
298
309
  open = exports.TRANSACTION_STATE.OPEN;
299
310
  replicatedConfirmation;
311
+ // Set once a mid-scope commit has rotated this instance to a new generation: every native
312
+ // transaction it opens from then on reads WITHOUT a snapshot. Committing mid-scope is how a handler
313
+ // asks to stop reading a pinned snapshot, so re-pinning one for the rest of the scope would take
314
+ // back what it asked for.
315
+ snapshotFree = false;
300
316
  getReadTxn(disableSnapshot) {
301
317
  this.readTxnRefCount = (this.readTxnRefCount || 0) + 1;
302
318
  // The limit is an IDLE limit. Writes always re-arm it (see addWrite), but reads only do so
@@ -323,7 +339,10 @@ class DatabaseTransaction {
323
339
  // snapshot that blocks compaction. Only applied when creating the transaction fresh; an
324
340
  // already-open transaction keeps whatever snapshot mode it was created with.
325
341
  // `coordinatedRetry` signals IsBusy write conflicts as RETRY_NOW rather than ERR_BUSY.
326
- this.attachOwnedTransaction(new rocksdb_js_1.Transaction(this.db.store, { coordinatedRetry: true, disableSnapshot }));
342
+ this.attachOwnedTransaction(new rocksdb_js_1.Transaction(this.db.store, {
343
+ coordinatedRetry: true,
344
+ disableSnapshot: disableSnapshot || this.snapshotFree,
345
+ }));
327
346
  if (this.timestamp) {
328
347
  this.transaction.setTimestamp(this.timestamp);
329
348
  }
@@ -645,7 +664,7 @@ class DatabaseTransaction {
645
664
  transaction = this.transaction;
646
665
  let immediateCommit = false;
647
666
  if (!transaction) {
648
- transaction = new rocksdb_js_1.Transaction(operation.store.store);
667
+ transaction = new rocksdb_js_1.Transaction(operation.store.store, this.snapshotFree ? SNAPSHOT_FREE : undefined);
649
668
  if (operation.store.rootStore !== this.db.rootStore) {
650
669
  harperLogger.warn?.('Created new transaction in save, but the store does match existing store', transaction.id);
651
670
  }
@@ -738,6 +757,14 @@ class DatabaseTransaction {
738
757
  // check just in case we got any more transactions while we were waiting, if so just recursively continue to finish the additional writes now
739
758
  return this.commit(options);
740
759
  }
760
+ // The save loop above can be what opened this transaction's native handle — save() attaches
761
+ // one when it had none, which is every ImmediateTransaction commit since its getReadTxn
762
+ // opens none — leaving the local captured before the loop empty while that handle holds
763
+ // every staged write, for the detach below to drop uncommitted (issue #2288). Only when
764
+ // the local is empty: a truthy one is what the loop staged into, and the retained-handle
765
+ // and replay branches below deliberately commit a handle other than this.transaction.
766
+ if (!transaction)
767
+ transaction = this.transaction;
741
768
  this.open = exports.TRANSACTION_STATE.CLOSED;
742
769
  // RocksTransaction.commit() resolves with RETRY_NOW_VALUE (a number) under
743
770
  // coordinatedRetry, or void on a normal commit/abort.
@@ -922,14 +949,24 @@ class DatabaseTransaction {
922
949
  // now reset transactions tracking; this transaction be reused and committed again
923
950
  this.retries = 0; // reset per-native-transaction retry counter so a reused DatabaseTransaction's next batch starts fresh
924
951
  this.clearWrites();
952
+ if (options.doneWriting)
953
+ this.endScopeOwnership();
925
954
  this.releaseContext(!!options.doneWriting);
926
- this.next = null;
927
955
  let txnTime = this.timestamp;
928
956
  this.timestamp = 0; // reset the timestamp as well
929
957
  return Promise.all(completions).then(() => {
958
+ // Only once the chained store's commit has settled, as on the synchronous path: a
959
+ // partially failed mid-scope commit must not leave the scope resumable.
960
+ this.completeMidScopeCommit(options);
930
961
  return {
931
962
  txnTime,
932
963
  };
964
+ }, (error) => {
965
+ // As on the synchronous path: a completion that failed (a chained store's commit,
966
+ // a replication confirmation) leaves this commit partly landed, so ownership goes
967
+ // with it rather than letting a later commit rotate on top.
968
+ this.endScopeOwnership();
969
+ throw error;
933
970
  });
934
971
  }, (error) => {
935
972
  // Coordinated transactions surface conflicts as RETRY_NOW (handled in the
@@ -1003,6 +1040,9 @@ class DatabaseTransaction {
1003
1040
  // back-reference here too, or transaction.ts's onComplete() (which has no
1004
1041
  // rejection handler of its own) would leave a long-lived context pinning this
1005
1042
  // CLOSED wrapper forever.
1043
+ // A failed commit must never be followed by a resumed segment: this generation is
1044
+ // finished and its durability is unknown, so ownership goes with it.
1045
+ this.endScopeOwnership();
1006
1046
  this.releaseContext(!!options.doneWriting);
1007
1047
  throw error;
1008
1048
  }
@@ -1013,6 +1053,8 @@ class DatabaseTransaction {
1013
1053
  (0, blob_ts_1.cleanupUnusedBlobs)(write.savedBlobs, (0, blob_ts_1.collectRetainedFileIds)(write.store.getEntry(write.key)?.value));
1014
1054
  }
1015
1055
  this.clearWrites();
1056
+ if (options.doneWriting)
1057
+ this.endScopeOwnership();
1016
1058
  this.releaseContext(!!options.doneWriting);
1017
1059
  const txnResolution = {
1018
1060
  txnTime: this.timestamp,
@@ -1021,20 +1063,79 @@ class DatabaseTransaction {
1021
1063
  // now run any other transactions
1022
1064
  options.timestamp = this.timestamp;
1023
1065
  // as above: the next store must not inherit this store's explicit native transaction
1024
- const nextResolution = this.next?.commit(options.transaction ? { ...options, transaction: undefined } : options);
1066
+ let nextResolution;
1067
+ try {
1068
+ nextResolution = this.next?.commit(options.transaction ? { ...options, transaction: undefined } : options);
1069
+ }
1070
+ catch (error) {
1071
+ // A synchronous throw reaches neither rejection handler below, and the head has already
1072
+ // committed — surrender ownership here too, or the scope stays resumable on top of a
1073
+ // half-landed multi-store commit.
1074
+ this.endScopeOwnership();
1075
+ throw error;
1076
+ }
1025
1077
  if (nextResolution?.then)
1026
- return nextResolution?.then((nextResolution) => ({
1027
- txnTime: this.timestamp,
1028
- next: nextResolution,
1029
- }));
1078
+ return nextResolution?.then((nextResolution) => {
1079
+ // Only once the chained store's own commit has SETTLED: rotating first would leave the
1080
+ // scope resumable after a partially failed mid-scope commit.
1081
+ this.completeMidScopeCommit(options);
1082
+ return {
1083
+ txnTime: this.timestamp,
1084
+ next: nextResolution,
1085
+ };
1086
+ }, (error) => {
1087
+ // A chained store's commit failed, so this multi-store commit half-landed. Surrender
1088
+ // ownership as the head's own failure branch does: a handler that catches this and
1089
+ // commits again must not rotate on top of it, and must not have the failed link
1090
+ // dropped from the chain before its abort can clean up its blobs.
1091
+ this.endScopeOwnership();
1092
+ throw error;
1093
+ });
1030
1094
  txnResolution.next = nextResolution;
1031
1095
  }
1096
+ this.completeMidScopeCommit(options);
1032
1097
  return txnResolution;
1033
1098
  }, (error) => {
1034
1099
  this.abort();
1035
1100
  throw error;
1036
1101
  });
1037
1102
  }
1103
+ /**
1104
+ * A successful commit that is NOT the scope's final one leaves the scope still running and still
1105
+ * responsible for a commit. Rotate to a fresh OPEN generation so the rest of the scope's writes
1106
+ * stage into it and are committed — or rolled back — as one unit, instead of each committing itself
1107
+ * the moment it is made. Every dispatch path keeps its plain `open === OPEN` check; CLOSED never
1108
+ * gains a second meaning.
1109
+ *
1110
+ * Deliberately not rotated when: the scope is finished (`doneWriting`), nothing owns this instance,
1111
+ * a timeout poisoned it, or a commit failed — a failed or uncertain commit must never be followed by
1112
+ * a resumed segment that can commit on its own. Nor when read iterators still hold the native
1113
+ * handle: that handle belongs to them until they drain, so there is nothing to rotate into and those
1114
+ * writes keep today's immediate-commit path.
1115
+ */
1116
+ /**
1117
+ * Finish a commit: the chain goes with it, then the scope may rotate. A link left attached and CLOSED
1118
+ * would be reused by txnForContext for the next write to that database and commit itself, surviving a
1119
+ * rollback of the rotated head — the cross-store leftover this rotation exists to prevent. Every
1120
+ * commit path must run this, and none may do one half without the other.
1121
+ */
1122
+ /** Both scope flags leave together, so no exit can clear one and keep the other. */
1123
+ endScopeOwnership() {
1124
+ this.#scopeOwned = false;
1125
+ this.snapshotFree = false;
1126
+ }
1127
+ completeMidScopeCommit(options) {
1128
+ this.next = null;
1129
+ this.rotateAfterMidScopeCommit(options);
1130
+ }
1131
+ /** See completeMidScopeCommit, which is the only caller and carries the reasoning. */
1132
+ rotateAfterMidScopeCommit(options) {
1133
+ if (options.doneWriting || this.timedOut || this.transaction || !this.#scopeOwned)
1134
+ return;
1135
+ this.open = exports.TRANSACTION_STATE.OPEN;
1136
+ this.snapshotFree = true;
1137
+ this.writesAbandoned = false;
1138
+ }
1038
1139
  abort() {
1039
1140
  while (this.readTxnsUsed > 0)
1040
1141
  this.doneReadTxn(); // release the read snapshot when we abort, we assume we don't need it
@@ -1050,6 +1151,7 @@ class DatabaseTransaction {
1050
1151
  }
1051
1152
  }
1052
1153
  finally {
1154
+ this.endScopeOwnership(); // the scope is over; nothing may rotate this instance again
1053
1155
  this.clearWrites();
1054
1156
  // A timeout-poisoned abort (abortDueToTimeout()) is the one abort that is NOT "reuse-free":
1055
1157
  // Resource.ts's dispatcher deliberately keeps joining a `timedOut` transaction (instead of
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseTransaction.js","sourceRoot":"","sources":["../../resources/DatabaseTransaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DatabaseTransaction.js","sourceRoot":"","sources":["../../resources/DatabaseTransaction.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,21 @@ export interface Context {
44
44
  * so code that commits mid-handler can keep using its context. LMDBTransaction does not release,
45
45
  * so there the completed transaction itself stays in the slot — also safe to call, but retained.
46
46
  * `null` was the previous released marker and is still accepted defensively.
47
+ *
48
+ * A transaction its own handler commits mid-scope is rotated to a fresh open generation, so the rest
49
+ * of that scope's writes are committed — or rolled back — with the scope's final commit rather than
50
+ * each committing itself immediately. Two cases keep the older per-write behavior: a commit made
51
+ * while a read iterator still holds the transaction's handle (that handle is the iterator's until it
52
+ * drains), and a commit that failed. LMDB has always behaved this way; the RocksDB path now matches.
53
+ *
54
+ * The engines still differ on reads. A rotated RocksDB generation is snapshot-free, so the rest of
55
+ * the scope keeps seeing other writers' committed data — which is what committing mid-scope asks for.
56
+ * LMDB cannot open a snapshot-free read transaction, so there the scope keeps its snapshot.
57
+ *
58
+ * Because the writes after a mid-scope commit stage rather than commit one at a time, a single
59
+ * mid-scope commit does not bound how much a long handler holds in memory. A handler streaming a
60
+ * large volume should keep committing (a checkpoint every N records), which commits each batch and
61
+ * rotates again.
47
62
  */
48
63
  transaction?: DatabaseTransaction | null;
49
64
  /** If the operation that will be performed with this context should check user authorization */
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceInterface.js","sourceRoot":"","sources":["../../resources/ResourceInterface.ts"],"names":[],"mappings":";;;AAkJa,QAAA,WAAW,GAAG;IAC1B,SAAS;IACT,UAAU;IACV,WAAW;IACX,IAAI;IACJ,QAAQ;IACR,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,cAAc;IACd,oBAAoB;IACpB,IAAI;IACJ,WAAW;IACX,iBAAiB;IACjB,IAAI;IACJ,WAAW;IACX,aAAa;CACJ,CAAC"}
1
+ {"version":3,"file":"ResourceInterface.js","sourceRoot":"","sources":["../../resources/ResourceInterface.ts"],"names":[],"mappings":";;;AAiKa,QAAA,WAAW,GAAG;IAC1B,SAAS;IACT,UAAU;IACV,WAAW;IACX,IAAI;IACJ,QAAQ;IACR,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,cAAc;IACd,oBAAoB;IACpB,IAAI;IACJ,WAAW;IACX,iBAAiB;IACjB,IAAI;IACJ,WAAW;IACX,aAAa;CACJ,CAAC"}
@@ -5486,6 +5486,9 @@ function makeTable(options) {
5486
5486
  // commit is tracked with its own identity (DatabaseTransaction.ts's trackOutstandingCommit),
5487
5487
  // so a wedged second-store commit is named just as precisely as a wedged first one.
5488
5488
  transaction.next.startedFrom = transaction.startedFrom;
5489
+ // A second database joined after a mid-scope commit belongs to the same snapshot-free
5490
+ // generation as the head, or its reads would re-pin what the commit just unpinned.
5491
+ transaction.next.snapshotFree = transaction.snapshotFree;
5489
5492
  if (transaction.open === DatabaseTransaction_ts_1.TRANSACTION_STATE.CLOSED) {
5490
5493
  // if the current transaction is already closed, we need to retain that state on new databases we work with
5491
5494
  transaction.next.open = DatabaseTransaction_ts_1.TRANSACTION_STATE.CLOSED;