@harperfast/rocksdb-js 2.9.0 → 2.9.1

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/index.d.cts CHANGED
@@ -551,10 +551,16 @@ export declare class Store {
551
551
  /**
552
552
  * The bytes of recent memtable history to retain in memory for transaction
553
553
  * conflict checking. `-1` derives the value from
554
- * `maxWriteBufferNumber * writeBufferSize`, except under a stalling
555
- * `writeBufferManager`, where it derives `0`: retained history is charged to
556
- * that manager and is only trimmable down to this target, so a target the
557
- * budget cannot hold stalls writes permanently. Set a number to size it
554
+ * `maxWriteBufferNumber * writeBufferSize`, except when a
555
+ * `writeBufferManager` is configured, where it derives `1`: retained history
556
+ * is charged to that manager and is only trimmable down to this target, so a
557
+ * target the budget cannot hold is memory the manager never reclaims, and
558
+ * stalls writes permanently when `writeBufferManagerAllowStall` is on. Any
559
+ * configured manager, not only a stalling one — that flag is mutable at
560
+ * runtime while this value is fixed when the family is created. `1`, not `0`, because
561
+ * RocksDB's transaction wrappers rewrite a `0` target to the derived value —
562
+ * so `0` asks for the largest history rather than none, and an explicit `0`
563
+ * is normalized to `1` for that reason. Set a positive number to size it
558
564
  * yourself against the budget and the column-family count.
559
565
  */
560
566
  maxWriteBufferSizeToMaintain?: number;
package/dist/index.d.mts CHANGED
@@ -551,10 +551,16 @@ export declare class Store {
551
551
  /**
552
552
  * The bytes of recent memtable history to retain in memory for transaction
553
553
  * conflict checking. `-1` derives the value from
554
- * `maxWriteBufferNumber * writeBufferSize`, except under a stalling
555
- * `writeBufferManager`, where it derives `0`: retained history is charged to
556
- * that manager and is only trimmable down to this target, so a target the
557
- * budget cannot hold stalls writes permanently. Set a number to size it
554
+ * `maxWriteBufferNumber * writeBufferSize`, except when a
555
+ * `writeBufferManager` is configured, where it derives `1`: retained history
556
+ * is charged to that manager and is only trimmable down to this target, so a
557
+ * target the budget cannot hold is memory the manager never reclaims, and
558
+ * stalls writes permanently when `writeBufferManagerAllowStall` is on. Any
559
+ * configured manager, not only a stalling one — that flag is mutable at
560
+ * runtime while this value is fixed when the family is created. `1`, not `0`, because
561
+ * RocksDB's transaction wrappers rewrite a `0` target to the derived value —
562
+ * so `0` asks for the largest history rather than none, and an explicit `0`
563
+ * is normalized to `1` for that reason. Set a positive number to size it
558
564
  * yourself against the budget and the column-family count.
559
565
  */
560
566
  maxWriteBufferSizeToMaintain?: number;
package/dist/index.mjs CHANGED
@@ -1268,7 +1268,15 @@ var DBIterator = class {
1268
1268
  this.iterator.return?.();
1269
1269
  return DONE_RESULT;
1270
1270
  }
1271
- const result = this.iterator.next();
1271
+ let result;
1272
+ try {
1273
+ result = this.iterator.next();
1274
+ } catch (err) {
1275
+ try {
1276
+ this.iterator.return?.();
1277
+ } catch {}
1278
+ throw err;
1279
+ }
1272
1280
  if (result === ITERATOR_RESULT_DONE) return DONE_RESULT;
1273
1281
  this.#yielded++;
1274
1282
  const includeValues = this.#includeValues;
@@ -1546,10 +1554,16 @@ var Store = class {
1546
1554
  /**
1547
1555
  * The bytes of recent memtable history to retain in memory for transaction
1548
1556
  * conflict checking. `-1` derives the value from
1549
- * `maxWriteBufferNumber * writeBufferSize`, except under a stalling
1550
- * `writeBufferManager`, where it derives `0`: retained history is charged to
1551
- * that manager and is only trimmable down to this target, so a target the
1552
- * budget cannot hold stalls writes permanently. Set a number to size it
1557
+ * `maxWriteBufferNumber * writeBufferSize`, except when a
1558
+ * `writeBufferManager` is configured, where it derives `1`: retained history
1559
+ * is charged to that manager and is only trimmable down to this target, so a
1560
+ * target the budget cannot hold is memory the manager never reclaims, and
1561
+ * stalls writes permanently when `writeBufferManagerAllowStall` is on. Any
1562
+ * configured manager, not only a stalling one — that flag is mutable at
1563
+ * runtime while this value is fixed when the family is created. `1`, not `0`, because
1564
+ * RocksDB's transaction wrappers rewrite a `0` target to the derived value —
1565
+ * so `0` asks for the largest history rather than none, and an explicit `0`
1566
+ * is normalized to `1` for that reason. Set a positive number to size it
1553
1567
  * yourself against the budget and the column-family count.
1554
1568
  */
1555
1569
  maxWriteBufferSizeToMaintain;
@@ -3764,7 +3778,7 @@ function loadLastPosition(transactionLog, readUncommitted) {
3764
3778
  //#region src/index.ts
3765
3779
  const versions = {
3766
3780
  rocksdb: version,
3767
- "rocksdb-js": "2.9.0"
3781
+ "rocksdb-js": "2.9.1"
3768
3782
  };
3769
3783
 
3770
3784
  //#endregion