@lodestar/beacon-node 1.36.0-dev.d9cc6b90f7 → 1.36.0-dev.f259361847
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 +9 -0
- package/lib/chain/archiveStore/archiveStore.d.ts.map +1 -1
- package/lib/chain/archiveStore/archiveStore.js +24 -0
- package/lib/chain/archiveStore/archiveStore.js.map +1 -1
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts +7 -0
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.d.ts.map +1 -1
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js +31 -5
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js.map +1 -1
- package/lib/chain/beaconProposerCache.d.ts +3 -0
- package/lib/chain/beaconProposerCache.d.ts.map +1 -1
- package/lib/chain/beaconProposerCache.js +4 -6
- package/lib/chain/beaconProposerCache.js.map +1 -1
- package/lib/chain/errors/dataColumnSidecarError.d.ts +7 -0
- package/lib/chain/errors/dataColumnSidecarError.d.ts.map +1 -1
- package/lib/chain/errors/dataColumnSidecarError.js +1 -0
- package/lib/chain/errors/dataColumnSidecarError.js.map +1 -1
- package/lib/chain/validation/dataColumnSidecar.d.ts.map +1 -1
- package/lib/chain/validation/dataColumnSidecar.js +14 -3
- package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
- package/lib/metrics/metrics/lodestar.d.ts +10 -0
- package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
- package/lib/metrics/metrics/lodestar.js +14 -0
- package/lib/metrics/metrics/lodestar.js.map +1 -1
- package/lib/network/processor/gossipHandlers.d.ts.map +1 -1
- package/lib/network/processor/gossipHandlers.js +14 -8
- package/lib/network/processor/gossipHandlers.js.map +1 -1
- package/lib/sync/utils/remoteSyncType.js +2 -2
- package/lib/sync/utils/remoteSyncType.js.map +1 -1
- package/package.json +14 -14
- package/src/chain/archiveStore/archiveStore.ts +27 -0
- package/src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts +32 -5
- package/src/chain/beaconProposerCache.ts +4 -8
- package/src/chain/errors/dataColumnSidecarError.ts +8 -0
- package/src/chain/validation/dataColumnSidecar.ts +21 -4
- package/src/metrics/metrics/lodestar.ts +17 -0
- package/src/network/processor/gossipHandlers.ts +16 -7
- package/src/sync/utils/remoteSyncType.ts +2 -2
|
@@ -16,6 +16,15 @@ type ArchiveStoreInitOpts = ArchiveStoreOpts & {
|
|
|
16
16
|
finalizedCheckpoint: Checkpoint;
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
|
+
export declare enum ArchiveStoreTask {
|
|
20
|
+
ArchiveBlocks = "archive_blocks",
|
|
21
|
+
PruneHistory = "prune_history",
|
|
22
|
+
OnFinalizedCheckpoint = "on_finalized_checkpoint",
|
|
23
|
+
MaybeArchiveState = "maybe_archive_state",
|
|
24
|
+
RegenPruneOnFinalized = "regen_prune_on_finalized",
|
|
25
|
+
ForkchoicePrune = "forkchoice_prune",
|
|
26
|
+
UpdateBackfillRange = "update_backfill_range"
|
|
27
|
+
}
|
|
19
28
|
/**
|
|
20
29
|
* Used for running tasks that depends on some events or are executed
|
|
21
30
|
* periodically.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archiveStore.d.ts","sourceRoot":"","sources":["../../../src/chain/archiveStore/archiveStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAC,OAAO,EAAC,MAAM,0BAA0B,CAAC;AAIjD,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAG7C,OAAO,EAAc,gBAAgB,EAAuB,MAAM,gBAAgB,CAAC;AAMnF,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,YAAY,CAAC;IACpB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF,KAAK,oBAAoB,GAAG,gBAAgB,GAAG;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE;QAAC,mBAAmB,EAAE,UAAU,CAAA;KAAC,CAAA;CAAC,CAAC;AAEhH;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAA0C;IAE1D,OAAO,CAAC,iBAAiB,CAAC,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAuB;IAC9D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAY;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAuB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IAErC,OAAO,CAAC,oBAAoB,CAAC,CAAuB;gBAExC,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAAW;IA0CnF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiCrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAIhC,wBAAwB,CAC5B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;QAAC,KAAK,EAAE,UAAU,CAAC;QAAC,mBAAmB,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAC,GAAG,IAAI,CAAC;IAgBxF;;SAEK;IACC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAOpC,OAAO,CAAC,qBAAqB,CAE3B;IAEF,OAAO,CAAC,YAAY,CAWlB;IAEF,OAAO,CAAC,0BAA0B,
|
|
1
|
+
{"version":3,"file":"archiveStore.d.ts","sourceRoot":"","sources":["../../../src/chain/archiveStore/archiveStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAC,OAAO,EAAC,MAAM,0BAA0B,CAAC;AAIjD,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAG7C,OAAO,EAAc,gBAAgB,EAAuB,MAAM,gBAAgB,CAAC;AAMnF,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,YAAY,CAAC;IACpB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF,KAAK,oBAAoB,GAAG,gBAAgB,GAAG;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE;QAAC,mBAAmB,EAAE,UAAU,CAAA;KAAC,CAAA;CAAC,CAAC;AAEhH,oBAAY,gBAAgB;IAC1B,aAAa,mBAAmB;IAChC,YAAY,kBAAkB;IAC9B,qBAAqB,4BAA4B;IACjD,iBAAiB,wBAAwB;IACzC,qBAAqB,6BAA6B;IAClD,eAAe,qBAAqB;IACpC,mBAAmB,0BAA0B;CAC9C;AAED;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAA0C;IAE1D,OAAO,CAAC,iBAAiB,CAAC,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAuB;IAC9D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAY;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAuB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IAErC,OAAO,CAAC,oBAAoB,CAAC,CAAuB;gBAExC,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAAW;IA0CnF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiCrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAIhC,wBAAwB,CAC5B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;QAAC,KAAK,EAAE,UAAU,CAAC;QAAC,mBAAmB,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAC,GAAG,IAAI,CAAC;IAgBxF;;SAEK;IACC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAOpC,OAAO,CAAC,qBAAqB,CAE3B;IAEF,OAAO,CAAC,YAAY,CAWlB;IAEF,OAAO,CAAC,0BAA0B,CA+DhC;CACH"}
|
|
@@ -9,6 +9,16 @@ import { FrequencyStateArchiveStrategy } from "./strategies/frequencyStateArchiv
|
|
|
9
9
|
import { archiveBlocks } from "./utils/archiveBlocks.js";
|
|
10
10
|
import { pruneHistory } from "./utils/pruneHistory.js";
|
|
11
11
|
import { updateBackfillRange } from "./utils/updateBackfillRange.js";
|
|
12
|
+
export var ArchiveStoreTask;
|
|
13
|
+
(function (ArchiveStoreTask) {
|
|
14
|
+
ArchiveStoreTask["ArchiveBlocks"] = "archive_blocks";
|
|
15
|
+
ArchiveStoreTask["PruneHistory"] = "prune_history";
|
|
16
|
+
ArchiveStoreTask["OnFinalizedCheckpoint"] = "on_finalized_checkpoint";
|
|
17
|
+
ArchiveStoreTask["MaybeArchiveState"] = "maybe_archive_state";
|
|
18
|
+
ArchiveStoreTask["RegenPruneOnFinalized"] = "regen_prune_on_finalized";
|
|
19
|
+
ArchiveStoreTask["ForkchoicePrune"] = "forkchoice_prune";
|
|
20
|
+
ArchiveStoreTask["UpdateBackfillRange"] = "update_backfill_range";
|
|
21
|
+
})(ArchiveStoreTask || (ArchiveStoreTask = {}));
|
|
12
22
|
/**
|
|
13
23
|
* Used for running tasks that depends on some events or are executed
|
|
14
24
|
* periodically.
|
|
@@ -113,17 +123,31 @@ export class ArchiveStore {
|
|
|
113
123
|
try {
|
|
114
124
|
const finalizedEpoch = finalized.epoch;
|
|
115
125
|
this.logger.verbose("Start processing finalized checkpoint", { epoch: finalizedEpoch, rootHex: finalized.rootHex });
|
|
126
|
+
let timer = this.metrics?.processFinalizedCheckpoint.durationByTask.startTimer();
|
|
116
127
|
await archiveBlocks(this.chain.config, this.db, this.chain.forkChoice, this.chain.lightClientServer, this.logger, finalized, this.chain.clock.currentEpoch, this.archiveDataEpochs, this.chain.opts.persistOrphanedBlocks, this.chain.opts.persistOrphanedBlocksDir);
|
|
128
|
+
timer?.({ source: ArchiveStoreTask.ArchiveBlocks });
|
|
117
129
|
if (this.opts.pruneHistory) {
|
|
130
|
+
timer = this.metrics?.processFinalizedCheckpoint.durationByTask.startTimer();
|
|
118
131
|
await pruneHistory(this.chain.config, this.db, this.logger, this.metrics, finalizedEpoch, this.chain.clock.currentEpoch);
|
|
132
|
+
timer?.({ source: ArchiveStoreTask.PruneHistory });
|
|
119
133
|
}
|
|
134
|
+
timer = this.metrics?.processFinalizedCheckpoint.durationByTask.startTimer();
|
|
120
135
|
await this.statesArchiverStrategy.onFinalizedCheckpoint(finalized, this.metrics);
|
|
136
|
+
timer?.({ source: ArchiveStoreTask.OnFinalizedCheckpoint });
|
|
121
137
|
// should be after ArchiveBlocksTask to handle restart cleanly
|
|
138
|
+
timer = this.metrics?.processFinalizedCheckpoint.durationByTask.startTimer();
|
|
122
139
|
await this.statesArchiverStrategy.maybeArchiveState(finalized, this.metrics);
|
|
140
|
+
timer?.({ source: ArchiveStoreTask.MaybeArchiveState });
|
|
141
|
+
timer = this.metrics?.processFinalizedCheckpoint.durationByTask.startTimer();
|
|
123
142
|
this.chain.regen.pruneOnFinalized(finalizedEpoch);
|
|
143
|
+
timer?.({ source: ArchiveStoreTask.RegenPruneOnFinalized });
|
|
124
144
|
// tasks rely on extended fork choice
|
|
145
|
+
timer = this.metrics?.processFinalizedCheckpoint.durationByTask.startTimer();
|
|
125
146
|
const prunedBlocks = this.chain.forkChoice.prune(finalized.rootHex);
|
|
147
|
+
timer?.({ source: ArchiveStoreTask.ForkchoicePrune });
|
|
148
|
+
timer = this.metrics?.processFinalizedCheckpoint.durationByTask.startTimer();
|
|
126
149
|
await updateBackfillRange({ chain: this.chain, db: this.db, logger: this.logger }, finalized);
|
|
150
|
+
timer?.({ source: ArchiveStoreTask.UpdateBackfillRange });
|
|
127
151
|
this.logger.verbose("Finish processing finalized checkpoint", {
|
|
128
152
|
epoch: finalizedEpoch,
|
|
129
153
|
rootHex: finalized.rootHex,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archiveStore.js","sourceRoot":"","sources":["../../../src/chain/archiveStore/archiveStore.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAC,yCAAyC,EAAC,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAC,oBAAoB,EAAC,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAC,WAAW,EAAyC,MAAM,gBAAgB,CAAC;AACnF,OAAO,EAAC,6BAA6B,EAAC,MAAM,+CAA+C,CAAC;AAC5F,OAAO,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAC,mBAAmB,EAAC,MAAM,gCAAgC,CAAC;AAWnE;;;GAGG;AACH,MAAM,OAAO,YAAY;IACf,WAAW,CAAc;IACzB,QAAQ,CAA0C;IAElD,iBAAiB,CAAU;IAClB,sBAAsB,CAAuB;IAC7C,KAAK,CAAe;IACpB,EAAE,CAAY;IACd,MAAM,CAAa;IACnB,OAAO,CAAiB;IACxB,IAAI,CAAuB;IAC3B,MAAM,CAAc;IAE7B,oBAAoB,CAAwB;IAEpD,YAAY,OAA4B,EAAE,IAA0B,EAAE,MAAmB;QACvF,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAEhD,IAAI,CAAC,QAAQ,GAAG,IAAI,YAAY,CAA4B,IAAI,CAAC,0BAA0B,EAAE;YAC3F,SAAS,EAAE,yCAAyC;YACpD,MAAM;SACP,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/C,IAAI,CAAC,sBAAsB,GAAG,IAAI,6BAA6B,CAC7D,IAAI,CAAC,KAAK,CAAC,KAAK,EAChB,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,MAAM,EACX,IAAI,EACJ,IAAI,CAAC,KAAK,CAAC,UAAU,CACtB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,WAAW,4BAA4B,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,mBAAmB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAEhE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC1B,OAAO,EACP,GAAG,EAAE;gBACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,mBAAmB,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACnE,CAAC,EACD,EAAC,IAAI,EAAE,IAAI,EAAC,CACb,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3B,uCAAuC;YACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC5C,MAAM,eAAe,CACnB,YAAY,CACV,IAAI,CAAC,KAAK,CAAC,MAAM,EACjB,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,KAAK,EAC/C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAC9B,EACD,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,EACvE,MAAM,EACN,IAAI,CAAC,MAAM,CACZ,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACnC,IAAI,CAAC,oBAAoB,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC;gBAC1D,IAAI,EAAE;oBACJ,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW;oBACzC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;iBAC7B;gBACD,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,oBAAoB,EAAE,KAAK,EAAE,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,OAAO,IAAI,CAAC,oBAAoB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,IAAY;QAEZ,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAEjE,IAAI,IAAI,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,2DAA2D;QAC3D,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAClF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,EAAC,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,IAAI,EAAC,CAAC;IAC3G,CAAC;IAED;;SAEK;IACL,KAAK,CAAC,aAAa;QACjB,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,2EAA2E;IAC3E,iBAAiB;IACjB,2EAA2E;IACnE,qBAAqB,GAAG,KAAK,EAAE,SAA4B,EAAiB,EAAE;QACpF,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC,CAAC;IAEM,YAAY,GAAG,GAAS,EAAE;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC;QAChE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,sBAAsB,EAAE,CAAC,KAAK,EACpD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,sBAAsB,EAAE,CAAC,KAAK,EACpD,aAAa,CACd,CAAC;QAEF,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAClF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAC,EAAE,GAAG,CAAC,CAAC;QACxF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEM,0BAA0B,GAAG,KAAK,EAAE,SAA4B,EAAiB,EAAE;QACzF,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,uCAAuC,EAAE,EAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"archiveStore.js","sourceRoot":"","sources":["../../../src/chain/archiveStore/archiveStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,13 @@ import { StateArchiveStrategy, StatesArchiveOpts } from "../interface.js";
|
|
|
11
11
|
* These states will be pruned once a new state is persisted
|
|
12
12
|
*/
|
|
13
13
|
export declare const PERSIST_TEMP_STATE_EVERY_EPOCHS = 32;
|
|
14
|
+
export declare enum FrequencyStateArchiveStep {
|
|
15
|
+
LoadLastStoredSlot = "load_last_stored_slot",
|
|
16
|
+
GetFinalizedState = "get_finalized_state",
|
|
17
|
+
PersistState = "persist_state",
|
|
18
|
+
LoadStoredSlotsToDelete = "load_stored_slots_to_delete",
|
|
19
|
+
DeleteOldStates = "delete_old_states"
|
|
20
|
+
}
|
|
14
21
|
/**
|
|
15
22
|
* Archives finalized states from active bucket to archive bucket.
|
|
16
23
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frequencyStateArchiveStrategy.d.ts","sourceRoot":"","sources":["../../../../src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAGxD,OAAO,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAC,OAAO,EAAC,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAc,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAElD;;;;GAIG;AACH,qBAAa,6BAA8B,YAAW,oBAAoB;IAEtE,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAJX,KAAK,EAAE,iBAAiB,EACxB,EAAE,EAAE,SAAS,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,iBAAiB,EACvB,UAAU,CAAC,GAAE,UAAU,GAAG,IAAI,aAAA;IAG3C,qBAAqB,CAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9F,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjF;;;;;;;;;;;OAWG;IACG,iBAAiB,CAAC,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"frequencyStateArchiveStrategy.d.ts","sourceRoot":"","sources":["../../../../src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAGxD,OAAO,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAC,OAAO,EAAC,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAc,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAElD,oBAAY,yBAAyB;IACnC,kBAAkB,0BAA0B;IAC5C,iBAAiB,wBAAwB;IAEzC,YAAY,kBAAkB;IAC9B,uBAAuB,gCAAgC;IACvD,eAAe,sBAAsB;CACtC;AAED;;;;GAIG;AACH,qBAAa,6BAA8B,YAAW,oBAAoB;IAEtE,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAJX,KAAK,EAAE,iBAAiB,EACxB,EAAE,EAAE,SAAS,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,iBAAiB,EACvB,UAAU,CAAC,GAAE,UAAU,GAAG,IAAI,aAAA;IAG3C,qBAAqB,CAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9F,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjF;;;;;;;;;;;OAWG;IACG,iBAAiB,CAAC,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA6C9F;;;OAGG;IACG,YAAY,CAAC,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAsC1F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,gBAAgB,EAAE,IAAI,EAAE,EAAE,kBAAkB,EAAE,KAAK,GAAG,IAAI,EAAE,CAerG"}
|
|
@@ -8,6 +8,15 @@ import { serializeState } from "../../serializeState.js";
|
|
|
8
8
|
* These states will be pruned once a new state is persisted
|
|
9
9
|
*/
|
|
10
10
|
export const PERSIST_TEMP_STATE_EVERY_EPOCHS = 32;
|
|
11
|
+
export var FrequencyStateArchiveStep;
|
|
12
|
+
(function (FrequencyStateArchiveStep) {
|
|
13
|
+
FrequencyStateArchiveStep["LoadLastStoredSlot"] = "load_last_stored_slot";
|
|
14
|
+
FrequencyStateArchiveStep["GetFinalizedState"] = "get_finalized_state";
|
|
15
|
+
// SerializeState is tracked via stateSerializeDuration metric
|
|
16
|
+
FrequencyStateArchiveStep["PersistState"] = "persist_state";
|
|
17
|
+
FrequencyStateArchiveStep["LoadStoredSlotsToDelete"] = "load_stored_slots_to_delete";
|
|
18
|
+
FrequencyStateArchiveStep["DeleteOldStates"] = "delete_old_states";
|
|
19
|
+
})(FrequencyStateArchiveStep || (FrequencyStateArchiveStep = {}));
|
|
11
20
|
/**
|
|
12
21
|
* Archives finalized states from active bucket to archive bucket.
|
|
13
22
|
*
|
|
@@ -41,29 +50,40 @@ export class FrequencyStateArchiveStrategy {
|
|
|
41
50
|
* ```
|
|
42
51
|
*/
|
|
43
52
|
async maybeArchiveState(finalized, metrics) {
|
|
53
|
+
let timer = metrics?.processFinalizedCheckpoint.frequencyStateArchive.startTimer();
|
|
44
54
|
const lastStoredSlot = await this.db.stateArchive.lastKey();
|
|
55
|
+
timer?.({ step: FrequencyStateArchiveStep.LoadLastStoredSlot });
|
|
45
56
|
const lastStoredEpoch = computeEpochAtSlot(lastStoredSlot ?? 0);
|
|
46
57
|
const { archiveStateEpochFrequency } = this.opts;
|
|
58
|
+
const logCtx = { finalizedEpoch: finalized.epoch, lastStoredEpoch, archiveStateEpochFrequency };
|
|
47
59
|
if (finalized.epoch - lastStoredEpoch >= Math.min(PERSIST_TEMP_STATE_EVERY_EPOCHS, archiveStateEpochFrequency)) {
|
|
60
|
+
this.logger.verbose("Start archiving state", logCtx);
|
|
48
61
|
await this.archiveState(finalized, metrics);
|
|
49
62
|
// Only check the current and previous intervals
|
|
50
63
|
const minEpoch = Math.max(0, (Math.floor(finalized.epoch / archiveStateEpochFrequency) - 1) * archiveStateEpochFrequency);
|
|
64
|
+
timer = metrics?.processFinalizedCheckpoint.frequencyStateArchive.startTimer();
|
|
51
65
|
const storedStateSlots = await this.db.stateArchive.keys({
|
|
52
66
|
lt: computeStartSlotAtEpoch(finalized.epoch),
|
|
53
67
|
gte: computeStartSlotAtEpoch(minEpoch),
|
|
54
68
|
});
|
|
69
|
+
timer?.({ step: FrequencyStateArchiveStep.LoadStoredSlotsToDelete });
|
|
55
70
|
const statesSlotsToDelete = computeStateSlotsToDelete(storedStateSlots, archiveStateEpochFrequency);
|
|
71
|
+
timer = metrics?.processFinalizedCheckpoint.frequencyStateArchive.startTimer();
|
|
56
72
|
if (statesSlotsToDelete.length > 0) {
|
|
57
73
|
await this.db.stateArchive.batchDelete(statesSlotsToDelete);
|
|
58
74
|
}
|
|
75
|
+
timer?.({ step: FrequencyStateArchiveStep.DeleteOldStates });
|
|
59
76
|
// More logs to investigate the rss spike issue https://github.com/ChainSafe/lodestar/issues/5591
|
|
60
77
|
this.logger.verbose("Archived state completed", {
|
|
61
|
-
|
|
78
|
+
...logCtx,
|
|
62
79
|
minEpoch,
|
|
63
80
|
storedStateSlots: storedStateSlots.join(","),
|
|
64
81
|
statesSlotsToDelete: statesSlotsToDelete.join(","),
|
|
65
82
|
});
|
|
66
83
|
}
|
|
84
|
+
else {
|
|
85
|
+
this.logger.verbose("Skip archiving state", logCtx);
|
|
86
|
+
}
|
|
67
87
|
}
|
|
68
88
|
/**
|
|
69
89
|
* Archives finalized states from active bucket to archive bucket.
|
|
@@ -71,22 +91,28 @@ export class FrequencyStateArchiveStrategy {
|
|
|
71
91
|
*/
|
|
72
92
|
async archiveState(finalized, metrics) {
|
|
73
93
|
// starting from Mar 2024, the finalized state could be from disk or in memory
|
|
94
|
+
let timer = metrics?.processFinalizedCheckpoint.frequencyStateArchive.startTimer();
|
|
74
95
|
const finalizedStateOrBytes = await this.regen.getCheckpointStateOrBytes(finalized);
|
|
96
|
+
timer?.({ step: FrequencyStateArchiveStep.GetFinalizedState });
|
|
75
97
|
const { rootHex } = finalized;
|
|
76
98
|
if (!finalizedStateOrBytes) {
|
|
77
99
|
throw Error(`No state in cache for finalized checkpoint state epoch #${finalized.epoch} root ${rootHex}`);
|
|
78
100
|
}
|
|
79
101
|
if (finalizedStateOrBytes instanceof Uint8Array) {
|
|
80
102
|
const slot = getStateSlotFromBytes(finalizedStateOrBytes);
|
|
103
|
+
timer = metrics?.processFinalizedCheckpoint.frequencyStateArchive.startTimer();
|
|
81
104
|
await this.db.stateArchive.putBinary(slot, finalizedStateOrBytes);
|
|
105
|
+
timer?.({ step: FrequencyStateArchiveStep.PersistState });
|
|
82
106
|
this.logger.verbose("Archived finalized state bytes", { epoch: finalized.epoch, slot, root: rootHex });
|
|
83
107
|
}
|
|
84
108
|
else {
|
|
85
109
|
// serialize state using BufferPool if provided
|
|
86
|
-
const
|
|
87
|
-
await serializeState(finalizedStateOrBytes, AllocSource.ARCHIVE_STATE, (stateBytes) => {
|
|
88
|
-
|
|
89
|
-
|
|
110
|
+
const sszTimer = metrics?.stateSerializeDuration.startTimer({ source: AllocSource.ARCHIVE_STATE });
|
|
111
|
+
await serializeState(finalizedStateOrBytes, AllocSource.ARCHIVE_STATE, async (stateBytes) => {
|
|
112
|
+
sszTimer?.();
|
|
113
|
+
timer = metrics?.processFinalizedCheckpoint.frequencyStateArchive.startTimer();
|
|
114
|
+
await this.db.stateArchive.putBinary(finalizedStateOrBytes.slot, stateBytes);
|
|
115
|
+
timer?.({ step: FrequencyStateArchiveStep.PersistState });
|
|
90
116
|
}, this.bufferPool);
|
|
91
117
|
// don't delete states before the finalized state, auto-prune will take care of it
|
|
92
118
|
this.logger.verbose("Archived finalized state", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frequencyStateArchiveStrategy.js","sourceRoot":"","sources":["../../../../src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAC,kBAAkB,EAAE,uBAAuB,EAAC,MAAM,4BAA4B,CAAC;AAKvF,OAAO,EAAC,WAAW,EAAa,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAGvD;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,CAAC;AAElD;;;;GAIG;AACH,MAAM,OAAO,6BAA6B;IAErB;IACA;IACA;IACA;IACA;IALnB,YACmB,KAAwB,EACxB,EAAa,EACb,MAAc,EACd,IAAuB,EACvB,UAA8B;QAJ9B,UAAK,GAAL,KAAK,CAAmB;QACxB,OAAE,GAAF,EAAE,CAAW;QACb,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAmB;QACvB,eAAU,GAAV,UAAU,CAAoB;IAC9C,CAAC;IAEJ,KAAK,CAAC,qBAAqB,CAAC,UAA6B,EAAE,QAAyB,IAAkB,CAAC;IACvG,KAAK,CAAC,YAAY,CAAC,UAAmB,EAAE,QAAyB,IAAkB,CAAC;IAEpF;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,iBAAiB,CAAC,SAA4B,EAAE,OAAwB;QAC5E,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC5D,MAAM,eAAe,GAAG,kBAAkB,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC;QAChE,MAAM,EAAC,0BAA0B,EAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QAE/C,IAAI,SAAS,CAAC,KAAK,GAAG,eAAe,IAAI,IAAI,CAAC,GAAG,CAAC,+BAA+B,EAAE,0BAA0B,CAAC,EAAE,CAAC;YAC/G,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAE5C,gDAAgD;YAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,CAAC,EACD,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC,GAAG,0BAA0B,CAC5F,CAAC;YAEF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;gBACvD,EAAE,EAAE,uBAAuB,CAAC,SAAS,CAAC,KAAK,CAAC;gBAC5C,GAAG,EAAE,uBAAuB,CAAC,QAAQ,CAAC;aACvC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"frequencyStateArchiveStrategy.js","sourceRoot":"","sources":["../../../../src/chain/archiveStore/strategies/frequencyStateArchiveStrategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,9 @@ import { routes } from "@lodestar/api";
|
|
|
2
2
|
import { Epoch } from "@lodestar/types";
|
|
3
3
|
export type ProposerPreparationData = routes.validator.ProposerPreparationData;
|
|
4
4
|
export declare class BeaconProposerCache {
|
|
5
|
+
readonly opts: {
|
|
6
|
+
suggestedFeeRecipient: string;
|
|
7
|
+
};
|
|
5
8
|
private readonly feeRecipientByValidatorIndex;
|
|
6
9
|
constructor(opts: {
|
|
7
10
|
suggestedFeeRecipient: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"beaconProposerCache.d.ts","sourceRoot":"","sources":["../../src/chain/beaconProposerCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"beaconProposerCache.d.ts","sourceRoot":"","sources":["../../src/chain/beaconProposerCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAItC,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC;AAE/E,qBAAa,mBAAmB;IAElB,QAAQ,CAAC,IAAI,EAAE;QAAC,qBAAqB,EAAE,MAAM,CAAA;KAAC;IAD1D,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAoD;gBAC5E,IAAI,EAAE;QAAC,qBAAqB,EAAE,MAAM,CAAA;KAAC;IAI1D,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAC,cAAc,EAAE,YAAY,EAAC,EAAE,uBAAuB,GAAG,IAAI;IAIhF,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAUzB,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAI3C,GAAG,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI9C,mBAAmB,IAAI,MAAM,EAAE;CAGhC"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import { MapDef } from "@lodestar/utils";
|
|
2
1
|
const PROPOSER_PRESERVE_EPOCHS = 2;
|
|
3
2
|
export class BeaconProposerCache {
|
|
3
|
+
opts;
|
|
4
4
|
feeRecipientByValidatorIndex;
|
|
5
5
|
constructor(opts) {
|
|
6
|
-
this.
|
|
7
|
-
|
|
8
|
-
feeRecipient: opts.suggestedFeeRecipient,
|
|
9
|
-
}));
|
|
6
|
+
this.opts = opts;
|
|
7
|
+
this.feeRecipientByValidatorIndex = new Map();
|
|
10
8
|
}
|
|
11
9
|
add(epoch, { validatorIndex, feeRecipient }) {
|
|
12
10
|
this.feeRecipientByValidatorIndex.set(validatorIndex, { epoch, feeRecipient });
|
|
@@ -21,7 +19,7 @@ export class BeaconProposerCache {
|
|
|
21
19
|
}
|
|
22
20
|
}
|
|
23
21
|
getOrDefault(proposerIndex) {
|
|
24
|
-
return this.feeRecipientByValidatorIndex.
|
|
22
|
+
return this.feeRecipientByValidatorIndex.get(proposerIndex)?.feeRecipient ?? this.opts.suggestedFeeRecipient;
|
|
25
23
|
}
|
|
26
24
|
get(proposerIndex) {
|
|
27
25
|
return this.feeRecipientByValidatorIndex.get(proposerIndex)?.feeRecipient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"beaconProposerCache.js","sourceRoot":"","sources":["../../src/chain/beaconProposerCache.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"beaconProposerCache.js","sourceRoot":"","sources":["../../src/chain/beaconProposerCache.ts"],"names":[],"mappings":"AAGA,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAInC,MAAM,OAAO,mBAAmB;IAET;IADJ,4BAA4B,CAAoD;IACjG,YAAqB,IAAqC;QAArC,SAAI,GAAJ,IAAI,CAAiC;QACxD,IAAI,CAAC,4BAA4B,GAAG,IAAI,GAAG,EAAE,CAAC;IAChD,CAAC;IAED,GAAG,CAAC,KAAY,EAAE,EAAC,cAAc,EAAE,YAAY,EAA0B;QACvE,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,cAAc,EAAE,EAAC,KAAK,EAAE,YAAY,EAAC,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,KAAY;QAChB,2EAA2E;QAC3E,KAAK,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,IAAI,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9F,8DAA8D;YAC9D,IAAI,iBAAiB,CAAC,KAAK,GAAG,wBAAwB,GAAG,KAAK,EAAE,CAAC;gBAC/D,IAAI,CAAC,4BAA4B,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;IAED,YAAY,CAAC,aAAqB;QAChC,OAAO,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC;IAC/G,CAAC;IAED,GAAG,CAAC,aAAqB;QACvB,OAAO,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IAC5E,CAAC;IAED,mBAAmB;QACjB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,CAAC;CACF"}
|
|
@@ -7,6 +7,7 @@ export declare enum DataColumnSidecarErrorCode {
|
|
|
7
7
|
MISMATCHED_LENGTHS = "DATA_COLUMN_SIDECAR_ERROR_MISMATCHED_LENGTHS",
|
|
8
8
|
INVALID_SUBNET = "DATA_COLUMN_SIDECAR_ERROR_INVALID_SUBNET",
|
|
9
9
|
INVALID_KZG_PROOF = "DATA_COLUMN_SIDECAR_ERROR_INVALID_KZG_PROOF",
|
|
10
|
+
TOO_MANY_KZG_COMMITMENTS = "DATA_COLUMN_SIDECAR_ERROR_TOO_MANY_KZG_COMMITMENTS",
|
|
10
11
|
/** Block and sidecars data column count mismatch */
|
|
11
12
|
INCORRECT_SIDECAR_COUNT = "DATA_COLUMN_SIDECAR_ERROR_INCORRECT_SIDECAR_COUNT",
|
|
12
13
|
/** Sidecar doesn't match block */
|
|
@@ -43,6 +44,12 @@ export type DataColumnSidecarErrorType = {
|
|
|
43
44
|
code: DataColumnSidecarErrorCode.INVALID_SUBNET;
|
|
44
45
|
columnIdx: number;
|
|
45
46
|
gossipSubnet: SubnetID;
|
|
47
|
+
} | {
|
|
48
|
+
code: DataColumnSidecarErrorCode.TOO_MANY_KZG_COMMITMENTS;
|
|
49
|
+
slot: number;
|
|
50
|
+
columnIdx: number;
|
|
51
|
+
count: number;
|
|
52
|
+
limit: number;
|
|
46
53
|
} | {
|
|
47
54
|
code: DataColumnSidecarErrorCode.ALREADY_KNOWN;
|
|
48
55
|
columnIdx: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataColumnSidecarError.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/dataColumnSidecarError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,oBAAY,0BAA0B;IACpC,aAAa,4CAA4C;IACzD,cAAc,6CAA6C;IAC3D,kBAAkB,iDAAiD;IACnE,cAAc,6CAA6C;IAC3D,iBAAiB,gDAAgD;
|
|
1
|
+
{"version":3,"file":"dataColumnSidecarError.d.ts","sourceRoot":"","sources":["../../../src/chain/errors/dataColumnSidecarError.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export var DataColumnSidecarErrorCode;
|
|
|
7
7
|
DataColumnSidecarErrorCode["MISMATCHED_LENGTHS"] = "DATA_COLUMN_SIDECAR_ERROR_MISMATCHED_LENGTHS";
|
|
8
8
|
DataColumnSidecarErrorCode["INVALID_SUBNET"] = "DATA_COLUMN_SIDECAR_ERROR_INVALID_SUBNET";
|
|
9
9
|
DataColumnSidecarErrorCode["INVALID_KZG_PROOF"] = "DATA_COLUMN_SIDECAR_ERROR_INVALID_KZG_PROOF";
|
|
10
|
+
DataColumnSidecarErrorCode["TOO_MANY_KZG_COMMITMENTS"] = "DATA_COLUMN_SIDECAR_ERROR_TOO_MANY_KZG_COMMITMENTS";
|
|
10
11
|
// Validation errors when validating against an existing block
|
|
11
12
|
/** Block and sidecars data column count mismatch */
|
|
12
13
|
DataColumnSidecarErrorCode["INCORRECT_SIDECAR_COUNT"] = "DATA_COLUMN_SIDECAR_ERROR_INCORRECT_SIDECAR_COUNT";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataColumnSidecarError.js","sourceRoot":"","sources":["../../../src/chain/errors/dataColumnSidecarError.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"dataColumnSidecarError.js","sourceRoot":"","sources":["../../../src/chain/errors/dataColumnSidecarError.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAExD,MAAM,CAAN,IAAY,0BA8BX;AA9BD,WAAY,0BAA0B;IACpC,uFAAyD,CAAA;IACzD,yFAA2D,CAAA;IAC3D,iGAAmE,CAAA;IACnE,yFAA2D,CAAA;IAC3D,+FAAiE,CAAA;IACjE,6GAA+E,CAAA;IAE/E,8DAA8D;IAE9D,oDAAoD;IACpD,2GAA6E,CAAA;IAC7E,kCAAkC;IAClC,2FAA6D,CAAA;IAC7D,8CAA8C;IAC9C,2HAA6F,CAAA;IAC7F,8CAA8C;IAC9C,+GAAiF,CAAA;IACjF,gCAAgC;IAChC,2GAA6E,CAAA;IAE7E,qDAAqD;IACrD,uFAAyD,CAAA;IACzD,mFAAqD,CAAA;IACrD,mHAAqF,CAAA;IACrF,yFAA2D,CAAA;IAC3D,uGAAyE,CAAA;IACzE,iHAAmF,CAAA;IACnF,2GAA6E,CAAA;IAC7E,iGAAmE,CAAA;AACrE,CAAC,EA9BW,0BAA0B,KAA1B,0BAA0B,QA8BrC;AAoDD,MAAM,OAAO,4BAA6B,SAAQ,iBAA6C;CAAG;AAClG,MAAM,OAAO,gCAAiC,SAAQ,aAAyC;CAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataColumnSidecar.d.ts","sourceRoot":"","sources":["../../../src/chain/validation/dataColumnSidecar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"dataColumnSidecar.d.ts","sourceRoot":"","sources":["../../../src/chain/validation/dataColumnSidecar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAkB,MAAM,kBAAkB,CAAC;AAW9D,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAM,MAAM,iBAAiB,CAAC;AAEhE,OAAO,EAAC,OAAO,EAAC,MAAM,0BAA0B,CAAC;AAQjD,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAK7C,wBAAsB,+BAA+B,CACnD,KAAK,EAAE,YAAY,EACnB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,YAAY,EAAE,QAAQ,EACtB,OAAO,EAAE,OAAO,GAAG,IAAI,GACtB,OAAO,CAAC,IAAI,CAAC,CAyJf;AAiDD;;;GAGG;AACH,wBAAsB,gCAAgC,CACpD,WAAW,EAAE,UAAU,EAAE,EACzB,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,MAAM,EAAE,UAAU,EAAE,GACnB,OAAO,CAAC,IAAI,CAAC,CAWf;AAED;;;GAGG;AACH,wBAAgB,qCAAqC,CAAC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAQxG;AAED;;;;GAIG;AACH,wBAAsB,+BAA+B,CACnD,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,IAAI,EACf,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,GAC1C,OAAO,CAAC,IAAI,CAAC,CA2Gf;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,WAAW,EACnB,aAAa,EAAE,IAAI,CAAC,iBAAiB,GACpC,QAAQ,CAEV"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH, KZG_COMMITMENTS_SUBTREE_INDEX, NUMBER_OF_COLUMNS, } from "@lodestar/params";
|
|
2
|
-
import { computeStartSlotAtEpoch, getBlockHeaderProposerSignatureSet } from "@lodestar/state-transition";
|
|
2
|
+
import { computeEpochAtSlot, computeStartSlotAtEpoch, getBlockHeaderProposerSignatureSet, } from "@lodestar/state-transition";
|
|
3
3
|
import { ssz } from "@lodestar/types";
|
|
4
4
|
import { toRootHex, verifyMerkleBranch } from "@lodestar/utils";
|
|
5
5
|
import { kzg } from "../../util/kzg.js";
|
|
@@ -11,7 +11,7 @@ import { RegenCaller } from "../regen/interface.js";
|
|
|
11
11
|
export async function validateGossipDataColumnSidecar(chain, dataColumnSidecar, gossipSubnet, metrics) {
|
|
12
12
|
const blockHeader = dataColumnSidecar.signedBlockHeader.message;
|
|
13
13
|
// 1) [REJECT] The sidecar is valid as verified by verify_data_column_sidecar
|
|
14
|
-
verifyDataColumnSidecar(dataColumnSidecar);
|
|
14
|
+
verifyDataColumnSidecar(chain.config, dataColumnSidecar);
|
|
15
15
|
// 2) [REJECT] The sidecar is for the correct subnet -- i.e. compute_subnet_for_data_column_sidecar(sidecar.index) == subnet_id
|
|
16
16
|
if (computeSubnetForDataColumnSidecar(chain.config, dataColumnSidecar) !== gossipSubnet) {
|
|
17
17
|
throw new DataColumnSidecarGossipError(GossipAction.REJECT, {
|
|
@@ -146,7 +146,7 @@ export async function validateGossipDataColumnSidecar(chain, dataColumnSidecar,
|
|
|
146
146
|
* SPEC FUNCTION
|
|
147
147
|
* https://github.com/ethereum/consensus-specs/blob/v1.6.0-alpha.4/specs/fulu/p2p-interface.md#verify_data_column_sidecar
|
|
148
148
|
*/
|
|
149
|
-
function verifyDataColumnSidecar(dataColumnSidecar) {
|
|
149
|
+
function verifyDataColumnSidecar(config, dataColumnSidecar) {
|
|
150
150
|
if (dataColumnSidecar.index >= NUMBER_OF_COLUMNS) {
|
|
151
151
|
throw new DataColumnSidecarGossipError(GossipAction.REJECT, {
|
|
152
152
|
code: DataColumnSidecarErrorCode.INVALID_INDEX,
|
|
@@ -161,6 +161,17 @@ function verifyDataColumnSidecar(dataColumnSidecar) {
|
|
|
161
161
|
columnIdx: dataColumnSidecar.index,
|
|
162
162
|
});
|
|
163
163
|
}
|
|
164
|
+
const epoch = computeEpochAtSlot(dataColumnSidecar.signedBlockHeader.message.slot);
|
|
165
|
+
const maxBlobsPerBlock = config.getMaxBlobsPerBlock(epoch);
|
|
166
|
+
if (dataColumnSidecar.kzgCommitments.length > maxBlobsPerBlock) {
|
|
167
|
+
throw new DataColumnSidecarGossipError(GossipAction.REJECT, {
|
|
168
|
+
code: DataColumnSidecarErrorCode.TOO_MANY_KZG_COMMITMENTS,
|
|
169
|
+
slot: dataColumnSidecar.signedBlockHeader.message.slot,
|
|
170
|
+
columnIdx: dataColumnSidecar.index,
|
|
171
|
+
count: dataColumnSidecar.kzgCommitments.length,
|
|
172
|
+
limit: maxBlobsPerBlock,
|
|
173
|
+
});
|
|
174
|
+
}
|
|
164
175
|
if (dataColumnSidecar.column.length !== dataColumnSidecar.kzgCommitments.length ||
|
|
165
176
|
dataColumnSidecar.column.length !== dataColumnSidecar.kzgProofs.length) {
|
|
166
177
|
throw new DataColumnSidecarGossipError(GossipAction.REJECT, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataColumnSidecar.js","sourceRoot":"","sources":["../../../src/chain/validation/dataColumnSidecar.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qCAAqC,EACrC,6BAA6B,EAC7B,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,
|
|
1
|
+
{"version":3,"file":"dataColumnSidecar.js","sourceRoot":"","sources":["../../../src/chain/validation/dataColumnSidecar.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/** biome-ignore-all lint/suspicious/noTemplateCurlyInString: The metric templates requires to have `${}` in a normal string */
|
|
2
2
|
import { NotReorgedReason } from "@lodestar/fork-choice";
|
|
3
|
+
import { ArchiveStoreTask } from "../../chain/archiveStore/archiveStore.js";
|
|
4
|
+
import { FrequencyStateArchiveStep } from "../../chain/archiveStore/strategies/frequencyStateArchiveStrategy.js";
|
|
3
5
|
import { BlockInputSource } from "../../chain/blocks/blockInput/index.js";
|
|
4
6
|
import { JobQueueItemType } from "../../chain/bls/index.js";
|
|
5
7
|
import { AttestationErrorCode, BlockErrorCode } from "../../chain/errors/index.js";
|
|
@@ -567,6 +569,14 @@ export declare function createLodestarMetrics(register: RegistryMetricCreator, m
|
|
|
567
569
|
createdByBlob: import("@lodestar/utils").GaugeExtra<import("@lodestar/utils").NoLabels>;
|
|
568
570
|
};
|
|
569
571
|
};
|
|
572
|
+
processFinalizedCheckpoint: {
|
|
573
|
+
durationByTask: import("@lodestar/utils").Histogram<{
|
|
574
|
+
source: ArchiveStoreTask;
|
|
575
|
+
}>;
|
|
576
|
+
frequencyStateArchive: import("@lodestar/utils").Histogram<{
|
|
577
|
+
step: FrequencyStateArchiveStep;
|
|
578
|
+
}>;
|
|
579
|
+
};
|
|
570
580
|
regenFnCallTotal: import("@lodestar/utils").GaugeExtra<{
|
|
571
581
|
entrypoint: RegenFnName;
|
|
572
582
|
caller: RegenCaller;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lodestar.d.ts","sourceRoot":"","sources":["../../../src/metrics/metrics/lodestar.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"lodestar.d.ts","sourceRoot":"","sources":["../../../src/metrics/metrics/lodestar.ts"],"names":[],"mappings":"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"}
|
|
@@ -1350,6 +1350,20 @@ export function createLodestarMetrics(register, metadata, genesisTime) {
|
|
|
1350
1350
|
}),
|
|
1351
1351
|
},
|
|
1352
1352
|
},
|
|
1353
|
+
processFinalizedCheckpoint: {
|
|
1354
|
+
durationByTask: register.histogram({
|
|
1355
|
+
name: "lodestar_process_finalized_checkpoint_seconds",
|
|
1356
|
+
help: "Histogram of time to process finalized checkpoint",
|
|
1357
|
+
buckets: [0.1, 0.5, 1, 2, 4, 8],
|
|
1358
|
+
labelNames: ["source"],
|
|
1359
|
+
}),
|
|
1360
|
+
frequencyStateArchive: register.histogram({
|
|
1361
|
+
name: "lodestar_process_finalized_checkpoint_frequency_state_archive_seconds",
|
|
1362
|
+
help: "Histogram of FrequencyStateArchive duration by step",
|
|
1363
|
+
buckets: [0.1, 0.5, 1, 2, 4, 8],
|
|
1364
|
+
labelNames: ["step"],
|
|
1365
|
+
}),
|
|
1366
|
+
},
|
|
1353
1367
|
regenFnCallTotal: register.gauge({
|
|
1354
1368
|
name: "lodestar_regen_fn_call_total",
|
|
1355
1369
|
help: "Total number of calls for regen functions",
|