@lodestar/beacon-node 1.44.0-dev.d730eae4b6 → 1.44.0-dev.df8a25e36b
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/api/impl/beacon/blocks/index.d.ts.map +1 -1
- package/lib/api/impl/beacon/blocks/index.js +20 -29
- package/lib/api/impl/beacon/blocks/index.js.map +1 -1
- package/lib/api/impl/beacon/pool/index.d.ts.map +1 -1
- package/lib/api/impl/beacon/pool/index.js +0 -25
- package/lib/api/impl/beacon/pool/index.js.map +1 -1
- package/lib/api/impl/lodestar/index.d.ts.map +1 -1
- package/lib/api/impl/lodestar/index.js +28 -0
- package/lib/api/impl/lodestar/index.js.map +1 -1
- package/lib/api/impl/validator/index.d.ts.map +1 -1
- package/lib/api/impl/validator/index.js +20 -27
- package/lib/api/impl/validator/index.js.map +1 -1
- package/lib/chain/blocks/verifyExecutionPayloadEnvelope.d.ts.map +1 -1
- package/lib/chain/blocks/verifyExecutionPayloadEnvelope.js +2 -2
- package/lib/chain/blocks/verifyExecutionPayloadEnvelope.js.map +1 -1
- package/lib/chain/chain.d.ts.map +1 -1
- package/lib/chain/chain.js +8 -1
- package/lib/chain/chain.js.map +1 -1
- package/lib/chain/emitter.d.ts +2 -1
- package/lib/chain/emitter.d.ts.map +1 -1
- package/lib/chain/emitter.js.map +1 -1
- package/lib/chain/errors/blockError.d.ts +0 -7
- package/lib/chain/errors/blockError.d.ts.map +1 -1
- package/lib/chain/errors/blockError.js +0 -3
- package/lib/chain/errors/blockError.js.map +1 -1
- package/lib/chain/errors/executionPayloadBid.d.ts +6 -0
- package/lib/chain/errors/executionPayloadBid.d.ts.map +1 -1
- package/lib/chain/errors/executionPayloadBid.js +1 -0
- package/lib/chain/errors/executionPayloadBid.js.map +1 -1
- package/lib/chain/forkChoice/index.d.ts +4 -4
- package/lib/chain/forkChoice/index.d.ts.map +1 -1
- package/lib/chain/forkChoice/index.js +10 -7
- package/lib/chain/forkChoice/index.js.map +1 -1
- package/lib/chain/options.d.ts.map +1 -1
- package/lib/chain/options.js +1 -0
- package/lib/chain/options.js.map +1 -1
- package/lib/chain/produceBlock/produceBlockBody.js +1 -1
- package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
- package/lib/chain/validation/block.d.ts +5 -1
- package/lib/chain/validation/block.d.ts.map +1 -1
- package/lib/chain/validation/block.js +4 -14
- package/lib/chain/validation/block.js.map +1 -1
- package/lib/chain/validation/executionPayloadBid.js +12 -1
- package/lib/chain/validation/executionPayloadBid.js.map +1 -1
- package/lib/chain/validation/executionPayloadEnvelope.js +0 -2
- package/lib/chain/validation/executionPayloadEnvelope.js.map +1 -1
- package/lib/metrics/metrics/lodestar.d.ts +4 -0
- package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
- package/lib/metrics/metrics/lodestar.js +10 -0
- package/lib/metrics/metrics/lodestar.js.map +1 -1
- package/lib/network/gossip/topic.d.ts +2 -2
- package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
- package/lib/network/processor/gossipHandlers.js +9 -2
- package/lib/network/processor/gossipHandlers.js.map +1 -1
- package/lib/network/processor/index.d.ts +2 -2
- package/lib/network/processor/index.d.ts.map +1 -1
- package/lib/network/processor/index.js +25 -23
- package/lib/network/processor/index.js.map +1 -1
- package/lib/sync/types.d.ts +9 -1
- package/lib/sync/types.d.ts.map +1 -1
- package/lib/sync/types.js +9 -2
- package/lib/sync/types.js.map +1 -1
- package/lib/sync/unknownBlock.d.ts.map +1 -1
- package/lib/sync/unknownBlock.js +64 -30
- package/lib/sync/unknownBlock.js.map +1 -1
- package/lib/util/dataColumns.d.ts.map +1 -1
- package/lib/util/dataColumns.js +16 -11
- package/lib/util/dataColumns.js.map +1 -1
- package/lib/util/sszBytes.js +1 -1
- package/package.json +15 -15
- package/src/api/impl/beacon/blocks/index.ts +19 -37
- package/src/api/impl/beacon/pool/index.ts +1 -41
- package/src/api/impl/lodestar/index.ts +30 -0
- package/src/api/impl/validator/index.ts +29 -39
- package/src/chain/blocks/verifyExecutionPayloadEnvelope.ts +2 -4
- package/src/chain/chain.ts +10 -1
- package/src/chain/emitter.ts +3 -2
- package/src/chain/errors/blockError.ts +0 -4
- package/src/chain/errors/executionPayloadBid.ts +7 -0
- package/src/chain/forkChoice/index.ts +13 -0
- package/src/chain/options.ts +1 -0
- package/src/chain/produceBlock/produceBlockBody.ts +1 -1
- package/src/chain/validation/block.ts +12 -16
- package/src/chain/validation/executionPayloadBid.ts +13 -1
- package/src/chain/validation/executionPayloadEnvelope.ts +0 -2
- package/src/metrics/metrics/lodestar.ts +11 -0
- package/src/network/processor/gossipHandlers.ts +9 -2
- package/src/network/processor/index.ts +27 -27
- package/src/sync/types.ts +11 -2
- package/src/sync/unknownBlock.ts +70 -31
- package/src/util/dataColumns.ts +17 -12
- package/src/util/sszBytes.ts +1 -1
|
@@ -135,9 +135,11 @@ export class NetworkProcessor {
|
|
|
135
135
|
// we may not receive the block for messages like Attestation and SignedAggregateAndProof messages, in that case PendingGossipsubMessage needs
|
|
136
136
|
// to be stored in this Map and reprocessed once the block comes
|
|
137
137
|
awaitingMessagesByBlockRoot;
|
|
138
|
+
awaitingBlockMessageCount = 0;
|
|
138
139
|
// we may not receive the payload for messages that require the FULL payload variant to be processed,
|
|
139
140
|
// in that case PendingGossipsubMessage needs to be stored in this Map and reprocessed once the payload comes
|
|
140
141
|
awaitingMessagesByPayloadBlockRoot;
|
|
142
|
+
awaitingPayloadMessageCount = 0;
|
|
141
143
|
unknownBlocksBySlot = new MapDef(() => new Set());
|
|
142
144
|
unknownEnvelopesBySlot = new MapDef(() => new Set());
|
|
143
145
|
constructor(modules, opts) {
|
|
@@ -167,8 +169,8 @@ export class NetworkProcessor {
|
|
|
167
169
|
metrics.gossipValidationQueue.keySize.set({ topic }, this.gossipQueues[topic].keySize);
|
|
168
170
|
metrics.gossipValidationQueue.concurrency.set({ topic }, this.gossipTopicConcurrency[topic]);
|
|
169
171
|
}
|
|
170
|
-
metrics.awaitingBlockGossipMessages.countPerSlot.set(this.
|
|
171
|
-
metrics.awaitingPayloadGossipMessages.countPerSlot.set(this.
|
|
172
|
+
metrics.awaitingBlockGossipMessages.countPerSlot.set(this.awaitingBlockMessageCount);
|
|
173
|
+
metrics.awaitingPayloadGossipMessages.countPerSlot.set(this.awaitingPayloadMessageCount);
|
|
172
174
|
// specific metric for beacon_attestation topic
|
|
173
175
|
metrics.gossipValidationQueue.keyAge.reset();
|
|
174
176
|
for (const ageMs of this.gossipQueues.beacon_attestation.getDataAgeMs()) {
|
|
@@ -225,7 +227,7 @@ export class NetworkProcessor {
|
|
|
225
227
|
return;
|
|
226
228
|
}
|
|
227
229
|
this.unknownEnvelopesBySlot.getOrDefault(slot).add(root);
|
|
228
|
-
this.chain.emitter.emit(ChainEvent.unknownEnvelopeBlockRoot, { rootHex: root, peer, source });
|
|
230
|
+
this.chain.emitter.emit(ChainEvent.unknownEnvelopeBlockRoot, { rootHex: root, slot, peer, source });
|
|
229
231
|
}
|
|
230
232
|
onPendingGossipsubMessage = (message) => {
|
|
231
233
|
const topicType = message.topic.type;
|
|
@@ -379,7 +381,7 @@ export class NetworkProcessor {
|
|
|
379
381
|
this.pushPendingGossipsubMessageToQueue(message);
|
|
380
382
|
break;
|
|
381
383
|
case PreprocessAction.AwaitBlock: {
|
|
382
|
-
if (this.
|
|
384
|
+
if (this.awaitingBlockMessageCount > MAX_QUEUED_UNKNOWN_BLOCK_GOSSIP_OBJECTS) {
|
|
383
385
|
// No need to report the dropped job to gossip. It will be eventually pruned from the mcache
|
|
384
386
|
this.metrics?.awaitingBlockGossipMessages.reject.inc({
|
|
385
387
|
reason: ReprocessRejectReason.reached_limit,
|
|
@@ -390,10 +392,11 @@ export class NetworkProcessor {
|
|
|
390
392
|
this.metrics?.awaitingBlockGossipMessages.queue.inc({ topic: topicType });
|
|
391
393
|
const awaitingGossipsubMessages = this.awaitingMessagesByBlockRoot.getOrDefault(preprocessResult.root);
|
|
392
394
|
awaitingGossipsubMessages.add(message);
|
|
395
|
+
this.awaitingBlockMessageCount++;
|
|
393
396
|
break;
|
|
394
397
|
}
|
|
395
398
|
case PreprocessAction.AwaitEnvelope: {
|
|
396
|
-
if (this.
|
|
399
|
+
if (this.awaitingPayloadMessageCount > MAX_QUEUED_UNKNOWN_PAYLOAD_GOSSIP_OBJECTS) {
|
|
397
400
|
this.metrics?.awaitingPayloadGossipMessages.reject.inc({
|
|
398
401
|
reason: ReprocessRejectReason.reached_limit,
|
|
399
402
|
topic: topicType,
|
|
@@ -403,6 +406,7 @@ export class NetworkProcessor {
|
|
|
403
406
|
this.metrics?.awaitingPayloadGossipMessages.queue.inc({ topic: topicType });
|
|
404
407
|
const awaitingPayloadGossipsubMessages = this.awaitingMessagesByPayloadBlockRoot.getOrDefault(preprocessResult.root);
|
|
405
408
|
awaitingPayloadGossipsubMessages.add(message);
|
|
409
|
+
this.awaitingPayloadMessageCount++;
|
|
406
410
|
break;
|
|
407
411
|
}
|
|
408
412
|
}
|
|
@@ -422,6 +426,11 @@ export class NetworkProcessor {
|
|
|
422
426
|
if (!waitingGossipsubMessages || waitingGossipsubMessages.size === 0) {
|
|
423
427
|
return;
|
|
424
428
|
}
|
|
429
|
+
// Atomically remove from map and update counter before async iteration to
|
|
430
|
+
// prevent double-decrement race with onClockSlot during yield points below
|
|
431
|
+
if (this.awaitingMessagesByBlockRoot.delete(rootHex)) {
|
|
432
|
+
this.awaitingBlockMessageCount -= waitingGossipsubMessages.size;
|
|
433
|
+
}
|
|
425
434
|
const nowSec = Date.now() / 1000;
|
|
426
435
|
let count = 0;
|
|
427
436
|
// TODO: we can group attestations to process in batches but since we have the SeenAttestationDatas
|
|
@@ -438,13 +447,17 @@ export class NetworkProcessor {
|
|
|
438
447
|
await sleep(AWAITING_GOSSIP_OBJECTS_YIELD_EVERY_MS);
|
|
439
448
|
}
|
|
440
449
|
}
|
|
441
|
-
this.awaitingMessagesByBlockRoot.delete(rootHex);
|
|
442
450
|
};
|
|
443
451
|
onPayloadEnvelopeProcessed = async ({ blockRoot: rootHex }) => {
|
|
444
452
|
const waitingGossipsubMessages = this.awaitingMessagesByPayloadBlockRoot.get(rootHex);
|
|
445
453
|
if (!waitingGossipsubMessages || waitingGossipsubMessages.size === 0) {
|
|
446
454
|
return;
|
|
447
455
|
}
|
|
456
|
+
// Atomically remove from map and update counter before async iteration to
|
|
457
|
+
// prevent double-decrement race with onClockSlot during yield points below
|
|
458
|
+
if (this.awaitingMessagesByPayloadBlockRoot.delete(rootHex)) {
|
|
459
|
+
this.awaitingPayloadMessageCount -= waitingGossipsubMessages.size;
|
|
460
|
+
}
|
|
448
461
|
const nowSec = Date.now() / 1000;
|
|
449
462
|
let count = 0;
|
|
450
463
|
for (const message of waitingGossipsubMessages) {
|
|
@@ -458,7 +471,6 @@ export class NetworkProcessor {
|
|
|
458
471
|
await sleep(AWAITING_GOSSIP_OBJECTS_YIELD_EVERY_MS);
|
|
459
472
|
}
|
|
460
473
|
}
|
|
461
|
-
this.awaitingMessagesByPayloadBlockRoot.delete(rootHex);
|
|
462
474
|
};
|
|
463
475
|
onClockSlot = (clockSlot) => {
|
|
464
476
|
const nowSec = Date.now() / 1000;
|
|
@@ -478,7 +490,9 @@ export class NetworkProcessor {
|
|
|
478
490
|
this.metrics?.awaitingBlockGossipMessages.waitSecBeforeReject.set({ topic: topicType, reason: ReprocessRejectReason.expired }, nowSec - message.seenTimestampSec);
|
|
479
491
|
// No need to report the dropped job to gossip. It will be eventually pruned from the mcache
|
|
480
492
|
}
|
|
481
|
-
this.awaitingMessagesByBlockRoot.delete(rootHex)
|
|
493
|
+
if (this.awaitingMessagesByBlockRoot.delete(rootHex)) {
|
|
494
|
+
this.awaitingBlockMessageCount -= gossipMessages.size;
|
|
495
|
+
}
|
|
482
496
|
}
|
|
483
497
|
}
|
|
484
498
|
this.unknownBlocksBySlot.delete(slot);
|
|
@@ -498,7 +512,9 @@ export class NetworkProcessor {
|
|
|
498
512
|
this.metrics?.awaitingPayloadGossipMessages.waitSecBeforeReject.set({ topic: topicType, reason: ReprocessRejectReason.expired }, nowSec - message.seenTimestampSec);
|
|
499
513
|
// No need to report the dropped job to gossip. It will be eventually pruned from the mcache
|
|
500
514
|
}
|
|
501
|
-
this.awaitingMessagesByPayloadBlockRoot.delete(rootHex)
|
|
515
|
+
if (this.awaitingMessagesByPayloadBlockRoot.delete(rootHex)) {
|
|
516
|
+
this.awaitingPayloadMessageCount -= gossipMessages.size;
|
|
517
|
+
}
|
|
502
518
|
}
|
|
503
519
|
}
|
|
504
520
|
this.unknownEnvelopesBySlot.delete(slot);
|
|
@@ -617,19 +633,5 @@ export class NetworkProcessor {
|
|
|
617
633
|
}
|
|
618
634
|
return null;
|
|
619
635
|
}
|
|
620
|
-
get unknownBlockGossipsubMessagesCount() {
|
|
621
|
-
let count = 0;
|
|
622
|
-
for (const messages of this.awaitingMessagesByBlockRoot.values()) {
|
|
623
|
-
count += messages.size;
|
|
624
|
-
}
|
|
625
|
-
return count;
|
|
626
|
-
}
|
|
627
|
-
get unknownPayloadGossipsubMessagesCount() {
|
|
628
|
-
let count = 0;
|
|
629
|
-
for (const messages of this.awaitingMessagesByPayloadBlockRoot.values()) {
|
|
630
|
-
count += messages.size;
|
|
631
|
-
}
|
|
632
|
-
return count;
|
|
633
|
-
}
|
|
634
636
|
}
|
|
635
637
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/processor/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/network/processor/index.ts"],"names":[],"mappings":"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"}
|
package/lib/sync/types.d.ts
CHANGED
|
@@ -16,7 +16,14 @@ export declare enum PendingBlockType {
|
|
|
16
16
|
* arrive in time we turn to req/resp to pull the remainder so that it can be processed
|
|
17
17
|
*/
|
|
18
18
|
INCOMPLETE_BLOCK_INPUT = "IncompleteBlockInput",
|
|
19
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Payload analog of UNKNOWN_BLOCK_ROOT: we have a beacon block root but not its execution payload envelope.
|
|
21
|
+
*/
|
|
22
|
+
UNKNOWN_PAYLOAD_BLOCK_ROOT = "unknown_payload_block_root",
|
|
23
|
+
/**
|
|
24
|
+
* Payload analog of INCOMPLETE_BLOCK_INPUT: we have a partial payload input that did not complete in time.
|
|
25
|
+
*/
|
|
26
|
+
INCOMPLETE_PAYLOAD_ENVELOPE = "incomplete_payload_envelope"
|
|
20
27
|
}
|
|
21
28
|
export declare enum PendingBlockInputStatus {
|
|
22
29
|
pending = "pending",
|
|
@@ -56,6 +63,7 @@ export type PendingPayloadInput = {
|
|
|
56
63
|
export type PendingPayloadRootHex = {
|
|
57
64
|
status: PendingPayloadInputStatus.pending | PendingPayloadInputStatus.fetching;
|
|
58
65
|
rootHex: RootHex;
|
|
66
|
+
slot?: Slot;
|
|
59
67
|
timeAddedSec: number;
|
|
60
68
|
timeSyncedSec?: number;
|
|
61
69
|
peerIdStrings: Set<string>;
|
package/lib/sync/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,8BAA8B,EAAC,MAAM,uBAAuB,CAAC;AAErE,OAAO,EAAC,WAAW,EAAC,MAAM,qCAAqC,CAAC;AAChE,OAAO,EAAC,oBAAoB,EAAC,MAAM,8DAA8D,CAAC;AAElG,oBAAY,gBAAgB;IAC1B;;OAEG;IACH,kBAAkB,qBAAqB;IACvC;;OAEG;IACH,cAAc,mBAAmB;IACjC;;;OAGG;IACH,sBAAsB,yBAAyB;IAE/C,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"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"}
|
package/lib/sync/types.js
CHANGED
|
@@ -15,7 +15,14 @@ var PendingBlockType;
|
|
|
15
15
|
* arrive in time we turn to req/resp to pull the remainder so that it can be processed
|
|
16
16
|
*/
|
|
17
17
|
PendingBlockType["INCOMPLETE_BLOCK_INPUT"] = "IncompleteBlockInput";
|
|
18
|
-
|
|
18
|
+
/**
|
|
19
|
+
* Payload analog of UNKNOWN_BLOCK_ROOT: we have a beacon block root but not its execution payload envelope.
|
|
20
|
+
*/
|
|
21
|
+
PendingBlockType["UNKNOWN_PAYLOAD_BLOCK_ROOT"] = "unknown_payload_block_root";
|
|
22
|
+
/**
|
|
23
|
+
* Payload analog of INCOMPLETE_BLOCK_INPUT: we have a partial payload input that did not complete in time.
|
|
24
|
+
*/
|
|
25
|
+
PendingBlockType["INCOMPLETE_PAYLOAD_ENVELOPE"] = "incomplete_payload_envelope";
|
|
19
26
|
})(PendingBlockType || (PendingBlockType = {}));
|
|
20
27
|
export { PendingBlockInputStatus };
|
|
21
28
|
var PendingBlockInputStatus;
|
|
@@ -65,6 +72,6 @@ export function getPayloadSyncCacheItemSlot(payload) {
|
|
|
65
72
|
if (isPendingPayloadEnvelope(payload)) {
|
|
66
73
|
return payload.envelope.message.payload.slotNumber;
|
|
67
74
|
}
|
|
68
|
-
return "unknown";
|
|
75
|
+
return payload.slot ?? "unknown";
|
|
69
76
|
}
|
|
70
77
|
//# sourceMappingURL=types.js.map
|
package/lib/sync/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;SAI9B,gBAAgB;AAA5B,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;SAI9B,gBAAgB;AAA5B,IAAY,gBAuBX;AAvBD,WAAY,gBAAgB;IAC1B;;OAEG;IACH,2DAAuC,CAAA;IACvC;;OAEG;IACH,qDAAiC,CAAA;IACjC;;;OAGG;IACH,mEAA+C,CAAA;IAE/C;;OAEG;IACH,6EAAyD,CAAA;IACzD;;OAEG;IACH,+EAA2D,CAAA;AAAC,CAC9D,EAvBY,gBAAgB,KAAhB,gBAAgB,QAuB3B;SAEW,uBAAuB;AAAnC,IAAY,uBAKX;AALD,WAAY,uBAAuB;IACjC,8CAAmB,CAAA;IACnB,gDAAqB,CAAA;IACrB,oDAAyB,CAAA;IACzB,oDAAyB,CAAA;AAAC,CAC5B,EALY,uBAAuB,KAAvB,uBAAuB,QAKlC;SAEW,yBAAyB;AAArC,IAAY,yBAMX;AAND,WAAY,yBAAyB;IACnC,gDAAmB,CAAA;IACnB,kDAAqB,CAAA;IACrB,kEAAqC,CAAA;IACrC,sDAAyB,CAAA;IACzB,sDAAyB,CAAA;AAAC,CAC5B,EANY,yBAAyB,KAAzB,yBAAyB,QAMpC;AAmDD,MAAM,UAAU,mBAAmB,CAAC,OAAgC,EAAgC;IAClG,OAAO,YAAY,IAAI,OAAO,CAAC;AAAA,CAChC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAA6B,EAAkC;IACnG,OAAO,cAAc,IAAI,OAAO,CAAC;AAAA,CAClC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAA6B,EAAqC;IACzG,OAAO,UAAU,IAAI,OAAO,CAAC;AAAA,CAC9B;AAED,MAAM,UAAU,iCAAiC,CAAC,KAA8B,EAAW;IACzF,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;AAAA,CACnF;AAED,MAAM,UAAU,8BAA8B,CAAC,KAA8B,EAAiB;IAC5F,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAAA,CACvE;AAED,MAAM,UAAU,8BAA8B,CAAC,OAA6B,EAAW;IACrF,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC;IAC3C,CAAC;IAED,IAAI,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,OAAO,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC;AAAA,CACxB;AAED,MAAM,UAAU,2BAA2B,CAAC,OAA6B,EAAiB;IACxF,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC;IACnC,CAAC;IAED,IAAI,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,OAAO,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;IACrD,CAAC;IAED,OAAO,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;AAAA,CAClC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unknownBlock.d.ts","sourceRoot":"","sources":["../../src/sync/unknownBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAKjD,OAAO,EAAC,MAAM,EAA+D,MAAM,iBAAiB,CAAC;AAMrG,OAAO,EAA6B,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAG3E,OAAO,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAC,QAAQ,EAAuD,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAK5C,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AAkDzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,cAAc;IAcvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;IAlBxB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+C;IAE7E,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA4C;IAC5E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IACrD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAClC,OAAO,CAAC,yBAAyB,CAAS;IAC1C,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,uBAAuB,CAA6B;IAE5D,YACmB,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,IAAI,CAAC,yBAAa,EAgBpC;IAED,kBAAkB,IAAI,IAAI,CAoBzB;IAED,sBAAsB,IAAI,IAAI,CAa7B;IAED,KAAK,IAAI,IAAI,CAEZ;IAED,qBAAqB,IAAI,OAAO,CAE/B;IAED;;OAEG;IACH,OAAO,CAAC,kBAAkB,CASxB;IAEF;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAS5B;IAEF,OAAO,CAAC,0BAA0B,CAShC;IAEF,OAAO,CAAC,2BAA2B,CASjC;IAEF;;OAEG;IACH,OAAO,CAAC,eAAe,CA+BrB;IAEF,OAAO,CAAC,eAAe,CAIrB;IAEF,OAAO,CAAC,iBAAiB,CAKvB;IAEF,OAAO,CAAC,YAAY,CA8BlB;IAEF,OAAO,CAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"unknownBlock.d.ts","sourceRoot":"","sources":["../../src/sync/unknownBlock.ts"],"names":[],"mappings":"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"}
|
package/lib/sync/unknownBlock.js
CHANGED
|
@@ -172,10 +172,10 @@ export class BlockInputSync {
|
|
|
172
172
|
};
|
|
173
173
|
onUnknownEnvelopeBlockRoot = (data) => {
|
|
174
174
|
try {
|
|
175
|
-
this.addByPayloadRootHex(data.rootHex, data.peer);
|
|
175
|
+
this.addByPayloadRootHex(data.rootHex, data.peer, data.slot);
|
|
176
176
|
this.triggerUnknownBlockSearch();
|
|
177
|
-
this.metrics?.blockInputSync.requests.inc({ type: PendingBlockType.
|
|
178
|
-
this.metrics?.blockInputSync.
|
|
177
|
+
this.metrics?.blockInputSync.requests.inc({ type: PendingBlockType.UNKNOWN_PAYLOAD_BLOCK_ROOT });
|
|
178
|
+
this.metrics?.blockInputSync.payloadSource.inc({ source: data.source });
|
|
179
179
|
}
|
|
180
180
|
catch (e) {
|
|
181
181
|
this.logger.debug("Error handling unknownEnvelopeBlockRoot event", {}, e);
|
|
@@ -185,8 +185,8 @@ export class BlockInputSync {
|
|
|
185
185
|
try {
|
|
186
186
|
this.addByPayloadInput(data.payloadInput, data.peer);
|
|
187
187
|
this.triggerUnknownBlockSearch();
|
|
188
|
-
this.metrics?.blockInputSync.requests.inc({ type: PendingBlockType.
|
|
189
|
-
this.metrics?.blockInputSync.
|
|
188
|
+
this.metrics?.blockInputSync.requests.inc({ type: PendingBlockType.INCOMPLETE_PAYLOAD_ENVELOPE });
|
|
189
|
+
this.metrics?.blockInputSync.payloadSource.inc({ source: data.source });
|
|
190
190
|
}
|
|
191
191
|
catch (e) {
|
|
192
192
|
this.logger.debug("Error handling incompletePayloadEnvelope event", {}, e);
|
|
@@ -278,7 +278,10 @@ export class BlockInputSync {
|
|
|
278
278
|
timeAddedSec: Date.now() / 1000,
|
|
279
279
|
};
|
|
280
280
|
this.pendingBlocks.set(blockInput.blockRootHex, pendingBlock);
|
|
281
|
-
this.logger.verbose("Added blockInput to BlockInputSync.pendingBlocks",
|
|
281
|
+
this.logger.verbose("Added blockInput to BlockInputSync.pendingBlocks", {
|
|
282
|
+
...pendingBlock.blockInput.getLogMeta(),
|
|
283
|
+
delaySec: this.chain.clock.secFromSlot(blockInput.slot),
|
|
284
|
+
});
|
|
282
285
|
}
|
|
283
286
|
if (peerIdStr) {
|
|
284
287
|
pendingBlock.peerIdStrings.add(peerIdStr);
|
|
@@ -290,19 +293,22 @@ export class BlockInputSync {
|
|
|
290
293
|
this.logger.verbose(`Pruned ${prunedItemCount} items from BlockInputSync.pendingBlocks`);
|
|
291
294
|
}
|
|
292
295
|
};
|
|
293
|
-
addByPayloadRootHex = (rootHex, peerIdStr) => {
|
|
296
|
+
addByPayloadRootHex = (rootHex, peerIdStr, slot) => {
|
|
294
297
|
let pendingPayload = this.pendingPayloads.get(rootHex);
|
|
295
298
|
let added = false;
|
|
296
299
|
if (!pendingPayload) {
|
|
297
300
|
pendingPayload = {
|
|
298
301
|
status: PendingPayloadInputStatus.pending,
|
|
299
302
|
rootHex,
|
|
303
|
+
slot,
|
|
300
304
|
peerIdStrings: new Set(),
|
|
301
305
|
timeAddedSec: Date.now() / 1000,
|
|
302
306
|
};
|
|
303
307
|
this.pendingPayloads.set(rootHex, pendingPayload);
|
|
304
308
|
added = true;
|
|
305
309
|
this.logger.verbose("Added new payload rootHex to BlockInputSync.pendingPayloads", {
|
|
310
|
+
slot: slot ?? "unknown",
|
|
311
|
+
delaySec: slot != null ? this.chain.clock.secFromSlot(slot) : "unknown",
|
|
306
312
|
root: rootHex,
|
|
307
313
|
peerIdStr: peerIdStr ?? "unknown peer",
|
|
308
314
|
});
|
|
@@ -322,6 +328,11 @@ export class BlockInputSync {
|
|
|
322
328
|
pendingPayload.peerIdStrings.add(peerIdStr);
|
|
323
329
|
}
|
|
324
330
|
this.pendingPayloads.set(payloadInput.blockRootHex, pendingPayload);
|
|
331
|
+
this.logger.verbose("Added payloadInput to BlockInputSync.pendingPayloads", {
|
|
332
|
+
slot: payloadInput.slot,
|
|
333
|
+
root: payloadInput.blockRootHex,
|
|
334
|
+
delaySec: this.chain.clock.secFromSlot(payloadInput.slot),
|
|
335
|
+
});
|
|
325
336
|
const prunedItemCount = pruneSetToMax(this.pendingPayloads, this.maxPendingBlocks);
|
|
326
337
|
if (prunedItemCount > 0) {
|
|
327
338
|
this.logger.verbose(`Pruned ${prunedItemCount} items from BlockInputSync.pendingPayloads`);
|
|
@@ -537,10 +548,12 @@ export class BlockInputSync {
|
|
|
537
548
|
return;
|
|
538
549
|
}
|
|
539
550
|
const rootHex = getBlockInputSyncCacheItemRootHex(block);
|
|
551
|
+
const blockSlot = getBlockInputSyncCacheItemSlot(block);
|
|
540
552
|
const logCtx = {
|
|
541
|
-
slot:
|
|
553
|
+
slot: blockSlot,
|
|
542
554
|
root: rootHex,
|
|
543
555
|
pendingBlocks: this.pendingBlocks.size,
|
|
556
|
+
...(typeof blockSlot === "number" && { delaySec: this.chain.clock.secFromSlot(blockSlot) }),
|
|
544
557
|
};
|
|
545
558
|
this.logger.verbose("BlockInputSync.downloadBlock()", logCtx);
|
|
546
559
|
block.status = PendingBlockInputStatus.fetching;
|
|
@@ -557,6 +570,7 @@ export class BlockInputSync {
|
|
|
557
570
|
const logCtx2 = {
|
|
558
571
|
...logCtx,
|
|
559
572
|
slot: blockSlot,
|
|
573
|
+
delaySec,
|
|
560
574
|
parentInForkChoice,
|
|
561
575
|
};
|
|
562
576
|
this.logger.verbose("Downloaded unknown block", logCtx2);
|
|
@@ -623,6 +637,12 @@ export class BlockInputSync {
|
|
|
623
637
|
// this prevents unbundling attack
|
|
624
638
|
// see https://lighthouse-blog.sigmaprime.io/mev-unbundling-rpc.html
|
|
625
639
|
const { slot: blockSlot, proposerIndex } = pendingBlock.blockInput.getBlock().message;
|
|
640
|
+
const logCtx = {
|
|
641
|
+
slot: blockSlot,
|
|
642
|
+
root: pendingBlock.blockInput.blockRootHex,
|
|
643
|
+
delaySec: this.chain.clock.secFromSlot(blockSlot),
|
|
644
|
+
};
|
|
645
|
+
this.logger.verbose("Processing downloaded block", logCtx);
|
|
626
646
|
const fork = this.config.getForkName(blockSlot);
|
|
627
647
|
const proposerBoostWindowMs = this.config.getAttestationDueMs(fork);
|
|
628
648
|
if (this.chain.clock.msFromSlot(blockSlot) < proposerBoostWindowMs &&
|
|
@@ -654,6 +674,7 @@ export class BlockInputSync {
|
|
|
654
674
|
else
|
|
655
675
|
this.metrics?.blockInputSync.processedBlocksSuccess.inc();
|
|
656
676
|
if (!res.err) {
|
|
677
|
+
this.logger.verbose("Processed block from unknown sync", logCtx);
|
|
657
678
|
// no need to update status to "processed", delete anyway
|
|
658
679
|
this.pendingBlocks.delete(pendingBlock.blockInput.blockRootHex);
|
|
659
680
|
// Re-enter the scheduler so descendants blocked on either parent blocks or parent payloads
|
|
@@ -711,24 +732,25 @@ export class BlockInputSync {
|
|
|
711
732
|
return;
|
|
712
733
|
}
|
|
713
734
|
const payloadInput = this.chain.seenPayloadEnvelopeInputCache.get(rootHex);
|
|
714
|
-
if (!
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
const pendingBlock = this.pendingBlocks.get(rootHex);
|
|
721
|
-
if (pendingBlock && this.network.getConnectedPeers().length > 0) {
|
|
722
|
-
await this.downloadBlock(pendingBlock);
|
|
723
|
-
}
|
|
735
|
+
if (!this.chain.forkChoice.hasBlockHex(rootHex)) {
|
|
736
|
+
// Block not in fork choice yet. payloadInput may be seeded from the block body during download, so a
|
|
737
|
+
// non-null payloadInput does not imply the block is imported; defer regardless and pull the block first.
|
|
738
|
+
// onBlockImported re-triggers the search to resume this envelope.
|
|
739
|
+
if (!this.pendingBlocks.has(rootHex)) {
|
|
740
|
+
this.addByRootHex(rootHex);
|
|
724
741
|
}
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
});
|
|
742
|
+
const pendingBlock = this.pendingBlocks.get(rootHex);
|
|
743
|
+
if (pendingBlock && this.network.getConnectedPeers().length > 0) {
|
|
744
|
+
await this.downloadBlock(pendingBlock);
|
|
729
745
|
}
|
|
730
746
|
return;
|
|
731
747
|
}
|
|
748
|
+
if (!payloadInput) {
|
|
749
|
+
this.logger.debug("Missing PayloadEnvelopeInput for known block while reconciling payload envelope", {
|
|
750
|
+
root: rootHex,
|
|
751
|
+
});
|
|
752
|
+
return;
|
|
753
|
+
}
|
|
732
754
|
if (!payloadInput.hasPayloadEnvelope()) {
|
|
733
755
|
const validationResult = await wrapError(validateGossipExecutionPayloadEnvelope(this.chain, pendingPayload.envelope));
|
|
734
756
|
if (validationResult.err) {
|
|
@@ -767,10 +789,12 @@ export class BlockInputSync {
|
|
|
767
789
|
if (payload.status !== PendingPayloadInputStatus.pending) {
|
|
768
790
|
return;
|
|
769
791
|
}
|
|
792
|
+
const payloadSlot = getPayloadSyncCacheItemSlot(payload);
|
|
770
793
|
const logCtx = {
|
|
771
|
-
slot:
|
|
794
|
+
slot: payloadSlot,
|
|
772
795
|
root: rootHex,
|
|
773
796
|
pendingPayloads: this.pendingPayloads.size,
|
|
797
|
+
...(typeof payloadSlot === "number" && { delaySec: this.chain.clock.secFromSlot(payloadSlot) }),
|
|
774
798
|
};
|
|
775
799
|
this.logger.verbose("BlockInputSync.downloadPayload()", logCtx);
|
|
776
800
|
payload.status = PendingPayloadInputStatus.fetching;
|
|
@@ -793,7 +817,11 @@ export class BlockInputSync {
|
|
|
793
817
|
}
|
|
794
818
|
async processPayload(pendingPayload) {
|
|
795
819
|
const rootHex = pendingPayload.payloadInput.blockRootHex;
|
|
796
|
-
const logCtx = {
|
|
820
|
+
const logCtx = {
|
|
821
|
+
slot: pendingPayload.payloadInput.slot,
|
|
822
|
+
root: rootHex,
|
|
823
|
+
delaySec: this.chain.clock.secFromSlot(pendingPayload.payloadInput.slot),
|
|
824
|
+
};
|
|
797
825
|
if (pendingPayload.status !== PendingPayloadInputStatus.downloaded) {
|
|
798
826
|
this.logger.debug("Skipping payload processing before payload input is downloaded", {
|
|
799
827
|
...logCtx,
|
|
@@ -816,6 +844,7 @@ export class BlockInputSync {
|
|
|
816
844
|
return;
|
|
817
845
|
}
|
|
818
846
|
pendingPayload.status = PendingPayloadInputStatus.processing;
|
|
847
|
+
this.logger.debug("Processing downloaded payload", logCtx);
|
|
819
848
|
const res = await wrapError(this.chain.processExecutionPayload(pendingPayload.payloadInput));
|
|
820
849
|
if (!res.err) {
|
|
821
850
|
this.logger.debug("Processed payload from unknown sync", logCtx);
|
|
@@ -890,11 +919,11 @@ export class BlockInputSync {
|
|
|
890
919
|
slot = envelope.message.payload.slotNumber;
|
|
891
920
|
}
|
|
892
921
|
payloadInput ??= this.chain.seenPayloadEnvelopeInputCache.get(rootHex);
|
|
893
|
-
if (!
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
//
|
|
922
|
+
if (!this.chain.forkChoice.hasBlockHex(rootHex)) {
|
|
923
|
+
// Block not in fork choice yet. Validating now would throw BLOCK_ROOT_UNKNOWN, so keep the downloaded
|
|
924
|
+
// envelope and wait for the block body; reconcilePayloadEnvelope validates once the block lands.
|
|
925
|
+
// payloadInput may be seeded from the block body during download, so a non-null payloadInput does not
|
|
926
|
+
// imply the block is imported.
|
|
898
927
|
return {
|
|
899
928
|
status: PendingPayloadInputStatus.waitingForBlock,
|
|
900
929
|
envelope,
|
|
@@ -902,6 +931,10 @@ export class BlockInputSync {
|
|
|
902
931
|
peerIdStrings: cacheItem.peerIdStrings,
|
|
903
932
|
};
|
|
904
933
|
}
|
|
934
|
+
if (!payloadInput) {
|
|
935
|
+
// Block is in fork choice but no PayloadEnvelopeInput exists, should have been created during block import.
|
|
936
|
+
throw new Error(`Missing PayloadEnvelopeInput for known block ${rootHex}`);
|
|
937
|
+
}
|
|
905
938
|
if (!payloadInput.hasPayloadEnvelope()) {
|
|
906
939
|
await validateGossipExecutionPayloadEnvelope(this.chain, envelope);
|
|
907
940
|
}
|
|
@@ -930,6 +963,7 @@ export class BlockInputSync {
|
|
|
930
963
|
rootHex,
|
|
931
964
|
peerId,
|
|
932
965
|
peerClient,
|
|
966
|
+
...(typeof slot === "number" && { delaySec: this.chain.clock.secFromSlot(slot) }),
|
|
933
967
|
hasPayload: pendingPayload.payloadInput.hasPayloadEnvelope(),
|
|
934
968
|
hasAllData: pendingPayload.payloadInput.hasAllData(),
|
|
935
969
|
});
|
|
@@ -1057,7 +1091,7 @@ export class BlockInputSync {
|
|
|
1057
1091
|
// we were not able to observe the time into slot when starting the fetch, do it now
|
|
1058
1092
|
this.metrics?.blockInputSync.fetchBegin.observe(this.chain.clock.secFromSlot(slot, fetchStartSec));
|
|
1059
1093
|
}
|
|
1060
|
-
const logCtx = { slot, rootHex, peerId, peerClient };
|
|
1094
|
+
const logCtx = { slot, rootHex, peerId, peerClient, delaySec: this.chain.clock.secFromSlot(slot) };
|
|
1061
1095
|
this.logger.verbose("BlockInputSync.fetchBlockInput: successful download", logCtx);
|
|
1062
1096
|
this.metrics?.blockInputSync.downloadByRoot.success.inc();
|
|
1063
1097
|
const warnings = downloadResult.warnings;
|