@lodestar/beacon-node 1.36.0-dev.6d67a79656 → 1.36.0-dev.6f46a8bd20

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 (39) hide show
  1. package/lib/api/impl/lodestar/index.d.ts.map +1 -1
  2. package/lib/api/impl/lodestar/index.js +6 -9
  3. package/lib/api/impl/lodestar/index.js.map +1 -1
  4. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +1 -1
  5. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js +6 -1
  6. package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js.map +1 -1
  7. package/lib/chain/errors/dataColumnSidecarError.d.ts +7 -0
  8. package/lib/chain/errors/dataColumnSidecarError.d.ts.map +1 -1
  9. package/lib/chain/errors/dataColumnSidecarError.js +1 -0
  10. package/lib/chain/errors/dataColumnSidecarError.js.map +1 -1
  11. package/lib/chain/validation/dataColumnSidecar.d.ts.map +1 -1
  12. package/lib/chain/validation/dataColumnSidecar.js +14 -3
  13. package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
  14. package/lib/metrics/metrics/lodestar.js +1 -1
  15. package/lib/metrics/metrics/lodestar.js.map +1 -1
  16. package/lib/network/core/networkCoreWorker.js +2 -7
  17. package/lib/network/core/networkCoreWorker.js.map +1 -1
  18. package/lib/network/discv5/worker.js +2 -7
  19. package/lib/network/discv5/worker.js.map +1 -1
  20. package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
  21. package/lib/network/processor/gossipHandlers.js +14 -8
  22. package/lib/network/processor/gossipHandlers.js.map +1 -1
  23. package/lib/sync/utils/remoteSyncType.js +2 -2
  24. package/lib/sync/utils/remoteSyncType.js.map +1 -1
  25. package/lib/util/profile.d.ts +6 -4
  26. package/lib/util/profile.d.ts.map +1 -1
  27. package/lib/util/profile.js +40 -3
  28. package/lib/util/profile.js.map +1 -1
  29. package/package.json +26 -24
  30. package/src/api/impl/lodestar/index.ts +6 -9
  31. package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +5 -1
  32. package/src/chain/errors/dataColumnSidecarError.ts +8 -0
  33. package/src/chain/validation/dataColumnSidecar.ts +21 -4
  34. package/src/metrics/metrics/lodestar.ts +1 -1
  35. package/src/network/core/networkCoreWorker.ts +2 -7
  36. package/src/network/discv5/worker.ts +2 -7
  37. package/src/network/processor/gossipHandlers.ts +16 -7
  38. package/src/sync/utils/remoteSyncType.ts +2 -2
  39. package/src/util/profile.ts +45 -3
@@ -1 +1 @@
1
- {"version":3,"file":"networkCoreWorker.js","sourceRoot":"","sources":["../../../src/network/core/networkCoreWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"networkCoreWorker.js","sourceRoot":"","sources":["../../../src/network/core/networkCoreWorker.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,3 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
1
  import worker from "node:worker_threads";
4
2
  import { privateKeyFromProtobuf } from "@libp2p/crypto/keys";
5
3
  import { peerIdFromPrivateKey } from "@libp2p/peer-id";
@@ -13,7 +11,7 @@ import { getNodeLogger } from "@lodestar/logger/node";
13
11
  import { RegistryMetricCreator } from "../../metrics/index.js";
14
12
  import { collectNodeJSMetrics } from "../../metrics/nodeJsMetrics.js";
15
13
  import { Clock } from "../../util/clock.js";
16
- import { profileNodeJS, writeHeapSnapshot } from "../../util/profile.js";
14
+ import { ProfileThread, profileThread, writeHeapSnapshot } from "../../util/profile.js";
17
15
  import { ENRRelevance, enrRelevance } from "./utils.js";
18
16
  // This discv5 worker will start discv5 on initialization (there is no `start` function to call)
19
17
  // A consumer _should_ call `close` before terminating the worker to cleanly exit discv5 before destroying the thread
@@ -93,10 +91,7 @@ const module = {
93
91
  return (await metricsRegistry?.metrics()) ?? "";
94
92
  },
95
93
  writeProfile: async (durationMs, dirpath) => {
96
- const profile = await profileNodeJS(durationMs);
97
- const filePath = path.join(dirpath, `discv5_thread_${new Date().toISOString()}.cpuprofile`);
98
- fs.writeFileSync(filePath, profile);
99
- return filePath;
94
+ return profileThread(ProfileThread.DISC5, durationMs, dirpath);
100
95
  },
101
96
  writeHeapSnapshot: async (prefix, dirpath) => {
102
97
  return writeHeapSnapshot(prefix, dirpath);
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/network/discv5/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/network/discv5/worker.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAC,sBAAsB,EAAC,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAY,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAC,MAAM,EAAqB,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAe,WAAW,EAAkB,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AACjD,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAC,qBAAqB,EAAC,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAC,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAEtF,OAAO,EAAC,YAAY,EAAE,YAAY,EAAC,MAAM,YAAY,CAAC;AAEtD,gGAAgG;AAChG,qHAAqH;AACrH,4GAA4G;AAE5G,gCAAgC;AAChC,MAAM,UAAU,GAAG,MAAM,CAAC,UAA8B,CAAC;AACzD,IAAI,CAAC,UAAU;IAAE,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAC;AAE3D,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAEpD,6CAA6C;AAC7C,IAAI,eAAkD,CAAC;AACvD,IAAI,kBAAuD,CAAC;AAC5D,IAAI,YAAoC,CAAC;AACzC,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;IACvB,eAAe,GAAG,IAAI,qBAAqB,EAAE,CAAC;IAC9C,YAAY,GAAG,oBAAoB,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;IAEvE,2BAA2B;IAC3B,kBAAkB,GAAG,eAAe,CAAC,KAAK,CAAmB;QAC3D,IAAI,EAAE,+CAA+C;QACrD,IAAI,EAAE,0DAA0D;QAChE,UAAU,EAAE,CAAC,QAAQ,CAAC;KACvB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,GAAG,sBAAsB,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AACtE,MAAM,MAAM,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;AAEhD,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,qBAAqB,CAAC,CAAC;AAE5F,oBAAoB;AACpB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3B,GAAG,EAAE,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC;IAC1D,UAAU;IACV,SAAS,EAAE;QACT,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAc;QAC9F,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;KAChF;IACD,MAAM,EAAE,UAAU,CAAC,MAAM;IACzB,eAAe;CAChB,CAAgC,CAAC;AAElC,iBAAiB;AACjB,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;IAC1C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,mCAAmC;AACnC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAW,CAAC;AAEvC,yBAAyB;AACzB,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;AAC9C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,EAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAC,CAAC,CAAC;AAEvG,MAAM,YAAY,GAAG,CAAC,GAAQ,EAAQ,EAAE;IACtC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAChD,kBAAkB,EAAE,GAAG,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;IAClC,IAAI,MAAM,KAAK,YAAY,CAAC,QAAQ,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC,CAAC;AACF,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;AAE/C,oDAAoD;AACpD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;AAErB,MAAM,MAAM,GAAoB;IAC9B,KAAK,CAAC,GAAG;QACP,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,GAAW,EAAE,KAAiB;QAC9C,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,KAAK,CAAC,SAAS;QACb,OAAO,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,KAAK,CAAC,iBAAiB;QACrB,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC;IACD,KAAK,CAAC,cAAc;QAClB,OAAO,CAAC,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,UAAU;QACR,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,KAAK,CAAC,aAAa;QACjB,OAAO,CAAC,MAAM,eAAe,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,UAAkB,EAAE,OAAe,EAAE,EAAE;QAC1D,OAAO,aAAa,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IACD,iBAAiB,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE;QAC3D,OAAO,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IACD,KAAK,CAAC,KAAK;QACT,YAAY,EAAE,EAAE,CAAC;QACjB,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAClD,OAAO,CAAC,QAAQ,EAAE,CAAC;QACnB,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,CAAC,CAAC;AAEf,MAAM,OAAO,GAA2B;IACtC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;IACzB,UAAU,EAAE,UAAU,CAAC,GAAG;CAC3B,CAAC;AAEF,IAAI,UAAU,CAAC,SAAS,CAAC,GAAG;IAAE,OAAO,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC;AAC3E,IAAI,UAAU,CAAC,SAAS,CAAC,GAAG;IAAE,OAAO,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC;AAE3E,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"gossipHandlers.d.ts","sourceRoot":"","sources":["../../../src/network/processor/gossipHandlers.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAkB,MAAM,kBAAkB,CAAC;AAU/D,OAAO,EACL,IAAI,EAGJ,IAAI,EAOL,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAW,MAAM,EAAgC,MAAM,iBAAiB,CAAC;AAuBhF,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAoBtD,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAC7C,OAAO,EAGL,cAAc,EAGf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wDAAwD;IACxD,sCAAsC,CAAC,EAAE,OAAO,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AAKF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAE1G;AA8wBD;;GAEG;AACH,wBAAsB,gCAAgC,CAAC,CAAC,EACtD,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,IAAI,GACd,OAAO,CAAC,CAAC,CAAC,CA6BZ"}
1
+ {"version":3,"file":"gossipHandlers.d.ts","sourceRoot":"","sources":["../../../src/network/processor/gossipHandlers.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAkB,MAAM,kBAAkB,CAAC;AAU/D,OAAO,EACL,IAAI,EAGJ,IAAI,EAOL,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAW,MAAM,EAAgC,MAAM,iBAAiB,CAAC;AAwBhF,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAoBtD,OAAO,EAAC,OAAO,EAAC,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAC7C,OAAO,EAGL,cAAc,EAGf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wDAAwD;IACxD,sCAAsC,CAAC,EAAE,OAAO,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AAKF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAE1G;AAsxBD;;GAEG;AACH,wBAAsB,gCAAgC,CAAC,CAAC,EACtD,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,IAAI,GACd,OAAO,CAAC,CAAC,CAAC,CA6BZ"}
@@ -6,7 +6,7 @@ import { LogLevel, prettyBytes, toHex, toRootHex } from "@lodestar/utils";
6
6
  import { BlockInputSource, isBlockInputColumns, } from "../../chain/blocks/blockInput/index.js";
7
7
  import { BlobSidecarValidation } from "../../chain/blocks/types.js";
8
8
  import { ChainEvent } from "../../chain/emitter.js";
9
- import { AttestationError, AttestationErrorCode, BlobSidecarErrorCode, BlobSidecarGossipError, BlockError, BlockErrorCode, BlockGossipError, DataColumnSidecarGossipError, GossipAction, GossipActionError, SyncCommitteeError, } from "../../chain/errors/index.js";
9
+ import { AttestationError, AttestationErrorCode, BlobSidecarErrorCode, BlobSidecarGossipError, BlockError, BlockErrorCode, BlockGossipError, DataColumnSidecarErrorCode, DataColumnSidecarGossipError, GossipAction, GossipActionError, SyncCommitteeError, } from "../../chain/errors/index.js";
10
10
  import { validateGossipBlobSidecar } from "../../chain/validation/blobSidecar.js";
11
11
  import { validateGossipDataColumnSidecar } from "../../chain/validation/dataColumnSidecar.js";
12
12
  import { toElectraSingleAttestation, validateGossipAggregateAndProof, validateGossipAttestationsSameAttData, validateGossipAttesterSlashing, validateGossipBlock, validateGossipBlsToExecutionChange, validateGossipProposerSlashing, validateGossipSyncCommittee, validateGossipVoluntaryExit, validateSyncCommitteeGossipContributionAndProof, } from "../../chain/validation/index.js";
@@ -181,7 +181,11 @@ function getSequentialHandlers(modules, options) {
181
181
  ...blockInput.getLogMeta(),
182
182
  index: dataColumnSidecar.index,
183
183
  });
184
- return blockInput;
184
+ throw new DataColumnSidecarGossipError(GossipAction.IGNORE, {
185
+ code: DataColumnSidecarErrorCode.ALREADY_KNOWN,
186
+ columnIdx: dataColumnSidecar.index,
187
+ slot,
188
+ });
185
189
  }
186
190
  }
187
191
  const verificationTimer = metrics?.peerDas.dataColumnSidecarGossipVerificationTime.startTimer();
@@ -383,6 +387,14 @@ function getSequentialHandlers(modules, options) {
383
387
  metrics?.dataColumns.elapsedTimeTillReceived.observe({ receivedOrder: receivedColumns }, delaySec);
384
388
  break;
385
389
  }
390
+ if (!blockInput.hasAllData()) {
391
+ // immediately attempt fetch of data columns from execution engine
392
+ chain.getBlobsTracker.triggerGetBlobs(blockInput);
393
+ // if we've received at least half of the columns, trigger reconstruction of the rest
394
+ if (blockInput.columnCount >= NUMBER_OF_COLUMNS / 2) {
395
+ chain.columnReconstructionTracker.triggerColumnReconstruction(blockInput);
396
+ }
397
+ }
386
398
  if (!blockInput.hasBlockAndAllData()) {
387
399
  const cutoffTimeMs = getCutoffTimeMs(chain, dataColumnSlot, BLOCK_AVAILABILITY_CUTOFF_MS);
388
400
  chain.logger.debug("Received gossip data column, waiting for full data availability", {
@@ -402,12 +414,6 @@ function getSequentialHandlers(modules, options) {
402
414
  source: BlockInputSource.gossip,
403
415
  });
404
416
  });
405
- // immediately attempt fetch of data columns from execution engine
406
- chain.getBlobsTracker.triggerGetBlobs(blockInput);
407
- // if we've received at least half of the columns, trigger reconstruction of the rest
408
- if (blockInput.columnCount >= NUMBER_OF_COLUMNS / 2) {
409
- chain.columnReconstructionTracker.triggerColumnReconstruction(blockInput);
410
- }
411
417
  }
412
418
  },
413
419
  [GossipType.beacon_aggregate_and_proof]: async ({ gossipData, topic, seenTimestampSec, }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"gossipHandlers.js","sourceRoot":"","sources":["../../../src/network/processor/gossipHandlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gossipHandlers.js","sourceRoot":"","sources":["../../../src/network/processor/gossipHandlers.ts"],"names":[],"mappings":"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"}
@@ -110,8 +110,8 @@ export function getRangeSyncTarget(local, remote, forkChoice) {
110
110
  return {
111
111
  syncType: RangeSyncType.Head,
112
112
  // The new peer has the same finalized (earlier filters should prevent a peer with an
113
- // earlier finalized chain from reaching here).
114
- startEpoch: Math.min(computeEpochAtSlot(local.headSlot), remote.finalizedEpoch),
113
+ // earlier finalized chain from reaching here) and local head will always be >= local finalized.
114
+ startEpoch: computeEpochAtSlot(local.headSlot),
115
115
  target: {
116
116
  slot: remote.headSlot,
117
117
  root: remote.headRoot,
@@ -1 +1 @@
1
- {"version":3,"file":"remoteSyncType.js","sourceRoot":"","sources":["../../../src/sync/utils/remoteSyncType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remoteSyncType.js","sourceRoot":"","sources":["../../../src/sync/utils/remoteSyncType.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
- /**
2
- * Take 10m profile of the current thread without promise tracking.
3
- */
4
- export declare function profileNodeJS(durationMs: number): Promise<string>;
1
+ export declare enum ProfileThread {
2
+ MAIN = "main",
3
+ NETWORK = "network",
4
+ DISC5 = "discv5"
5
+ }
6
+ export declare function profileThread(thread: ProfileThread, durationMs: number, dirpath: string): Promise<string>;
5
7
  /**
6
8
  * Write heap snapshot of the current thread to the specified file.
7
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/util/profile.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0BvE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAiBxF"}
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/util/profile.ts"],"names":[],"mappings":"AAIA,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,KAAK,WAAW;CACjB;AASD,wBAAsB,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAE/G;AAwDD;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAiBxF"}
@@ -1,11 +1,28 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
1
3
  import { sleep } from "@lodestar/utils";
4
+ export var ProfileThread;
5
+ (function (ProfileThread) {
6
+ ProfileThread["MAIN"] = "main";
7
+ ProfileThread["NETWORK"] = "network";
8
+ ProfileThread["DISC5"] = "discv5";
9
+ })(ProfileThread || (ProfileThread = {}));
2
10
  /**
3
- * Take 10m profile of the current thread without promise tracking.
11
+ * The time to take a Bun profile.
12
+ * If we increase this time it'll potentiall cause the app to crash.
13
+ * If we decrease this time, profile recorded will be fragmented and hard to analyze.
4
14
  */
5
- export async function profileNodeJS(durationMs) {
15
+ const BUN_PROFILE_MS = 3 * 1000;
16
+ export async function profileThread(thread, durationMs, dirpath) {
17
+ return globalThis.Bun ? profileBun(thread, durationMs) : profileNodeJS(thread, durationMs, dirpath);
18
+ }
19
+ /**
20
+ * Take `durationMs` profile of the current thread and return the persisted file path.
21
+ */
22
+ async function profileNodeJS(thread, durationMs, dirpath) {
6
23
  const inspector = await import("node:inspector");
7
24
  // due to some typing issues, not able to use promisify here
8
- return new Promise((resolve, reject) => {
25
+ const profile = await new Promise((resolve, reject) => {
9
26
  // Start the inspector and connect to it
10
27
  const session = new inspector.Session();
11
28
  session.connect();
@@ -26,6 +43,26 @@ export async function profileNodeJS(durationMs) {
26
43
  });
27
44
  });
28
45
  });
46
+ const filePath = path.join(dirpath, `${thread}_thread_${new Date().toISOString()}.cpuprofile`);
47
+ fs.writeFileSync(filePath, profile);
48
+ return filePath;
49
+ }
50
+ /**
51
+ * Unlike NodeJS, Bun console.profile() api flush data to the inspector,
52
+ * so this api returns ms taken of this profile instead of file path.
53
+ */
54
+ async function profileBun(thread, durationMs) {
55
+ const start = Date.now();
56
+ let now = Date.now();
57
+ while (now - start < durationMs) {
58
+ // biome-ignore lint/suspicious/noConsole: need to use console api to profile in Bun
59
+ console.profile(String(now));
60
+ await sleep(BUN_PROFILE_MS);
61
+ // biome-ignore lint/suspicious/noConsole: need to use console api to profile in Bun
62
+ console.profileEnd(String(now));
63
+ now = Date.now();
64
+ }
65
+ return `Successfully take Bun ${thread} thread profile in ${now - start}ms. Check your inspector to see the profile.`;
29
66
  }
30
67
  /**
31
68
  * Write heap snapshot of the current thread to the specified file.
@@ -1 +1 @@
1
- {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/util/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAAkB;IACpD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAEjD,4DAA4D;IAC5D,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,wCAAwC;QACxC,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACxC,OAAO,CAAC,OAAO,EAAE,CAAC;QAElB,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACnC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;gBACxC,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,EAAC,OAAO,EAAC,EAAE,EAAE;oBAC/C,IAAI,CAAC,GAAG,EAAE,CAAC;wBACT,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oBACnC,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,GAAG,CAAC,CAAC;oBACd,CAAC;oBAED,kDAAkD;oBAClD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;oBACjC,OAAO,CAAC,UAAU,EAAE,CAAC;gBACvB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAc,EAAE,OAAe;IACrE,oCAAoC;IACpC,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,cAAc,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC;IAC5C,MAAM,QAAQ,GAAG,GAAG,OAAO,IAAI,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;IACjF,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC7B,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YAC5B,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/util/profile.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -11,55 +11,67 @@
11
11
  "bugs": {
12
12
  "url": "https://github.com/ChainSafe/lodestar/issues"
13
13
  },
14
- "version": "1.36.0-dev.6d67a79656",
14
+ "version": "1.36.0-dev.6f46a8bd20",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
18
18
  "bun": "./src/index.ts",
19
+ "types": "./lib/index.d.ts",
19
20
  "import": "./lib/index.js"
20
21
  },
21
22
  "./api": {
22
23
  "bun": "./src/api/index.ts",
24
+ "types": "./lib/api/index.d.ts",
23
25
  "import": "./lib/api/index.js"
24
26
  },
25
27
  "./chain": {
26
28
  "bun": "./src/chain/index.ts",
29
+ "types": "./lib/chain/index.d.ts",
27
30
  "import": "./lib/chain/index.js"
28
31
  },
29
32
  "./constants": {
30
33
  "bun": "./src/constants/index.ts",
34
+ "types": "./lib/constants/index.d.ts",
31
35
  "import": "./lib/constants/index.js"
32
36
  },
33
37
  "./db": {
34
38
  "bun": "./src/db/index.ts",
39
+ "types": "./lib/db/index.d.ts",
35
40
  "import": "./lib/db/index.js"
36
41
  },
37
42
  "./eth1": {
38
43
  "bun": "./src/eth1/index.ts",
44
+ "types": "./lib/eth1/index.d.ts",
39
45
  "import": "./lib/eth1/index.js"
40
46
  },
41
47
  "./metrics": {
42
48
  "bun": "./src/metrics/index.ts",
49
+ "types": "./lib/metrics/index.d.ts",
43
50
  "import": "./lib/metrics/index.js"
44
51
  },
45
52
  "./monitoring": {
46
53
  "bun": "./src/monitoring/index.ts",
54
+ "types": "./lib/monitoring/index.d.ts",
47
55
  "import": "./lib/monitoring/index.js"
48
56
  },
49
57
  "./network": {
50
58
  "bun": "./src/network/index.ts",
59
+ "types": "./lib/network/index.d.ts",
51
60
  "import": "./lib/network/index.js"
52
61
  },
53
62
  "./node": {
54
63
  "bun": "./src/node/index.ts",
64
+ "types": "./lib/node/index.d.ts",
55
65
  "import": "./lib/node/index.js"
56
66
  },
57
67
  "./sync": {
58
68
  "bun": "./src/sync/index.ts",
69
+ "types": "./lib/sync/index.d.ts",
59
70
  "import": "./lib/sync/index.js"
60
71
  },
61
72
  "./util": {
62
73
  "bun": "./src/util/index.ts",
74
+ "types": "./lib/util/index.d.ts",
63
75
  "import": "./lib/util/index.js"
64
76
  }
65
77
  },
@@ -73,16 +85,6 @@
73
85
  "default": "datastore-level"
74
86
  }
75
87
  },
76
- "typesVersions": {
77
- "*": {
78
- "*": [
79
- "*",
80
- "lib/*",
81
- "lib/*/index"
82
- ]
83
- }
84
- },
85
- "types": "./lib/index.d.ts",
86
88
  "files": [
87
89
  "src",
88
90
  "lib",
@@ -138,18 +140,18 @@
138
140
  "@libp2p/peer-id": "^5.1.0",
139
141
  "@libp2p/prometheus-metrics": "^4.3.15",
140
142
  "@libp2p/tcp": "^10.1.8",
141
- "@lodestar/api": "1.36.0-dev.6d67a79656",
142
- "@lodestar/config": "1.36.0-dev.6d67a79656",
143
- "@lodestar/db": "1.36.0-dev.6d67a79656",
144
- "@lodestar/fork-choice": "1.36.0-dev.6d67a79656",
145
- "@lodestar/light-client": "1.36.0-dev.6d67a79656",
146
- "@lodestar/logger": "1.36.0-dev.6d67a79656",
147
- "@lodestar/params": "1.36.0-dev.6d67a79656",
148
- "@lodestar/reqresp": "1.36.0-dev.6d67a79656",
149
- "@lodestar/state-transition": "1.36.0-dev.6d67a79656",
150
- "@lodestar/types": "1.36.0-dev.6d67a79656",
151
- "@lodestar/utils": "1.36.0-dev.6d67a79656",
152
- "@lodestar/validator": "1.36.0-dev.6d67a79656",
143
+ "@lodestar/api": "1.36.0-dev.6f46a8bd20",
144
+ "@lodestar/config": "1.36.0-dev.6f46a8bd20",
145
+ "@lodestar/db": "1.36.0-dev.6f46a8bd20",
146
+ "@lodestar/fork-choice": "1.36.0-dev.6f46a8bd20",
147
+ "@lodestar/light-client": "1.36.0-dev.6f46a8bd20",
148
+ "@lodestar/logger": "1.36.0-dev.6f46a8bd20",
149
+ "@lodestar/params": "1.36.0-dev.6f46a8bd20",
150
+ "@lodestar/reqresp": "1.36.0-dev.6f46a8bd20",
151
+ "@lodestar/state-transition": "1.36.0-dev.6f46a8bd20",
152
+ "@lodestar/types": "1.36.0-dev.6f46a8bd20",
153
+ "@lodestar/utils": "1.36.0-dev.6f46a8bd20",
154
+ "@lodestar/validator": "1.36.0-dev.6f46a8bd20",
153
155
  "@multiformats/multiaddr": "^12.1.3",
154
156
  "datastore-core": "^10.0.2",
155
157
  "datastore-fs": "^10.0.6",
@@ -185,5 +187,5 @@
185
187
  "beacon",
186
188
  "blockchain"
187
189
  ],
188
- "gitHead": "61c242e785567cbf194f0d58941d768e84d1e7c4"
190
+ "gitHead": "a1cc4685a4ce081e2620a6b0b4f645e1167ec6e5"
189
191
  }
@@ -1,5 +1,3 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
1
  import {Tree} from "@chainsafe/persistent-merkle-tree";
4
2
  import {routes} from "@lodestar/api";
5
3
  import {ApplicationMethods} from "@lodestar/api/server";
@@ -13,7 +11,7 @@ import {BeaconChain} from "../../../chain/index.js";
13
11
  import {QueuedStateRegenerator, RegenRequest} from "../../../chain/regen/index.js";
14
12
  import {IBeaconDb} from "../../../db/interface.js";
15
13
  import {GossipType} from "../../../network/index.js";
16
- import {profileNodeJS, writeHeapSnapshot} from "../../../util/profile.js";
14
+ import {ProfileThread, profileThread, writeHeapSnapshot} from "../../../util/profile.js";
17
15
  import {getStateResponseWithRegen} from "../beacon/state/utils.js";
18
16
  import {ApiModules} from "../types.js";
19
17
 
@@ -26,7 +24,9 @@ export function getLodestarApi({
26
24
  }: Pick<ApiModules, "chain" | "config" | "db" | "network" | "sync">): ApplicationMethods<routes.lodestar.Endpoints> {
27
25
  let writingHeapdump = false;
28
26
  let writingProfile = false;
29
- const defaultProfileMs = SLOTS_PER_EPOCH * config.SLOT_DURATION_MS;
27
+ // for NodeJS, profile the whole epoch
28
+ // for Bun, profile 1 slot. Otherwise it will either crash the app, and/or inspector cannot render the profile
29
+ const defaultProfileMs = globalThis.Bun ? config.SLOT_DURATION_MS : SLOTS_PER_EPOCH * config.SLOT_DURATION_MS;
30
30
 
31
31
  return {
32
32
  async writeHeapdump({thread = "main", dirpath = "."}) {
@@ -63,7 +63,6 @@ export function getLodestarApi({
63
63
 
64
64
  try {
65
65
  let filepath: string;
66
- let profile: string;
67
66
  switch (thread) {
68
67
  case "network":
69
68
  filepath = await network.writeNetworkThreadProfile(duration, dirpath);
@@ -73,12 +72,10 @@ export function getLodestarApi({
73
72
  break;
74
73
  default:
75
74
  // main thread
76
- profile = await profileNodeJS(duration);
77
- filepath = path.join(dirpath, `main_thread_${new Date().toISOString()}.cpuprofile`);
78
- fs.writeFileSync(filepath, profile);
75
+ filepath = await profileThread(ProfileThread.MAIN, duration, dirpath);
79
76
  break;
80
77
  }
81
- return {data: {filepath}};
78
+ return {data: {result: filepath}};
82
79
  } finally {
83
80
  writingProfile = false;
84
81
  }
@@ -63,7 +63,9 @@ export class FrequencyStateArchiveStrategy implements StateArchiveStrategy {
63
63
  const lastStoredEpoch = computeEpochAtSlot(lastStoredSlot ?? 0);
64
64
  const {archiveStateEpochFrequency} = this.opts;
65
65
 
66
+ const logCtx = {finalizedEpoch: finalized.epoch, lastStoredEpoch, archiveStateEpochFrequency};
66
67
  if (finalized.epoch - lastStoredEpoch >= Math.min(PERSIST_TEMP_STATE_EVERY_EPOCHS, archiveStateEpochFrequency)) {
68
+ this.logger.verbose("Start archiving state", logCtx);
67
69
  await this.archiveState(finalized, metrics);
68
70
 
69
71
  // Only check the current and previous intervals
@@ -88,11 +90,13 @@ export class FrequencyStateArchiveStrategy implements StateArchiveStrategy {
88
90
 
89
91
  // More logs to investigate the rss spike issue https://github.com/ChainSafe/lodestar/issues/5591
90
92
  this.logger.verbose("Archived state completed", {
91
- finalizedEpoch: finalized.epoch,
93
+ ...logCtx,
92
94
  minEpoch,
93
95
  storedStateSlots: storedStateSlots.join(","),
94
96
  statesSlotsToDelete: statesSlotsToDelete.join(","),
95
97
  });
98
+ } else {
99
+ this.logger.verbose("Skip archiving state", logCtx);
96
100
  }
97
101
  }
98
102
 
@@ -8,6 +8,7 @@ export enum DataColumnSidecarErrorCode {
8
8
  MISMATCHED_LENGTHS = "DATA_COLUMN_SIDECAR_ERROR_MISMATCHED_LENGTHS",
9
9
  INVALID_SUBNET = "DATA_COLUMN_SIDECAR_ERROR_INVALID_SUBNET",
10
10
  INVALID_KZG_PROOF = "DATA_COLUMN_SIDECAR_ERROR_INVALID_KZG_PROOF",
11
+ TOO_MANY_KZG_COMMITMENTS = "DATA_COLUMN_SIDECAR_ERROR_TOO_MANY_KZG_COMMITMENTS",
11
12
 
12
13
  // Validation errors when validating against an existing block
13
14
 
@@ -43,6 +44,13 @@ export type DataColumnSidecarErrorType =
43
44
  proofsLength: number;
44
45
  }
45
46
  | {code: DataColumnSidecarErrorCode.INVALID_SUBNET; columnIdx: number; gossipSubnet: SubnetID}
47
+ | {
48
+ code: DataColumnSidecarErrorCode.TOO_MANY_KZG_COMMITMENTS;
49
+ slot: number;
50
+ columnIdx: number;
51
+ count: number;
52
+ limit: number;
53
+ }
46
54
  | {code: DataColumnSidecarErrorCode.ALREADY_KNOWN; columnIdx: number; slot: Slot}
47
55
  | {code: DataColumnSidecarErrorCode.FUTURE_SLOT; blockSlot: Slot; currentSlot: Slot}
48
56
  | {code: DataColumnSidecarErrorCode.WOULD_REVERT_FINALIZED_SLOT; blockSlot: Slot; finalizedSlot: Slot}