@lodestar/beacon-node 1.34.0-dev.bb10d2b5ea → 1.34.0-dev.bb15e8ef5f

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.
@@ -4,7 +4,7 @@ import { bytesToInt } from "@lodestar/utils";
4
4
  import all from "it-all";
5
5
  import { getSignedBlockTypeFromBytes } from "../../util/multifork.js";
6
6
  import { Bucket, getBucketNameByValue } from "../buckets.js";
7
- import { getParentRootIndexKey, getRootIndexKey } from "./blockArchiveIndex.js";
7
+ import { getParentRootIndex, getRootIndex } from "./blockArchiveIndex.js";
8
8
  import { deleteParentRootIndex, deleteRootIndex, storeParentRootIndex, storeRootIndex } from "./blockArchiveIndex.js";
9
9
  /**
10
10
  * Stores finalized blocks. Block slot is identifier.
@@ -102,10 +102,10 @@ export class BlockArchiveRepository extends Repository {
102
102
  return slot !== null ? this.get(slot) : null;
103
103
  }
104
104
  async getSlotByRoot(root) {
105
- return this.parseSlot(await this.db.get(getRootIndexKey(root)));
105
+ return this.parseSlot(await getRootIndex(this.db, root));
106
106
  }
107
107
  async getSlotByParentRoot(root) {
108
- return this.parseSlot(await this.db.get(getParentRootIndexKey(root)));
108
+ return this.parseSlot(await getParentRootIndex(this.db, root));
109
109
  }
110
110
  parseSlot(slotBytes) {
111
111
  if (!slotBytes)
@@ -1 +1 @@
1
- {"version":3,"file":"blockArchive.js","sourceRoot":"","sources":["../../../src/db/repositories/blockArchive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blockArchive.js","sourceRoot":"","sources":["../../../src/db/repositories/blockArchive.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  import { Db } from "@lodestar/db";
2
2
  import { ForkAll } from "@lodestar/params";
3
3
  import { Root, SSZTypesFor, SignedBeaconBlock, Slot } from "@lodestar/types";
4
+ export declare const rootIndexBucketId: "allForks_stateArchive" | "allForks_block" | "allForks_blockArchive" | "index_blockArchiveParentRootIndex" | "index_blockArchiveRootIndex" | "index_mainChain" | "index_chainInfo" | "phase0_eth1Data" | "index_depositDataRoot" | "phase0_depositData" | "phase0_exit" | "phase0_proposerSlashing" | "allForks_attesterSlashing" | "capella_blsToExecutionChange" | "allForks_checkpointState" | "phase0_depositEvent" | "index_stateArchiveRootIndex" | "allForks_blobSidecars" | "allForks_blobSidecarsArchive" | "phase0_preGenesisState" | "phase0_preGenesisStateLastProcessedBlock" | "backfilled_ranges" | "lightClient_syncCommitteeWitness" | "lightClient_syncCommittee" | "lightClient_checkpointHeader" | "lightClient_bestLightClientUpdate" | "allForks_dataColumnSidecars" | "allForks_dataColumnSidecarsArchive";
5
+ export declare const parentRootIndexBucketId: "allForks_stateArchive" | "allForks_block" | "allForks_blockArchive" | "index_blockArchiveParentRootIndex" | "index_blockArchiveRootIndex" | "index_mainChain" | "index_chainInfo" | "phase0_eth1Data" | "index_depositDataRoot" | "phase0_depositData" | "phase0_exit" | "phase0_proposerSlashing" | "allForks_attesterSlashing" | "capella_blsToExecutionChange" | "allForks_checkpointState" | "phase0_depositEvent" | "index_stateArchiveRootIndex" | "allForks_blobSidecars" | "allForks_blobSidecarsArchive" | "phase0_preGenesisState" | "phase0_preGenesisStateLastProcessedBlock" | "backfilled_ranges" | "lightClient_syncCommitteeWitness" | "lightClient_syncCommittee" | "lightClient_checkpointHeader" | "lightClient_bestLightClientUpdate" | "allForks_dataColumnSidecars" | "allForks_dataColumnSidecarsArchive";
6
+ export declare function getRootIndex(db: Db, blockRoot: Root): Promise<Uint8Array | null>;
7
+ export declare function getParentRootIndex(db: Db, parentRoot: Root): Promise<Uint8Array | null>;
4
8
  export declare function storeRootIndex(db: Db, slot: Slot, blockRoot: Root): Promise<void>;
5
9
  export declare function storeParentRootIndex(db: Db, slot: Slot, parentRoot: Root): Promise<void>;
6
10
  export declare function deleteRootIndex(db: Db, signedBeaconBlockType: SSZTypesFor<ForkAll, "SignedBeaconBlock">, block: SignedBeaconBlock): Promise<void>;
@@ -1,18 +1,26 @@
1
1
  import { encodeKey } from "@lodestar/db";
2
2
  import { intToBytes } from "@lodestar/utils";
3
- import { Bucket } from "../buckets.js";
3
+ import { Bucket, getBucketNameByValue } from "../buckets.js";
4
+ export const rootIndexBucketId = getBucketNameByValue(Bucket.index_blockArchiveRootIndex);
5
+ export const parentRootIndexBucketId = getBucketNameByValue(Bucket.index_blockArchiveParentRootIndex);
6
+ export async function getRootIndex(db, blockRoot) {
7
+ return db.get(getRootIndexKey(blockRoot), { bucketId: rootIndexBucketId });
8
+ }
9
+ export async function getParentRootIndex(db, parentRoot) {
10
+ return db.get(getParentRootIndexKey(parentRoot), { bucketId: parentRootIndexBucketId });
11
+ }
4
12
  export async function storeRootIndex(db, slot, blockRoot) {
5
- return db.put(getRootIndexKey(blockRoot), intToBytes(slot, 8, "be"));
13
+ return db.put(getRootIndexKey(blockRoot), intToBytes(slot, 8, "be"), { bucketId: rootIndexBucketId });
6
14
  }
7
15
  export async function storeParentRootIndex(db, slot, parentRoot) {
8
- return db.put(getParentRootIndexKey(parentRoot), intToBytes(slot, 8, "be"));
16
+ return db.put(getParentRootIndexKey(parentRoot), intToBytes(slot, 8, "be"), { bucketId: parentRootIndexBucketId });
9
17
  }
10
18
  export async function deleteRootIndex(db, signedBeaconBlockType, block) {
11
19
  const beaconBlockType = signedBeaconBlockType.fields.message;
12
- return db.delete(getRootIndexKey(beaconBlockType.hashTreeRoot(block.message)));
20
+ return db.delete(getRootIndexKey(beaconBlockType.hashTreeRoot(block.message)), { bucketId: rootIndexBucketId });
13
21
  }
14
22
  export async function deleteParentRootIndex(db, block) {
15
- return db.delete(getParentRootIndexKey(block.message.parentRoot));
23
+ return db.delete(getParentRootIndexKey(block.message.parentRoot), { bucketId: parentRootIndexBucketId });
16
24
  }
17
25
  export function getParentRootIndexKey(parentRoot) {
18
26
  return encodeKey(Bucket.index_blockArchiveParentRootIndex, parentRoot);
@@ -1 +1 @@
1
- {"version":3,"file":"blockArchiveIndex.js","sourceRoot":"","sources":["../../../src/db/repositories/blockArchiveIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,SAAS,EAAC,MAAM,cAAc,CAAC;AAG3C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AAErC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EAAM,EAAE,IAAU,EAAE,SAAe;IACtE,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,EAAM,EAAE,IAAU,EAAE,UAAgB;IAC7E,OAAO,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAM,EACN,qBAAgE,EAChE,KAAwB;IAExB,MAAM,eAAe,GAAI,qBAA6D,CAAC,MAAM,CAAC,OAAO,CAAC;IACtG,OAAO,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAAM,EAAE,KAAwB;IAC1E,OAAO,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,UAAgB;IACpD,OAAO,SAAS,CAAC,MAAM,CAAC,iCAAiC,EAAE,UAAU,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAU;IACxC,OAAO,SAAS,CAAC,MAAM,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"blockArchiveIndex.js","sourceRoot":"","sources":["../../../src/db/repositories/blockArchiveIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,SAAS,EAAC,MAAM,cAAc,CAAC;AAG3C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAE3D,MAAM,CAAC,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAC1F,MAAM,CAAC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;AAEtG,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,EAAM,EAAE,SAAe;IACxD,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAC,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EAAM,EAAE,UAAgB;IAC/D,OAAO,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAAE,EAAC,QAAQ,EAAE,uBAAuB,EAAC,CAAC,CAAC;AACxF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EAAM,EAAE,IAAU,EAAE,SAAe;IACtE,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAC,CAAC,CAAC;AACtG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,EAAM,EAAE,IAAU,EAAE,UAAgB;IAC7E,OAAO,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,EAAC,QAAQ,EAAE,uBAAuB,EAAC,CAAC,CAAC;AACnH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAM,EACN,qBAAgE,EAChE,KAAwB;IAExB,MAAM,eAAe,GAAI,qBAA6D,CAAC,MAAM,CAAC,OAAO,CAAC;IACtG,OAAO,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,iBAAiB,EAAC,CAAC,CAAC;AAChH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAAM,EAAE,KAAwB;IAC1E,OAAO,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAC,QAAQ,EAAE,uBAAuB,EAAC,CAAC,CAAC;AACzG,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,UAAgB;IACpD,OAAO,SAAS,CAAC,MAAM,CAAC,iCAAiC,EAAE,UAAU,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAU;IACxC,OAAO,SAAS,CAAC,MAAM,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC"}
@@ -3,7 +3,7 @@ import { ssz } from "@lodestar/types";
3
3
  import { bytesToInt, toHex } from "@lodestar/utils";
4
4
  import { getStateTypeFromBytes } from "../../util/multifork.js";
5
5
  import { Bucket, getBucketNameByValue } from "../buckets.js";
6
- import { getRootIndexKey, storeRootIndex } from "./stateArchiveIndex.js";
6
+ import { getRootIndex, getRootIndexKey, storeRootIndex } from "./stateArchiveIndex.js";
7
7
  export class StateArchiveRepository extends Repository {
8
8
  constructor(config, db) {
9
9
  // Pick some type but won't be used. Casted to any because no type can match `BeaconStateAllForks`
@@ -41,6 +41,7 @@ export class StateArchiveRepository extends Repository {
41
41
  const entries = await this.db.entries({
42
42
  lte: getRootIndexKey(Buffer.alloc(32, 0xff)),
43
43
  gte: getRootIndexKey(Buffer.alloc(32, 0x00)),
44
+ bucketId: this.bucketId,
44
45
  });
45
46
  return entries.map((entry) => ({
46
47
  root: toHex(entry.key),
@@ -48,7 +49,7 @@ export class StateArchiveRepository extends Repository {
48
49
  }));
49
50
  }
50
51
  async getSlotByRoot(root) {
51
- const value = await this.db.get(getRootIndexKey(root));
52
+ const value = await getRootIndex(this.db, root);
52
53
  return value && bytesToInt(value, "be");
53
54
  }
54
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stateArchive.js","sourceRoot":"","sources":["../../../src/db/repositories/stateArchive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stateArchive.js","sourceRoot":"","sources":["../../../src/db/repositories/stateArchive.ts"],"names":[],"mappings":"AACA,OAAO,EAAK,UAAU,EAAC,MAAM,cAAc,CAAC;AAE5C,OAAO,EAA6B,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAC,UAAU,EAAE,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAE,eAAe,EAAE,cAAc,EAAC,MAAM,wBAAwB,CAAC;AAErF,MAAM,OAAO,sBAAuB,SAAQ,UAAqC;IAC/E,YAAY,MAAuB,EAAE,EAAM;QACzC,kGAAkG;QAClG,6EAA6E;QAC7E,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,WAAkB,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC5C,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,2BAA2B;IAE3B,WAAW,CAAC,KAA0B;QACpC,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC3B,CAAC;IAED,WAAW,CAAC,IAAgB;QAC1B,OAAO,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED,qBAAqB;IAErB,KAAK,CAAC,GAAG,CAAC,GAAS,EAAE,KAA0B;QAC7C,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IACjG,CAAC;IAED,KAAK,CAAC,KAA0B;QAC9B,OAAO,KAAK,CAAC,IAAI,CAAC;IACpB,CAAC;IAED,SAAS,CAAC,IAAgB;QACxB,OAAO,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAA0B,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;IAED,qBAAqB;IAErB,KAAK,CAAC,SAAS,CAAC,SAAe;QAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;YACpC,GAAG,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC5C,GAAG,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC5C,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC7B,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;YACtB,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;SACpC,CAAC,CAAC,CAAC;IACN,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,IAAU;QACpC,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAChD,OAAO,KAAK,IAAI,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF"}
@@ -1,5 +1,6 @@
1
1
  import { Db } from "@lodestar/db";
2
2
  import { Root, Slot } from "@lodestar/types";
3
+ export declare function getRootIndex(db: Db, stateRoot: Root): Promise<Uint8Array | null>;
3
4
  export declare function storeRootIndex(db: Db, slot: Slot, stateRoot: Root): Promise<void>;
4
5
  export declare function getRootIndexKey(root: Root): Uint8Array;
5
6
  //# sourceMappingURL=stateArchiveIndex.d.ts.map
@@ -1,8 +1,12 @@
1
1
  import { encodeKey } from "@lodestar/db";
2
2
  import { intToBytes } from "@lodestar/utils";
3
- import { Bucket } from "../buckets.js";
3
+ import { Bucket, getBucketNameByValue } from "../buckets.js";
4
+ const bucketId = getBucketNameByValue(Bucket.index_stateArchiveRootIndex);
5
+ export function getRootIndex(db, stateRoot) {
6
+ return db.get(getRootIndexKey(stateRoot), { bucketId });
7
+ }
4
8
  export function storeRootIndex(db, slot, stateRoot) {
5
- return db.put(getRootIndexKey(stateRoot), intToBytes(slot, 8, "be"));
9
+ return db.put(getRootIndexKey(stateRoot), intToBytes(slot, 8, "be"), { bucketId });
6
10
  }
7
11
  export function getRootIndexKey(root) {
8
12
  return encodeKey(Bucket.index_stateArchiveRootIndex, root);
@@ -1 +1 @@
1
- {"version":3,"file":"stateArchiveIndex.js","sourceRoot":"","sources":["../../../src/db/repositories/stateArchiveIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,SAAS,EAAC,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AAErC,MAAM,UAAU,cAAc,CAAC,EAAM,EAAE,IAAU,EAAE,SAAe;IAChE,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAU;IACxC,OAAO,SAAS,CAAC,MAAM,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"stateArchiveIndex.js","sourceRoot":"","sources":["../../../src/db/repositories/stateArchiveIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,SAAS,EAAC,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAE3D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAE1E,MAAM,UAAU,YAAY,CAAC,EAAM,EAAE,SAAe;IAClD,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,EAAC,QAAQ,EAAC,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAM,EAAE,IAAU,EAAE,SAAe;IAChE,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,EAAC,QAAQ,EAAC,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAU;IACxC,OAAO,SAAS,CAAC,MAAM,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC"}
@@ -7,6 +7,7 @@ export declare class PreGenesisState {
7
7
  private readonly db;
8
8
  private readonly key;
9
9
  private readonly type;
10
+ private readonly dbReqOpts;
10
11
  constructor(config: ChainForkConfig, db: Db);
11
12
  put(value: BeaconStateAllForks): Promise<void>;
12
13
  get(): Promise<BeaconStateAllForks | null>;
@@ -1,5 +1,5 @@
1
1
  import { GENESIS_SLOT } from "@lodestar/params";
2
- import { Bucket } from "../buckets.js";
2
+ import { Bucket, getBucketNameByValue } from "../buckets.js";
3
3
  export class PreGenesisState {
4
4
  constructor(config, db) {
5
5
  this.config = config;
@@ -7,16 +7,17 @@ export class PreGenesisState {
7
7
  this.bucket = Bucket.phase0_preGenesisState;
8
8
  this.key = new Uint8Array([this.bucket]);
9
9
  this.type = this.config.getForkTypes(GENESIS_SLOT).BeaconState;
10
+ this.dbReqOpts = { bucketId: getBucketNameByValue(this.bucket) };
10
11
  }
11
12
  async put(value) {
12
- await this.db.put(this.key, value.serialize());
13
+ await this.db.put(this.key, value.serialize(), this.dbReqOpts);
13
14
  }
14
15
  async get() {
15
- const value = await this.db.get(this.key);
16
+ const value = await this.db.get(this.key, this.dbReqOpts);
16
17
  return value ? this.type.deserializeToViewDU(value) : null;
17
18
  }
18
19
  async delete() {
19
- await this.db.delete(this.key);
20
+ await this.db.delete(this.key, this.dbReqOpts);
20
21
  }
21
22
  }
22
23
  //# sourceMappingURL=preGenesisState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preGenesisState.js","sourceRoot":"","sources":["../../../src/db/single/preGenesisState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AAErC,MAAM,OAAO,eAAe;IAO1B,YAAY,MAAuB,EAAE,EAAM;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,sBAAsB,CAAC;QAC5C,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAA0B;QAClC,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,GAAG;QACP,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"preGenesisState.js","sourceRoot":"","sources":["../../../src/db/single/preGenesisState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAE3D,MAAM,OAAO,eAAe;IAQ1B,YAAY,MAAuB,EAAE,EAAM;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,sBAAsB,CAAC;QAC5C,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC;QAC/D,IAAI,CAAC,SAAS,GAAG,EAAC,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAA0B;QAClC,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,GAAG;QACP,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;CACF"}
@@ -5,6 +5,7 @@ export declare class PreGenesisStateLastProcessedBlock {
5
5
  private readonly type;
6
6
  private readonly db;
7
7
  private readonly key;
8
+ private readonly dbReqOpts;
8
9
  constructor(_config: ChainForkConfig, db: Db);
9
10
  put(value: number): Promise<void>;
10
11
  get(): Promise<number | null>;
@@ -1,21 +1,22 @@
1
1
  import { ssz } from "@lodestar/types";
2
- import { Bucket } from "../buckets.js";
2
+ import { Bucket, getBucketNameByValue } from "../buckets.js";
3
3
  export class PreGenesisStateLastProcessedBlock {
4
4
  constructor(_config, db) {
5
5
  this.db = db;
6
6
  this.type = ssz.UintNum64;
7
7
  this.bucket = Bucket.phase0_preGenesisStateLastProcessedBlock;
8
8
  this.key = new Uint8Array([this.bucket]);
9
+ this.dbReqOpts = { bucketId: getBucketNameByValue(this.bucket) };
9
10
  }
10
11
  async put(value) {
11
- await this.db.put(this.key, this.type.serialize(value));
12
+ await this.db.put(this.key, this.type.serialize(value), this.dbReqOpts);
12
13
  }
13
14
  async get() {
14
- const value = await this.db.get(this.key);
15
+ const value = await this.db.get(this.key, this.dbReqOpts);
15
16
  return value ? this.type.deserialize(value) : null;
16
17
  }
17
18
  async delete() {
18
- await this.db.delete(this.key);
19
+ await this.db.delete(this.key, this.dbReqOpts);
19
20
  }
20
21
  }
21
22
  //# sourceMappingURL=preGenesisStateLastProcessedBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preGenesisStateLastProcessedBlock.js","sourceRoot":"","sources":["../../../src/db/single/preGenesisStateLastProcessedBlock.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AAErC,MAAM,OAAO,iCAAiC;IAM5C,YAAY,OAAwB,EAAE,EAAM;QAC1C,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,wCAAwC,CAAC;QAC9D,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,GAAG;QACP,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"preGenesisStateLastProcessedBlock.js","sourceRoot":"","sources":["../../../src/db/single/preGenesisStateLastProcessedBlock.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAE3D,MAAM,OAAO,iCAAiC;IAO5C,YAAY,OAAwB,EAAE,EAAM;QAC1C,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,wCAAwC,CAAC;QAC9D,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,GAAG,EAAC,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,GAAG;QACP,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1D,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;CACF"}
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "bugs": {
12
12
  "url": "https://github.com/ChainSafe/lodestar/issues"
13
13
  },
14
- "version": "1.34.0-dev.bb10d2b5ea",
14
+ "version": "1.34.0-dev.bb15e8ef5f",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -118,18 +118,18 @@
118
118
  "@libp2p/peer-id": "^5.1.0",
119
119
  "@libp2p/prometheus-metrics": "^4.3.15",
120
120
  "@libp2p/tcp": "^10.1.8",
121
- "@lodestar/api": "1.34.0-dev.bb10d2b5ea",
122
- "@lodestar/config": "1.34.0-dev.bb10d2b5ea",
123
- "@lodestar/db": "1.34.0-dev.bb10d2b5ea",
124
- "@lodestar/fork-choice": "1.34.0-dev.bb10d2b5ea",
125
- "@lodestar/light-client": "1.34.0-dev.bb10d2b5ea",
126
- "@lodestar/logger": "1.34.0-dev.bb10d2b5ea",
127
- "@lodestar/params": "1.34.0-dev.bb10d2b5ea",
128
- "@lodestar/reqresp": "1.34.0-dev.bb10d2b5ea",
129
- "@lodestar/state-transition": "1.34.0-dev.bb10d2b5ea",
130
- "@lodestar/types": "1.34.0-dev.bb10d2b5ea",
131
- "@lodestar/utils": "1.34.0-dev.bb10d2b5ea",
132
- "@lodestar/validator": "1.34.0-dev.bb10d2b5ea",
121
+ "@lodestar/api": "1.34.0-dev.bb15e8ef5f",
122
+ "@lodestar/config": "1.34.0-dev.bb15e8ef5f",
123
+ "@lodestar/db": "1.34.0-dev.bb15e8ef5f",
124
+ "@lodestar/fork-choice": "1.34.0-dev.bb15e8ef5f",
125
+ "@lodestar/light-client": "1.34.0-dev.bb15e8ef5f",
126
+ "@lodestar/logger": "1.34.0-dev.bb15e8ef5f",
127
+ "@lodestar/params": "1.34.0-dev.bb15e8ef5f",
128
+ "@lodestar/reqresp": "1.34.0-dev.bb15e8ef5f",
129
+ "@lodestar/state-transition": "1.34.0-dev.bb15e8ef5f",
130
+ "@lodestar/types": "1.34.0-dev.bb15e8ef5f",
131
+ "@lodestar/utils": "1.34.0-dev.bb15e8ef5f",
132
+ "@lodestar/validator": "1.34.0-dev.bb15e8ef5f",
133
133
  "@multiformats/multiaddr": "^12.1.3",
134
134
  "datastore-core": "^10.0.2",
135
135
  "datastore-level": "^11.0.3",
@@ -164,5 +164,5 @@
164
164
  "beacon",
165
165
  "blockchain"
166
166
  ],
167
- "gitHead": "5f572e50940489b5ef94e85f13af6bf35fa715e6"
167
+ "gitHead": "b2a9ea04668748072f337715765d7d4d9c19d64e"
168
168
  }