@lodestar/beacon-node 1.50.0-dev.6fb6c0bad4 → 1.50.0-dev.9c3f7bebe9

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 (52) hide show
  1. package/lib/chain/archiveStore/archiveStore.d.ts +1 -0
  2. package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
  3. package/lib/chain/archiveStore/archiveStore.js +6 -2
  4. package/lib/chain/archiveStore/archiveStore.js.map +1 -1
  5. package/lib/chain/archiveStore/utils/pruneHistory.d.ts +4 -1
  6. package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +1 -1
  7. package/lib/chain/archiveStore/utils/pruneHistory.js +4 -3
  8. package/lib/chain/archiveStore/utils/pruneHistory.js.map +1 -1
  9. package/lib/chain/initState.d.ts +0 -7
  10. package/lib/chain/initState.d.ts.map +1 -1
  11. package/lib/chain/initState.js +3 -35
  12. package/lib/chain/initState.js.map +1 -1
  13. package/lib/db/beacon.d.ts.map +1 -1
  14. package/lib/db/beacon.js +2 -0
  15. package/lib/db/beacon.js.map +1 -1
  16. package/lib/execution/engine/http.d.ts.map +1 -1
  17. package/lib/execution/engine/http.js +5 -4
  18. package/lib/execution/engine/http.js.map +1 -1
  19. package/lib/index.d.ts +1 -1
  20. package/lib/index.d.ts.map +1 -1
  21. package/lib/index.js +1 -1
  22. package/lib/index.js.map +1 -1
  23. package/lib/metrics/metrics/beacon.d.ts +1 -1
  24. package/lib/metrics/metrics/beacon.d.ts.map +1 -1
  25. package/lib/metrics/metrics/beacon.js.map +1 -1
  26. package/lib/network/metadata.d.ts +1 -1
  27. package/lib/network/metadata.d.ts.map +1 -1
  28. package/lib/network/metadata.js +17 -17
  29. package/lib/network/metadata.js.map +1 -1
  30. package/lib/network/peers/datastore.d.ts +9 -9
  31. package/lib/network/peers/datastore.d.ts.map +1 -1
  32. package/lib/network/peers/datastore.js +36 -36
  33. package/lib/network/peers/datastore.js.map +1 -1
  34. package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRoot.d.ts.map +1 -1
  35. package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRoot.js +41 -26
  36. package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRoot.js.map +1 -1
  37. package/lib/util/execution.d.ts +2 -0
  38. package/lib/util/execution.d.ts.map +1 -1
  39. package/lib/util/execution.js +6 -6
  40. package/lib/util/execution.js.map +1 -1
  41. package/package.json +15 -15
  42. package/src/chain/archiveStore/archiveStore.ts +9 -3
  43. package/src/chain/archiveStore/utils/pruneHistory.ts +6 -4
  44. package/src/chain/initState.ts +4 -55
  45. package/src/db/beacon.ts +2 -0
  46. package/src/execution/engine/http.ts +6 -4
  47. package/src/index.ts +1 -1
  48. package/src/metrics/metrics/beacon.ts +1 -1
  49. package/src/network/metadata.ts +17 -17
  50. package/src/network/peers/datastore.ts +36 -36
  51. package/src/network/reqresp/handlers/executionPayloadEnvelopesByRoot.ts +42 -28
  52. package/src/util/execution.ts +10 -6
@@ -259,8 +259,8 @@ export async function getDataColumnSidecarsFromExecution(
259
259
  return DataColumnEngineResult.SuccessResolved;
260
260
  }
261
261
 
262
- /** engine_getPayloadBodiesByHashV2: ELs MUST support at least 32 hashes per request. */
263
- const MAX_BODIES_REQUEST = 32;
262
+ /** engine_getPayloadBodiesByHashV2: every EL must accept requests of up to 32 hashes, larger ones may fail with -38004 */
263
+ export const MAX_BODIES_PER_REQUEST = 32;
264
264
 
265
265
  type SlotEnvelopeBytes = {slot: Slot; envelopeBytes: Uint8Array};
266
266
 
@@ -299,7 +299,7 @@ export async function* reconstructExecutionPayloadEnvelopesByRange(
299
299
 
300
300
  for await (const {key, value: bytes} of archive.binaryEntriesStream({gte: startSlot, lt: endSlot})) {
301
301
  batch.push({slot: archive.decodeKey(key), ...decodeArchivedEnvelope(bytes)});
302
- if (batch.length === MAX_BODIES_REQUEST) {
302
+ if (batch.length === MAX_BODIES_PER_REQUEST) {
303
303
  yield* reconstructBatch(executionEngine, logger, metrics, batch);
304
304
  batch = [];
305
305
  }
@@ -359,9 +359,13 @@ export async function reconstructExecutionPayloadEnvelopes(
359
359
  headerEnvelopes: gloas.SignedExecutionPayloadHeaderEnvelope[]
360
360
  ): Promise<(gloas.SignedExecutionPayloadEnvelope | RebuildMiss)[]> {
361
361
  const out: (gloas.SignedExecutionPayloadEnvelope | RebuildMiss)[] = [];
362
- for (let i = 0; i < headerEnvelopes.length; i += MAX_BODIES_REQUEST) {
362
+ for (let i = 0; i < headerEnvelopes.length; i += MAX_BODIES_PER_REQUEST) {
363
363
  out.push(
364
- ...(await reconstructEnvelopesBatch(executionEngine, metrics, headerEnvelopes.slice(i, i + MAX_BODIES_REQUEST)))
364
+ ...(await reconstructEnvelopesBatch(
365
+ executionEngine,
366
+ metrics,
367
+ headerEnvelopes.slice(i, i + MAX_BODIES_PER_REQUEST)
368
+ ))
365
369
  );
366
370
  }
367
371
  return out;
@@ -409,7 +413,7 @@ async function reconstructEnvelopesBatch(
409
413
  withdrawals: body.withdrawals,
410
414
  blockAccessList: body.blockAccessList,
411
415
  });
412
- metrics?.payloadEnvelopeReconstruction.envelopes.inc({result: "ok"});
416
+ metrics?.payloadEnvelopeReconstruction.envelopes.inc({result: "success"});
413
417
  return envelope;
414
418
  } catch (e) {
415
419
  if (