@lodestar/beacon-node 1.34.0-dev.2ac5250665 → 1.34.0-dev.2f71baeaa0
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.js +21 -9
- package/lib/api/impl/beacon/blocks/index.js.map +1 -1
- package/lib/api/impl/beacon/pool/index.js +2 -2
- package/lib/api/impl/beacon/state/index.js +10 -2
- package/lib/api/impl/beacon/state/index.js.map +1 -1
- package/lib/api/impl/debug/index.js +2 -2
- package/lib/api/impl/debug/index.js.map +1 -1
- package/lib/api/impl/events/index.js +1 -1
- package/lib/api/impl/events/index.js.map +1 -1
- package/lib/api/impl/validator/index.js +29 -23
- package/lib/api/impl/validator/index.js.map +1 -1
- package/lib/chain/archiveStore/utils/archiveBlocks.js +9 -6
- package/lib/chain/archiveStore/utils/archiveBlocks.js.map +1 -1
- package/lib/chain/blocks/utils/blowfishBanner.js +1 -0
- package/lib/chain/blocks/utils/blowfishBanner.js.map +1 -1
- package/lib/chain/blocks/utils/giraffeBanner.js +1 -0
- package/lib/chain/blocks/utils/giraffeBanner.js.map +1 -1
- package/lib/chain/blocks/utils/zebraBanner.js +1 -0
- package/lib/chain/blocks/utils/zebraBanner.js.map +1 -1
- package/lib/chain/blocks/writeBlockInputToDb.js +6 -3
- package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
- package/lib/chain/bls/multithread/index.js +2 -2
- package/lib/chain/bls/multithread/index.js.map +1 -1
- package/lib/chain/chain.js +1 -8
- package/lib/chain/chain.js.map +1 -1
- package/lib/chain/forkChoice/index.d.ts +2 -1
- package/lib/chain/forkChoice/index.js +2 -2
- package/lib/chain/forkChoice/index.js.map +1 -1
- package/lib/chain/opPools/attestationPool.d.ts +1 -1
- package/lib/chain/opPools/attestationPool.js +7 -7
- package/lib/chain/prepareNextSlot.js +2 -1
- package/lib/chain/prepareNextSlot.js.map +1 -1
- package/lib/chain/rewards/syncCommitteeRewards.js +4 -4
- package/lib/chain/rewards/syncCommitteeRewards.js.map +1 -1
- package/lib/chain/validation/aggregateAndProof.d.ts +1 -1
- package/lib/chain/validation/aggregateAndProof.js +8 -8
- package/lib/chain/validation/aggregateAndProof.js.map +1 -1
- package/lib/chain/validation/attestation.d.ts +3 -3
- package/lib/chain/validation/attestation.js +10 -10
- package/lib/chain/validation/attestation.js.map +1 -1
- package/lib/chain/validation/syncCommitteeContributionAndProof.js +2 -2
- package/lib/chain/validation/syncCommitteeContributionAndProof.js.map +1 -1
- package/lib/db/repositories/blockArchive.js +3 -3
- package/lib/db/repositories/blockArchive.js.map +1 -1
- package/lib/db/repositories/blockArchiveIndex.d.ts +4 -0
- package/lib/db/repositories/blockArchiveIndex.js +13 -5
- package/lib/db/repositories/blockArchiveIndex.js.map +1 -1
- package/lib/db/repositories/dataColumnSidecarArchive.js +1 -1
- package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
- package/lib/db/repositories/stateArchive.js +4 -3
- package/lib/db/repositories/stateArchive.js.map +1 -1
- package/lib/db/repositories/stateArchiveIndex.d.ts +1 -0
- package/lib/db/repositories/stateArchiveIndex.js +6 -2
- package/lib/db/repositories/stateArchiveIndex.js.map +1 -1
- package/lib/db/single/preGenesisState.d.ts +1 -0
- package/lib/db/single/preGenesisState.js +5 -4
- package/lib/db/single/preGenesisState.js.map +1 -1
- package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts +1 -0
- package/lib/db/single/preGenesisStateLastProcessedBlock.js +5 -4
- package/lib/db/single/preGenesisStateLastProcessedBlock.js.map +1 -1
- package/lib/execution/engine/utils.js +1 -1
- package/lib/execution/engine/utils.js.map +1 -1
- package/lib/metrics/metrics/beacon.d.ts +0 -23
- package/lib/metrics/metrics/beacon.js +0 -61
- package/lib/metrics/metrics/beacon.js.map +1 -1
- package/lib/metrics/metrics/lodestar.d.ts +2 -0
- package/lib/metrics/metrics/lodestar.js +4 -0
- package/lib/metrics/metrics/lodestar.js.map +1 -1
- package/lib/metrics/metrics.d.ts +2 -1
- package/lib/metrics/metrics.js +3 -0
- package/lib/metrics/metrics.js.map +1 -1
- package/lib/network/core/networkCore.js +0 -1
- package/lib/network/core/networkCore.js.map +1 -1
- package/lib/network/core/networkCoreWorkerHandler.js +1 -1
- package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
- package/lib/network/gossip/scoringParameters.js.map +1 -1
- package/lib/network/gossip/topic.d.ts +79 -79
- package/lib/network/peers/peerManager.js +5 -2
- package/lib/network/peers/peerManager.js.map +1 -1
- package/lib/network/processor/gossipHandlers.js +13 -13
- package/lib/network/processor/gossipHandlers.js.map +1 -1
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js +8 -6
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/beaconBlocksByRange.js +1 -2
- package/lib/network/reqresp/handlers/beaconBlocksByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js +57 -17
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js +49 -21
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
- package/lib/network/reqresp/utils/dataColumnResponseValidation.d.ts +16 -0
- package/lib/network/reqresp/utils/dataColumnResponseValidation.js +59 -0
- package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -0
- package/lib/sync/backfill/backfill.js +1 -1
- package/lib/sync/backfill/backfill.js.map +1 -1
- package/lib/util/queue/fnQueue.js +1 -1
- package/lib/util/queue/fnQueue.js.map +1 -1
- package/lib/util/queue/itemQueue.js +1 -1
- package/lib/util/queue/itemQueue.js.map +1 -1
- package/lib/util/sszBytes.d.ts +2 -0
- package/lib/util/sszBytes.js +23 -0
- package/lib/util/sszBytes.js.map +1 -1
- package/package.json +15 -16
|
@@ -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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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ForkName, ForkSeq } from "@lodestar/params";
|
|
2
2
|
import { computeEpochAtSlot } from "@lodestar/state-transition";
|
|
3
3
|
import { ssz, } from "@lodestar/types";
|
|
4
|
+
import { prettyPrintIndices } from "@lodestar/utils";
|
|
4
5
|
import { BlobsSource, BlockInputType, BlockSource, DataColumnsSource, getBlockInput, getBlockInputDataColumns, } from "../../chain/blocks/types.js";
|
|
5
6
|
import { getEmptyBlockInputCacheEntry } from "../../chain/seenCache/seenGossipBlockInput.js";
|
|
6
7
|
import { RangeSyncType } from "../../sync/utils/remoteSyncType.js";
|
|
@@ -90,7 +91,7 @@ export async function beaconBlocksMaybeBlobsByRange(config, network, peer, reque
|
|
|
90
91
|
[`allDataColumnSidecars(${allDataColumnSidecars.length})`]: allDataColumnSidecars
|
|
91
92
|
.map((dCol) => `${dCol.signedBlockHeader.message.slot}:${dCol.index}`)
|
|
92
93
|
.join(" "),
|
|
93
|
-
peerColumns: peerColumns
|
|
94
|
+
peerColumns: prettyPrintIndices(peerColumns),
|
|
94
95
|
peerId,
|
|
95
96
|
peerClient,
|
|
96
97
|
prevPartialDownload: !!partialDownload,
|
|
@@ -218,10 +219,10 @@ export function matchBlockWithDataColumns(network, peerId, config, sampledColumn
|
|
|
218
219
|
blobKzgCommitmentsLen,
|
|
219
220
|
dataColumnSidecars: dataColumnSidecars.length,
|
|
220
221
|
shouldHaveAllData,
|
|
221
|
-
neededColumns: neededColumns
|
|
222
|
-
requestedColumns: requestedColumns
|
|
222
|
+
neededColumns: prettyPrintIndices(neededColumns),
|
|
223
|
+
requestedColumns: prettyPrintIndices(requestedColumns),
|
|
223
224
|
slot: block.data.message.slot,
|
|
224
|
-
dataColumnsSlots: dataColumnSidecars.map((dcm) => dcm.signedBlockHeader.message.slot)
|
|
225
|
+
dataColumnsSlots: prettyPrintIndices(dataColumnSidecars.map((dcm) => dcm.signedBlockHeader.message.slot)),
|
|
225
226
|
peerClient,
|
|
226
227
|
});
|
|
227
228
|
if (blobKzgCommitmentsLen === 0) {
|
|
@@ -245,7 +246,7 @@ export function matchBlockWithDataColumns(network, peerId, config, sampledColumn
|
|
|
245
246
|
const dataColumnIndexes = dataColumnSidecars.map((dataColumnSidecar) => dataColumnSidecar.index);
|
|
246
247
|
const requestedColumnsPresent = requestedColumns.reduce((acc, columnIndex) => acc && dataColumnIndexes.includes(columnIndex), true);
|
|
247
248
|
logger?.debug("matchBlockWithDataColumns2", {
|
|
248
|
-
dataColumnIndexes: dataColumnIndexes
|
|
249
|
+
dataColumnIndexes: prettyPrintIndices(dataColumnIndexes),
|
|
249
250
|
requestedColumnsPresent,
|
|
250
251
|
slot: block.data.message.slot,
|
|
251
252
|
peerClient,
|
|
@@ -319,7 +320,8 @@ export function matchBlockWithDataColumns(network, peerId, config, sampledColumn
|
|
|
319
320
|
}
|
|
320
321
|
logger?.debug("matched BlockWithDataColumns", {
|
|
321
322
|
peerClient,
|
|
322
|
-
|
|
323
|
+
slots: prettyPrintIndices(blockInputs.map((b) => Number(b.block.message.slot))),
|
|
324
|
+
types: blockInputs.map((b) => b.type).join(" "),
|
|
323
325
|
});
|
|
324
326
|
return blockInputs;
|
|
325
327
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"beaconBlocksMaybeBlobsByRange.js","sourceRoot":"","sources":["../../../src/network/reqresp/beaconBlocksMaybeBlobsByRange.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"beaconBlocksMaybeBlobsByRange.js","sourceRoot":"","sources":["../../../src/network/reqresp/beaconBlocksMaybeBlobsByRange.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,8 +36,7 @@ export async function* onBeaconBlocksByRange(request, chain, db) {
|
|
|
36
36
|
// Spec: https://github.com/ethereum/consensus-specs/blob/a1e46d1ae47dd9d097725801575b46907c12a1f8/specs/eip4844/p2p-interface.md#blobssidecarsbyrange-v1
|
|
37
37
|
const blockBytes = await unfinalized.getBinary(fromHex(block.blockRoot));
|
|
38
38
|
if (!blockBytes) {
|
|
39
|
-
|
|
40
|
-
throw new ResponseError(RespStatus.SERVER_ERROR, `No item for root ${block.blockRoot} slot ${block.slot}`);
|
|
39
|
+
throw new ResponseError(RespStatus.SERVER_ERROR, `No block for root ${block.blockRoot} slot ${block.slot}, startSlot=${startSlot} endSlot=${endSlot} finalizedSlot=${finalizedSlot}`);
|
|
41
40
|
}
|
|
42
41
|
yield {
|
|
43
42
|
data: blockBytes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"beaconBlocksByRange.js","sourceRoot":"","sources":["../../../../src/network/reqresp/handlers/beaconBlocksByRange.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAE,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAC,UAAU,EAAE,aAAa,EAAmB,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAIxC,kBAAkB;AAElB,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,qBAAqB,CAC1C,OAA0C,EAC1C,KAAmB,EACnB,EAAa;IAEb,MAAM,EAAC,SAAS,EAAE,KAAK,EAAC,GAAG,kCAAkC,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrF,MAAM,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC;IAElC,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC;IAClC,MAAM,WAAW,GAAG,EAAE,CAAC,KAAK,CAAC;IAC7B,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC;IAEhE,4BAA4B;IAC5B,IAAI,SAAS,IAAI,aAAa,EAAE,CAAC;QAC/B,8BAA8B;QAC9B,IAAI,KAAK,EAAE,MAAM,EAAC,GAAG,EAAE,KAAK,EAAC,IAAI,SAAS,CAAC,mBAAmB,CAAC,EAAC,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAC,CAAC,EAAE,CAAC;YAC9F,MAAM;gBACJ,IAAI,EAAE,KAAK;gBACX,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;aAC5F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,IAAI,OAAO,GAAG,aAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QAChD,+FAA+F;QAC/F,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAClE,gFAAgF;QAEhF,kDAAkD;QAClD,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAE3B,kDAAkD;YAClD,IAAI,KAAK,CAAC,IAAI,IAAI,SAAS,IAAI,KAAK,CAAC,IAAI,GAAG,OAAO,EAAE,CAAC;gBACpD,2GAA2G;gBAC3G,uGAAuG;gBACvG,8CAA8C;gBAC9C,yJAAyJ;gBAEzJ,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBACzE,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,
|
|
1
|
+
{"version":3,"file":"beaconBlocksByRange.js","sourceRoot":"","sources":["../../../../src/network/reqresp/handlers/beaconBlocksByRange.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,25 +2,47 @@ import { GENESIS_SLOT } from "@lodestar/params";
|
|
|
2
2
|
import { RespStatus, ResponseError } from "@lodestar/reqresp";
|
|
3
3
|
import { computeEpochAtSlot } from "@lodestar/state-transition";
|
|
4
4
|
import { fromHex } from "@lodestar/utils";
|
|
5
|
+
import { handleColumnSidecarUnavailability, validateRequestedDataColumns, } from "../utils/dataColumnResponseValidation.js";
|
|
5
6
|
export async function* onDataColumnSidecarsByRange(request, chain, db) {
|
|
6
7
|
// Non-finalized range of columns
|
|
7
|
-
const { startSlot, count, columns } = validateDataColumnSidecarsByRangeRequest(chain.config, request);
|
|
8
|
+
const { startSlot, count, columns: requestedColumns } = validateDataColumnSidecarsByRangeRequest(chain.config, request);
|
|
9
|
+
const availableColumns = validateRequestedDataColumns(chain, requestedColumns);
|
|
8
10
|
const endSlot = startSlot + count;
|
|
11
|
+
if (availableColumns.length === 0) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
9
14
|
const finalized = db.dataColumnSidecarArchive;
|
|
10
15
|
const unfinalized = db.dataColumnSidecar;
|
|
11
16
|
const finalizedSlot = chain.forkChoice.getFinalizedBlock().slot;
|
|
12
17
|
// Finalized range of columns
|
|
13
18
|
if (startSlot <= finalizedSlot) {
|
|
14
19
|
for (let slot = startSlot; slot < endSlot; slot++) {
|
|
15
|
-
const dataColumnSidecars = await finalized.getManyBinary(slot,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
20
|
+
const dataColumnSidecars = await finalized.getManyBinary(slot, availableColumns);
|
|
21
|
+
const unavailableColumnIndices = [];
|
|
22
|
+
for (let i = 0; i < dataColumnSidecars.length; i++) {
|
|
23
|
+
const dataColumnSidecarBytes = dataColumnSidecars[i];
|
|
24
|
+
if (dataColumnSidecarBytes) {
|
|
25
|
+
yield {
|
|
26
|
+
data: dataColumnSidecarBytes,
|
|
27
|
+
boundary: chain.config.getForkBoundaryAtEpoch(computeEpochAtSlot(slot)),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
// TODO: Check blobs for that block and respond resource_unavailable
|
|
31
|
+
// After we have consensus from other teams on the specs
|
|
32
|
+
else {
|
|
33
|
+
unavailableColumnIndices.push(availableColumns[i]);
|
|
19
34
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
35
|
+
}
|
|
36
|
+
if (unavailableColumnIndices.length) {
|
|
37
|
+
await handleColumnSidecarUnavailability({
|
|
38
|
+
chain,
|
|
39
|
+
db,
|
|
40
|
+
metrics: chain.metrics,
|
|
41
|
+
unavailableColumnIndices,
|
|
42
|
+
slot,
|
|
43
|
+
requestedColumns,
|
|
44
|
+
availableColumns,
|
|
45
|
+
});
|
|
24
46
|
}
|
|
25
47
|
}
|
|
26
48
|
}
|
|
@@ -37,15 +59,33 @@ export async function* onDataColumnSidecarsByRange(request, chain, db) {
|
|
|
37
59
|
// at the time of the start of the request. Spec is clear the chain of columns must be consistent, but on
|
|
38
60
|
// re-org there's no need to abort the request
|
|
39
61
|
// Spec: https://github.com/ethereum/consensus-specs/blob/ad36024441cf910d428d03f87f331fbbd2b3e5f1/specs/fulu/p2p-interface.md#L425-L429
|
|
40
|
-
const dataColumnSidecars = await unfinalized.getManyBinary(fromHex(block.blockRoot),
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
62
|
+
const dataColumnSidecars = await unfinalized.getManyBinary(fromHex(block.blockRoot), availableColumns);
|
|
63
|
+
const unavailableColumnIndices = [];
|
|
64
|
+
for (let i = 0; i < dataColumnSidecars.length; i++) {
|
|
65
|
+
const dataColumnSidecarBytes = dataColumnSidecars[i];
|
|
66
|
+
if (dataColumnSidecarBytes) {
|
|
67
|
+
yield {
|
|
68
|
+
data: dataColumnSidecarBytes,
|
|
69
|
+
boundary: chain.config.getForkBoundaryAtEpoch(computeEpochAtSlot(block.slot)),
|
|
70
|
+
};
|
|
44
71
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
72
|
+
// TODO: Check blobs for that block and respond resource_unavailable
|
|
73
|
+
// After we have consensus from other teams on the specs
|
|
74
|
+
else {
|
|
75
|
+
unavailableColumnIndices.push(availableColumns[i]);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (unavailableColumnIndices.length) {
|
|
79
|
+
await handleColumnSidecarUnavailability({
|
|
80
|
+
chain,
|
|
81
|
+
db,
|
|
82
|
+
metrics: chain.metrics,
|
|
83
|
+
unavailableColumnIndices,
|
|
84
|
+
blockRoot: fromHex(block.blockRoot),
|
|
85
|
+
slot: block.slot,
|
|
86
|
+
requestedColumns,
|
|
87
|
+
availableColumns,
|
|
88
|
+
});
|
|
49
89
|
}
|
|
50
90
|
}
|
|
51
91
|
// If block is after endSlot, stop iterating
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataColumnSidecarsByRange.js","sourceRoot":"","sources":["../../../../src/network/reqresp/handlers/dataColumnSidecarsByRange.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,UAAU,EAAE,aAAa,EAAmB,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"dataColumnSidecarsByRange.js","sourceRoot":"","sources":["../../../../src/network/reqresp/handlers/dataColumnSidecarsByRange.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,35 +1,63 @@
|
|
|
1
|
-
import { RespStatus, ResponseError } from "@lodestar/reqresp";
|
|
2
1
|
import { computeEpochAtSlot } from "@lodestar/state-transition";
|
|
3
|
-
import {
|
|
2
|
+
import { toRootHex } from "@lodestar/utils";
|
|
3
|
+
import { handleColumnSidecarUnavailability, validateRequestedDataColumns, } from "../utils/dataColumnResponseValidation.js";
|
|
4
4
|
export async function* onDataColumnSidecarsByRoot(requestBody, chain, db) {
|
|
5
|
-
// SPEC: minimum_request_epoch = max(
|
|
6
|
-
const finalizedEpoch = chain.forkChoice.getFinalizedCheckpoint().epoch;
|
|
5
|
+
// SPEC: minimum_request_epoch = max(current_epoch - MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS, FULU_FORK_EPOCH)
|
|
7
6
|
const currentEpoch = chain.clock.currentEpoch;
|
|
8
|
-
const minimumRequestEpoch = Math.max(
|
|
7
|
+
const minimumRequestEpoch = Math.max(currentEpoch - chain.config.MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS, chain.config.FULU_FORK_EPOCH);
|
|
9
8
|
for (const dataColumnsByRootIdentifier of requestBody) {
|
|
10
|
-
const { blockRoot, columns } = dataColumnsByRootIdentifier;
|
|
11
|
-
const
|
|
9
|
+
const { blockRoot, columns: requestedColumns } = dataColumnsByRootIdentifier;
|
|
10
|
+
const availableColumns = validateRequestedDataColumns(chain, requestedColumns);
|
|
11
|
+
if (availableColumns.length === 0) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
const blockRootHex = toRootHex(blockRoot);
|
|
12
15
|
const block = chain.forkChoice.getBlockHex(blockRootHex);
|
|
13
|
-
//
|
|
16
|
+
// If the block is not in fork choice, it may be finalized. Attempt to find its slot in block archive
|
|
17
|
+
const slot = block ? block.slot : await db.blockArchive.getSlotByRoot(blockRoot);
|
|
18
|
+
if (slot === null) {
|
|
19
|
+
// We haven't seen the block
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
const requestedEpoch = computeEpochAtSlot(slot);
|
|
14
23
|
// SPEC: Clients MUST support requesting sidecars since minimum_request_epoch.
|
|
15
24
|
// If any root in the request content references a block earlier than minimum_request_epoch, peers MAY respond with
|
|
16
25
|
// error code 3: ResourceUnavailable or not include the data column sidecar in the response.
|
|
17
|
-
// https://github.com/ethereum/consensus-specs/blob/
|
|
18
|
-
if (
|
|
26
|
+
// https://github.com/ethereum/consensus-specs/blob/v1.6.0-alpha.5/specs/fulu/p2p-interface.md#datacolumnsidecarsbyroot-v1
|
|
27
|
+
if (requestedEpoch < minimumRequestEpoch) {
|
|
19
28
|
continue;
|
|
20
29
|
}
|
|
21
|
-
const dataColumns =
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
30
|
+
const dataColumns = block
|
|
31
|
+
? // Non-finalized sidecars are stored by block root
|
|
32
|
+
await db.dataColumnSidecar.getManyBinary(blockRoot, availableColumns)
|
|
33
|
+
: // Finalized sidecars are archived and stored by slot
|
|
34
|
+
await db.dataColumnSidecarArchive.getManyBinary(slot, availableColumns);
|
|
35
|
+
const unavailableColumnIndices = [];
|
|
36
|
+
for (let i = 0; i < dataColumns.length; i++) {
|
|
37
|
+
const dataColumnBytes = dataColumns[i];
|
|
38
|
+
if (dataColumnBytes) {
|
|
39
|
+
yield {
|
|
40
|
+
data: dataColumnBytes,
|
|
41
|
+
boundary: chain.config.getForkBoundaryAtEpoch(requestedEpoch),
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
// TODO: Check blobs for that block and respond resource_unavailable
|
|
45
|
+
// After we have consensus from other teams on the specs
|
|
46
|
+
else {
|
|
47
|
+
unavailableColumnIndices.push(availableColumns[i]);
|
|
28
48
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
49
|
+
}
|
|
50
|
+
if (unavailableColumnIndices.length) {
|
|
51
|
+
await handleColumnSidecarUnavailability({
|
|
52
|
+
chain,
|
|
53
|
+
db,
|
|
54
|
+
metrics: chain.metrics,
|
|
55
|
+
slot,
|
|
56
|
+
blockRoot,
|
|
57
|
+
unavailableColumnIndices,
|
|
58
|
+
requestedColumns,
|
|
59
|
+
availableColumns,
|
|
60
|
+
});
|
|
33
61
|
}
|
|
34
62
|
}
|
|
35
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataColumnSidecarsByRoot.js","sourceRoot":"","sources":["../../../../src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataColumnSidecarsByRoot.js","sourceRoot":"","sources":["../../../../src/network/reqresp/handlers/dataColumnSidecarsByRoot.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAI1C,OAAO,EACL,iCAAiC,EACjC,4BAA4B,GAC7B,MAAM,0CAA0C,CAAC;AAGlD,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,0BAA0B,CAC/C,WAA4C,EAC5C,KAAmB,EACnB,EAAa;IAEb,mHAAmH;IACnH,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;IAC9C,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAClC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,4CAA4C,EACxE,KAAK,CAAC,MAAM,CAAC,eAAe,CAC7B,CAAC;IAEF,KAAK,MAAM,2BAA2B,IAAI,WAAW,EAAE,CAAC;QACtD,MAAM,EAAC,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAC,GAAG,2BAA2B,CAAC;QAC3E,MAAM,gBAAgB,GAAG,4BAA4B,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAC/E,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QACzD,qGAAqG;QACrG,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAEjF,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,4BAA4B;YAC5B,SAAS;QACX,CAAC;QAED,MAAM,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAEhD,8EAA8E;QAC9E,mHAAmH;QACnH,4FAA4F;QAC5F,0HAA0H;QAC1H,IAAI,cAAc,GAAG,mBAAmB,EAAE,CAAC;YACzC,SAAS;QACX,CAAC;QAED,MAAM,WAAW,GAAG,KAAK;YACvB,CAAC,CAAC,kDAAkD;gBAClD,MAAM,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,SAAS,EAAE,gBAAgB,CAAC;YACvE,CAAC,CAAC,qDAAqD;gBACrD,MAAM,EAAE,CAAC,wBAAwB,CAAC,aAAa,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAE5E,MAAM,wBAAwB,GAAkB,EAAE,CAAC;QACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YACvC,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM;oBACJ,IAAI,EAAE,eAAe;oBACrB,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,cAAc,CAAC;iBAC9D,CAAC;YACJ,CAAC;YAED,oEAAoE;YACpE,wDAAwD;iBACnD,CAAC;gBACJ,wBAAwB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAED,IAAI,wBAAwB,CAAC,MAAM,EAAE,CAAC;YACpC,MAAM,iCAAiC,CAAC;gBACtC,KAAK;gBACL,EAAE;gBACF,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI;gBACJ,SAAS;gBACT,wBAAwB;gBACxB,gBAAgB;gBAChB,gBAAgB;aACjB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ColumnIndex, Slot } from "@lodestar/types";
|
|
2
|
+
import { IBeaconChain } from "../../../chain/interface.js";
|
|
3
|
+
import { IBeaconDb } from "../../../db/interface.js";
|
|
4
|
+
import { Metrics } from "../../../metrics/metrics.js";
|
|
5
|
+
export declare function handleColumnSidecarUnavailability({ chain, db, metrics, unavailableColumnIndices, requestedColumns, availableColumns, slot, blockRoot, }: {
|
|
6
|
+
chain: IBeaconChain;
|
|
7
|
+
db: IBeaconDb;
|
|
8
|
+
metrics: Metrics | null;
|
|
9
|
+
slot: Slot;
|
|
10
|
+
blockRoot?: Uint8Array;
|
|
11
|
+
unavailableColumnIndices: ColumnIndex[];
|
|
12
|
+
requestedColumns: ColumnIndex[];
|
|
13
|
+
availableColumns: ColumnIndex[];
|
|
14
|
+
}): Promise<void>;
|
|
15
|
+
export declare function validateRequestedDataColumns(chain: IBeaconChain, requestedColumns: ColumnIndex[]): ColumnIndex[];
|
|
16
|
+
//# sourceMappingURL=dataColumnResponseValidation.d.ts.map
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { RespStatus, ResponseError } from "@lodestar/reqresp";
|
|
2
|
+
import { prettyBytes, prettyPrintIndices } from "@lodestar/utils";
|
|
3
|
+
import { getBlobKzgCommitmentsCountFromSignedBeaconBlockSerialized } from "../../../util/sszBytes.js";
|
|
4
|
+
export async function handleColumnSidecarUnavailability({ chain, db, metrics, unavailableColumnIndices, requestedColumns, availableColumns, slot, blockRoot, }) {
|
|
5
|
+
const logData = {
|
|
6
|
+
unavailableColumnIndices: prettyPrintIndices(unavailableColumnIndices),
|
|
7
|
+
requestedColumns: prettyPrintIndices(requestedColumns),
|
|
8
|
+
availableColumns: prettyPrintIndices(availableColumns),
|
|
9
|
+
slot,
|
|
10
|
+
};
|
|
11
|
+
if (blockRoot) {
|
|
12
|
+
logData.blockRoot = prettyBytes(blockRoot);
|
|
13
|
+
}
|
|
14
|
+
chain.logger.debug("dataColumnSidecar requested unavailable", logData);
|
|
15
|
+
const blockBytes = blockRoot ? await db.block.getBinary(blockRoot) : await db.blockArchive.getBinary(slot);
|
|
16
|
+
if (!blockBytes) {
|
|
17
|
+
chain.logger.error(`Expected ${blockRoot ? "unfinalized" : "finalized"} block not found while handling unavailable dataColumnSidecar`);
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
// Check for blob count in actual block
|
|
21
|
+
const blobsCount = getBlobKzgCommitmentsCountFromSignedBeaconBlockSerialized(chain.config, blockBytes);
|
|
22
|
+
// There are zero blobs for that column index, so we can safely return without any error
|
|
23
|
+
if (blobsCount > 0)
|
|
24
|
+
return;
|
|
25
|
+
// There are blobs for that column index so we should have synced for it
|
|
26
|
+
// We need to inform to peers that we don't have that expected data
|
|
27
|
+
metrics?.dataColumns.missingCustodyColumns.inc(unavailableColumnIndices.length);
|
|
28
|
+
chain.logger.verbose("dataColumnSidecar requested and within custody but not available", {
|
|
29
|
+
unavailableColumnIndices: prettyPrintIndices(unavailableColumnIndices),
|
|
30
|
+
blockRoot: blockRoot ? prettyBytes(blockRoot) : "unknown blockRoot",
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
export function validateRequestedDataColumns(chain, requestedColumns) {
|
|
34
|
+
if (requestedColumns.length === 0) {
|
|
35
|
+
throw new ResponseError(RespStatus.INVALID_REQUEST, "dataColumnSidecar requested without column indices");
|
|
36
|
+
}
|
|
37
|
+
const custodyColumns = chain.custodyConfig.custodyColumns;
|
|
38
|
+
const availableColumns = requestedColumns.filter((c) => custodyColumns.includes(c));
|
|
39
|
+
const missingColumns = requestedColumns.filter((c) => !custodyColumns.includes(c));
|
|
40
|
+
if (missingColumns.length > 0) {
|
|
41
|
+
chain.logger.verbose("Requested dataColumnSidecar for non-custody columns", {
|
|
42
|
+
requestedColumns: prettyPrintIndices(requestedColumns),
|
|
43
|
+
custodyColumns: prettyPrintIndices(custodyColumns),
|
|
44
|
+
availableColumns: prettyPrintIndices(availableColumns),
|
|
45
|
+
missingColumns: prettyPrintIndices(missingColumns),
|
|
46
|
+
});
|
|
47
|
+
// TODO: We should throw error and only respond to valid requests
|
|
48
|
+
// A peer must check what we announced in our custody and only ask for those columns
|
|
49
|
+
// throw new ResponseError(RespStatus.INVALID_REQUEST, "dataColumnSidecar requested for non-custody columns");
|
|
50
|
+
}
|
|
51
|
+
if (availableColumns.length === 0) {
|
|
52
|
+
chain.logger.verbose("Requested dataColumnSidecars not available", {
|
|
53
|
+
requestedColumns: prettyPrintIndices(requestedColumns),
|
|
54
|
+
custodyColumns: prettyPrintIndices(custodyColumns),
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
return availableColumns;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=dataColumnResponseValidation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataColumnResponseValidation.js","sourceRoot":"","sources":["../../../../src/network/reqresp/utils/dataColumnResponseValidation.ts"],"names":[],"mappings":"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"}
|
|
@@ -452,7 +452,7 @@ export class BackfillSync extends EventEmitter {
|
|
|
452
452
|
let parentBlock, backCount = 1;
|
|
453
453
|
let isPrevFinWsConfirmedAnchorParent = false;
|
|
454
454
|
while (backCount !== this.opts.backfillBatchSize &&
|
|
455
|
-
// biome-ignore lint/suspicious/noAssignInExpressions:
|
|
455
|
+
// biome-ignore lint/suspicious/noAssignInExpressions: May be refactored later
|
|
456
456
|
(parentBlock = await this.db.blockArchive.getByRoot(anchorBlock.message.parentRoot))) {
|
|
457
457
|
// Before moving anchorBlock back, we need check for prevFinalizedCheckpointBlock
|
|
458
458
|
if (anchorBlock.message.slot < this.prevFinalizedCheckpointBlock.slot) {
|