@peerbit/blocks 4.1.8 → 4.1.9

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.
@@ -6,7 +6,7 @@ export declare class AnyBlockStore implements Blocks {
6
6
  private _store;
7
7
  private _opening;
8
8
  private _onClose;
9
- private _closeController;
9
+ private _closeController?;
10
10
  constructor(store?: AnyStore);
11
11
  get(cid: string, options?: {
12
12
  raw?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"any-blockstore.d.ts","sourceRoot":"","sources":["../../src/any-blockstore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EACN,KAAK,MAAM,EAKX,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACX,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,KAAK,KAAK,EAAU,MAAM,oBAAoB,CAAC;AAGxD,qBAAa,aAAc,YAAW,MAAM;IAC3C,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,gBAAgB,CAAkB;gBAC9B,KAAK,GAAE,QAAwB;IAIrC,GAAG,CACR,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,EAAE,GAAG,CAAC;QACb,MAAM,EAAE;YACP,OAAO,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACF,GACC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IA+B5B,GAAG,CACR,KAAK,EAAE,UAAU,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GACnE,OAAO,CAAC,MAAM,CAAC;IAQZ,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7B,QAAQ,IAAI,cAAc,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;IAM7D,GAAG,CAAC,GAAG,EAAE,MAAM;IAIf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3B,MAAM;IAGA,OAAO,CACZ,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,GAC3C,OAAO,CAAC,MAAM,EAAE,CAAC;IAKd,IAAI;IAIV,SAAS,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAGvC"}
1
+ {"version":3,"file":"any-blockstore.d.ts","sourceRoot":"","sources":["../../src/any-blockstore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EACN,KAAK,MAAM,EAKX,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACX,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,KAAK,KAAK,EAAU,MAAM,oBAAoB,CAAC;AAGxD,qBAAa,aAAc,YAAW,MAAM;IAC3C,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,gBAAgB,CAAC,CAAkB;gBAC/B,KAAK,GAAE,QAAwB;IAIrC,GAAG,CACR,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,EAAE,GAAG,CAAC;QACb,MAAM,EAAE;YACP,OAAO,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACF,GACC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IA+B5B,GAAG,CACR,KAAK,EAAE,UAAU,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GACnE,OAAO,CAAC,MAAM,CAAC;IAyBZ,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7B,QAAQ,IAAI,cAAc,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;IAM7D,GAAG,CAAC,GAAG,EAAE,MAAM;IAIf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3B,MAAM;IAGA,OAAO,CACZ,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,GAC3C,OAAO,CAAC,MAAM,EAAE,CAAC;IAKd,IAAI;IAIV,SAAS,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAGvC"}
@@ -42,7 +42,23 @@ export class AnyBlockStore {
42
42
  async put(bytes) {
43
43
  const put = bytes instanceof Uint8Array ? await calculateRawCid(bytes) : bytes;
44
44
  const bbytes = put.block.bytes;
45
- await this._store.put(put.cid, bbytes);
45
+ try {
46
+ await this._store.put(put.cid, bbytes);
47
+ }
48
+ catch (error) {
49
+ const status = await this._store.status();
50
+ if (typeof error?.code === "string" &&
51
+ error.code === "LEVEL_DATABASE_NOT_OPEN" &&
52
+ this._closeController?.signal.aborted === true &&
53
+ (status === "closing" || status === "closed")) {
54
+ // Late replication writes can outlive shutdown. At this point the
55
+ // backing store is intentionally closing, so report the deterministic
56
+ // CID while discarding the write instead of leaking an unhandled
57
+ // LevelDB rejection.
58
+ return put.cid;
59
+ }
60
+ throw error;
61
+ }
46
62
  return put.cid;
47
63
  }
48
64
  async rm(cid) {
@@ -1 +1 @@
1
- {"version":3,"file":"any-blockstore.js","sourceRoot":"","sources":["../../src/any-blockstore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"any-blockstore.js","sourceRoot":"","sources":["../../src/any-blockstore.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/blocks",
3
- "version": "4.1.8",
3
+ "version": "4.1.9",
4
4
  "description": "Block store streaming",
5
5
  "type": "module",
6
6
  "types": "./dist/src/index.d.ts",
@@ -82,13 +82,13 @@
82
82
  "p-queue": "^8.0.1",
83
83
  "uint8arrays": "^5.1.0",
84
84
  "@peerbit/any-store": "2.2.9",
85
- "@peerbit/blocks-interface": "2.0.11",
86
85
  "@peerbit/any-store-interface": "1.1.0",
87
- "@peerbit/cache": "3.0.0",
86
+ "@peerbit/blocks-interface": "2.0.12",
88
87
  "@peerbit/crypto": "3.1.1",
88
+ "@peerbit/cache": "3.0.0",
89
89
  "@peerbit/logger": "2.0.1",
90
- "@peerbit/stream-interface": "6.0.9",
91
- "@peerbit/stream": "5.0.16",
90
+ "@peerbit/stream": "5.0.17",
91
+ "@peerbit/stream-interface": "6.0.10",
92
92
  "@peerbit/time": "3.0.0"
93
93
  },
94
94
  "scripts": {
@@ -20,7 +20,7 @@ export class AnyBlockStore implements Blocks {
20
20
  private _store: AnyStore;
21
21
  private _opening: Promise<any>;
22
22
  private _onClose: (() => any) | undefined;
23
- private _closeController: AbortController;
23
+ private _closeController?: AbortController;
24
24
  constructor(store: AnyStore = createStore()) {
25
25
  this._store = store;
26
26
  }
@@ -72,7 +72,24 @@ export class AnyBlockStore implements Blocks {
72
72
  const put =
73
73
  bytes instanceof Uint8Array ? await calculateRawCid(bytes) : bytes;
74
74
  const bbytes = put.block.bytes;
75
- await this._store.put(put.cid, bbytes);
75
+ try {
76
+ await this._store.put(put.cid, bbytes);
77
+ } catch (error: any) {
78
+ const status = await this._store.status();
79
+ if (
80
+ typeof error?.code === "string" &&
81
+ error.code === "LEVEL_DATABASE_NOT_OPEN" &&
82
+ this._closeController?.signal.aborted === true &&
83
+ (status === "closing" || status === "closed")
84
+ ) {
85
+ // Late replication writes can outlive shutdown. At this point the
86
+ // backing store is intentionally closing, so report the deterministic
87
+ // CID while discarding the write instead of leaking an unhandled
88
+ // LevelDB rejection.
89
+ return put.cid;
90
+ }
91
+ throw error;
92
+ }
76
93
  return put.cid;
77
94
  }
78
95