@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.
- package/lib/chain/archiveStore/archiveStore.d.ts +1 -0
- package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
- package/lib/chain/archiveStore/archiveStore.js +6 -2
- package/lib/chain/archiveStore/archiveStore.js.map +1 -1
- package/lib/chain/archiveStore/utils/pruneHistory.d.ts +4 -1
- package/lib/chain/archiveStore/utils/pruneHistory.d.ts.map +1 -1
- package/lib/chain/archiveStore/utils/pruneHistory.js +4 -3
- package/lib/chain/archiveStore/utils/pruneHistory.js.map +1 -1
- package/lib/chain/initState.d.ts +0 -7
- package/lib/chain/initState.d.ts.map +1 -1
- package/lib/chain/initState.js +3 -35
- package/lib/chain/initState.js.map +1 -1
- package/lib/db/beacon.d.ts.map +1 -1
- package/lib/db/beacon.js +2 -0
- package/lib/db/beacon.js.map +1 -1
- package/lib/execution/engine/http.d.ts.map +1 -1
- package/lib/execution/engine/http.js +5 -4
- package/lib/execution/engine/http.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/metrics/metrics/beacon.d.ts +1 -1
- package/lib/metrics/metrics/beacon.d.ts.map +1 -1
- package/lib/metrics/metrics/beacon.js.map +1 -1
- package/lib/network/metadata.d.ts +1 -1
- package/lib/network/metadata.d.ts.map +1 -1
- package/lib/network/metadata.js +17 -17
- package/lib/network/metadata.js.map +1 -1
- package/lib/network/peers/datastore.d.ts +9 -9
- package/lib/network/peers/datastore.d.ts.map +1 -1
- package/lib/network/peers/datastore.js +36 -36
- package/lib/network/peers/datastore.js.map +1 -1
- package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRoot.d.ts.map +1 -1
- package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRoot.js +41 -26
- package/lib/network/reqresp/handlers/executionPayloadEnvelopesByRoot.js.map +1 -1
- package/lib/util/execution.d.ts +2 -0
- package/lib/util/execution.d.ts.map +1 -1
- package/lib/util/execution.js +6 -6
- package/lib/util/execution.js.map +1 -1
- package/package.json +15 -15
- package/src/chain/archiveStore/archiveStore.ts +9 -3
- package/src/chain/archiveStore/utils/pruneHistory.ts +6 -4
- package/src/chain/initState.ts +4 -55
- package/src/db/beacon.ts +2 -0
- package/src/execution/engine/http.ts +6 -4
- package/src/index.ts +1 -1
- package/src/metrics/metrics/beacon.ts +1 -1
- package/src/network/metadata.ts +17 -17
- package/src/network/peers/datastore.ts +36 -36
- package/src/network/reqresp/handlers/executionPayloadEnvelopesByRoot.ts +42 -28
- package/src/util/execution.ts +10 -6
package/src/util/execution.ts
CHANGED
|
@@ -259,8 +259,8 @@ export async function getDataColumnSidecarsFromExecution(
|
|
|
259
259
|
return DataColumnEngineResult.SuccessResolved;
|
|
260
260
|
}
|
|
261
261
|
|
|
262
|
-
/** engine_getPayloadBodiesByHashV2:
|
|
263
|
-
const
|
|
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 ===
|
|
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 +=
|
|
362
|
+
for (let i = 0; i < headerEnvelopes.length; i += MAX_BODIES_PER_REQUEST) {
|
|
363
363
|
out.push(
|
|
364
|
-
...(await reconstructEnvelopesBatch(
|
|
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: "
|
|
416
|
+
metrics?.payloadEnvelopeReconstruction.envelopes.inc({result: "success"});
|
|
413
417
|
return envelope;
|
|
414
418
|
} catch (e) {
|
|
415
419
|
if (
|