@lodestar/beacon-node 1.21.0-dev.2b627548d1 → 1.21.0-dev.2f86f4aafd

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/lib/api/impl/api.js +1 -1
  2. package/lib/api/impl/api.js.map +1 -1
  3. package/lib/api/impl/beacon/state/utils.d.ts +4 -4
  4. package/lib/api/impl/beacon/state/utils.js +20 -16
  5. package/lib/api/impl/beacon/state/utils.js.map +1 -1
  6. package/lib/api/impl/validator/index.d.ts +2 -1
  7. package/lib/api/impl/validator/index.js +6 -5
  8. package/lib/api/impl/validator/index.js.map +1 -1
  9. package/lib/api/options.d.ts +2 -0
  10. package/lib/api/options.js +1 -0
  11. package/lib/api/options.js.map +1 -1
  12. package/lib/chain/blocks/importBlock.js +53 -47
  13. package/lib/chain/blocks/importBlock.js.map +1 -1
  14. package/lib/chain/chain.d.ts +14 -1
  15. package/lib/chain/chain.js +54 -32
  16. package/lib/chain/chain.js.map +1 -1
  17. package/lib/chain/historicalState/getHistoricalState.d.ts +17 -0
  18. package/lib/chain/historicalState/getHistoricalState.js +73 -0
  19. package/lib/chain/historicalState/getHistoricalState.js.map +1 -0
  20. package/lib/chain/historicalState/index.d.ts +15 -0
  21. package/lib/chain/historicalState/index.js +50 -0
  22. package/lib/chain/historicalState/index.js.map +1 -0
  23. package/lib/chain/historicalState/types.d.ts +52 -0
  24. package/lib/chain/historicalState/types.js +7 -0
  25. package/lib/chain/historicalState/types.js.map +1 -0
  26. package/lib/chain/historicalState/worker.d.ts +2 -0
  27. package/lib/chain/historicalState/worker.js +198 -0
  28. package/lib/chain/historicalState/worker.js.map +1 -0
  29. package/lib/chain/interface.d.ts +11 -0
  30. package/lib/chain/regen/interface.d.ts +1 -1
  31. package/lib/chain/regen/queued.d.ts +1 -1
  32. package/lib/chain/regen/queued.js +23 -12
  33. package/lib/chain/regen/queued.js.map +1 -1
  34. package/lib/eth1/provider/eth1Provider.js +2 -2
  35. package/lib/eth1/provider/eth1Provider.js.map +1 -1
  36. package/lib/execution/builder/http.js +2 -2
  37. package/lib/execution/builder/http.js.map +1 -1
  38. package/lib/execution/engine/http.d.ts +14 -2
  39. package/lib/execution/engine/http.js +29 -2
  40. package/lib/execution/engine/http.js.map +1 -1
  41. package/lib/execution/engine/index.js +3 -3
  42. package/lib/execution/engine/index.js.map +1 -1
  43. package/lib/execution/engine/interface.d.ts +26 -0
  44. package/lib/execution/engine/interface.js +20 -0
  45. package/lib/execution/engine/interface.js.map +1 -1
  46. package/lib/execution/engine/mock.d.ts +1 -0
  47. package/lib/execution/engine/mock.js +5 -1
  48. package/lib/execution/engine/mock.js.map +1 -1
  49. package/lib/execution/engine/types.d.ts +15 -0
  50. package/lib/execution/engine/types.js.map +1 -1
  51. package/lib/metrics/server/http.d.ts +1 -1
  52. package/lib/metrics/server/http.js +3 -2
  53. package/lib/metrics/server/http.js.map +1 -1
  54. package/lib/network/libp2p/index.js +1 -2
  55. package/lib/network/libp2p/index.js.map +1 -1
  56. package/lib/network/peers/discover.d.ts +1 -1
  57. package/lib/network/peers/discover.js +11 -2
  58. package/lib/network/peers/discover.js.map +1 -1
  59. package/lib/node/nodejs.js +13 -1
  60. package/lib/node/nodejs.js.map +1 -1
  61. package/lib/sync/sync.js +6 -6
  62. package/lib/sync/sync.js.map +1 -1
  63. package/lib/util/graffiti.d.ts +4 -0
  64. package/lib/util/graffiti.js +12 -0
  65. package/lib/util/graffiti.js.map +1 -1
  66. package/lib/util/metadata.d.ts +6 -0
  67. package/lib/util/metadata.js +10 -0
  68. package/lib/util/metadata.js.map +1 -0
  69. package/package.json +18 -19
@@ -0,0 +1,198 @@
1
+ import worker from "node:worker_threads";
2
+ import { Transfer, expose } from "@chainsafe/threads/worker";
3
+ import { createBeaconConfig, chainConfigFromJson } from "@lodestar/config";
4
+ import { getNodeLogger } from "@lodestar/logger/node";
5
+ import { PubkeyIndexMap, } from "@lodestar/state-transition";
6
+ import { LevelDbController } from "@lodestar/db";
7
+ import { RegistryMetricCreator, collectNodeJSMetrics } from "../../metrics/index.js";
8
+ import { JobFnQueue } from "../../util/queue/fnQueue.js";
9
+ import { BeaconDb } from "../../db/index.js";
10
+ import { getHistoricalState } from "./getHistoricalState.js";
11
+ // most of this setup copied from networkCoreWorker.ts
12
+ const workerData = worker.workerData;
13
+ // TODO: Pass options from main thread for logging
14
+ // TODO: Logging won't be visible in file loggers
15
+ const logger = getNodeLogger(workerData.loggerOpts);
16
+ logger.info("Historical state worker started");
17
+ const config = createBeaconConfig(chainConfigFromJson(workerData.chainConfigJson), workerData.genesisValidatorsRoot);
18
+ const db = new BeaconDb(config, await LevelDbController.create({ name: workerData.dbLocation }, { logger }));
19
+ const abortController = new AbortController();
20
+ // Set up metrics, nodejs, state transition, queue
21
+ const metricsRegister = workerData.metricsEnabled ? new RegistryMetricCreator() : null;
22
+ let historicalStateRegenMetrics;
23
+ let queueMetrics;
24
+ if (metricsRegister) {
25
+ const closeMetrics = collectNodeJSMetrics(metricsRegister, "lodestar_historical_state_worker_");
26
+ abortController.signal.addEventListener("abort", closeMetrics, { once: true });
27
+ historicalStateRegenMetrics = {
28
+ // state transition metrics
29
+ epochTransitionTime: metricsRegister.histogram({
30
+ name: "lodestar_historical_state_stfn_epoch_transition_seconds",
31
+ help: "Time to process a single epoch transition in seconds",
32
+ // Epoch transitions are 100ms on very fast clients, and average 800ms on heavy networks
33
+ buckets: [0.01, 0.05, 0.1, 0.2, 0.5, 0.75, 1, 1.25, 1.5, 3, 10],
34
+ }),
35
+ epochTransitionCommitTime: metricsRegister.histogram({
36
+ name: "lodestar_historical_state_stfn_epoch_transition_commit_seconds",
37
+ help: "Time to call commit after process a single epoch transition in seconds",
38
+ buckets: [0.01, 0.05, 0.1, 0.2, 0.5, 0.75, 1],
39
+ }),
40
+ epochTransitionStepTime: metricsRegister.histogram({
41
+ name: "lodestar_historical_state_stfn_epoch_transition_step_seconds",
42
+ help: "Time to call each step of epoch transition in seconds",
43
+ labelNames: ["step"],
44
+ buckets: [0.01, 0.05, 0.1, 0.2, 0.5, 0.75, 1],
45
+ }),
46
+ processBlockTime: metricsRegister.histogram({
47
+ name: "lodestar_historical_state_stfn_process_block_seconds",
48
+ help: "Time to process a single block in seconds",
49
+ // TODO: Add metrics for each step
50
+ // Block processing can take 5-40ms, 100ms max
51
+ buckets: [0.005, 0.01, 0.02, 0.05, 0.1, 1],
52
+ }),
53
+ processBlockCommitTime: metricsRegister.histogram({
54
+ name: "lodestar_historical_state_stfn_process_block_commit_seconds",
55
+ help: "Time to call commit after process a single block in seconds",
56
+ buckets: [0.005, 0.01, 0.02, 0.05, 0.1, 1],
57
+ }),
58
+ stateHashTreeRootTime: metricsRegister.histogram({
59
+ name: "lodestar_historical_state_stfn_hash_tree_root_seconds",
60
+ help: "Time to compute the hash tree root of a post state in seconds",
61
+ buckets: [0.05, 0.1, 0.2, 0.5, 1, 1.5],
62
+ labelNames: ["source"],
63
+ }),
64
+ preStateBalancesNodesPopulatedMiss: metricsRegister.gauge({
65
+ name: "lodestar_historical_state_stfn_balances_nodes_populated_miss_total",
66
+ help: "Total count state.balances nodesPopulated is false on stfn",
67
+ labelNames: ["source"],
68
+ }),
69
+ preStateBalancesNodesPopulatedHit: metricsRegister.gauge({
70
+ name: "lodestar_historical_state_stfn_balances_nodes_populated_hit_total",
71
+ help: "Total count state.balances nodesPopulated is true on stfn",
72
+ labelNames: ["source"],
73
+ }),
74
+ preStateValidatorsNodesPopulatedMiss: metricsRegister.gauge({
75
+ name: "lodestar_historical_state_stfn_validators_nodes_populated_miss_total",
76
+ help: "Total count state.validators nodesPopulated is false on stfn",
77
+ labelNames: ["source"],
78
+ }),
79
+ preStateValidatorsNodesPopulatedHit: metricsRegister.gauge({
80
+ name: "lodestar_historical_state_stfn_validators_nodes_populated_hit_total",
81
+ help: "Total count state.validators nodesPopulated is true on stfn",
82
+ labelNames: ["source"],
83
+ }),
84
+ preStateClonedCount: metricsRegister.histogram({
85
+ name: "lodestar_historical_state_stfn_state_cloned_count",
86
+ help: "Histogram of cloned count per state every time state.clone() is called",
87
+ buckets: [1, 2, 5, 10, 50, 250],
88
+ }),
89
+ postStateBalancesNodesPopulatedHit: metricsRegister.gauge({
90
+ name: "lodestar_historical_state_stfn_post_state_balances_nodes_populated_hit_total",
91
+ help: "Total count state.validators nodesPopulated is true on stfn for post state",
92
+ }),
93
+ postStateBalancesNodesPopulatedMiss: metricsRegister.gauge({
94
+ name: "lodestar_historical_state_stfn_post_state_balances_nodes_populated_miss_total",
95
+ help: "Total count state.validators nodesPopulated is false on stfn for post state",
96
+ }),
97
+ postStateValidatorsNodesPopulatedHit: metricsRegister.gauge({
98
+ name: "lodestar_historical_state_stfn_post_state_validators_nodes_populated_hit_total",
99
+ help: "Total count state.validators nodesPopulated is true on stfn for post state",
100
+ }),
101
+ postStateValidatorsNodesPopulatedMiss: metricsRegister.gauge({
102
+ name: "lodestar_historical_state_stfn_post_state_validators_nodes_populated_miss_total",
103
+ help: "Total count state.validators nodesPopulated is false on stfn for post state",
104
+ }),
105
+ registerValidatorStatuses: () => { },
106
+ // historical state regen metrics
107
+ regenTime: metricsRegister.histogram({
108
+ name: "lodestar_historical_state_regen_time_seconds",
109
+ help: "Time to regenerate a historical state in seconds",
110
+ // Historical state regen can take up to 3h as of Aug 2024
111
+ // 5m, 10m, 30m, 1h, 3h
112
+ buckets: [5 * 60, 10 * 60, 30 * 60, 60 * 60, 180 * 60],
113
+ }),
114
+ loadStateTime: metricsRegister.histogram({
115
+ name: "lodestar_historical_state_load_nearest_state_time_seconds",
116
+ help: "Time to load a nearest historical state from the database in seconds",
117
+ // 30s, 1m, 2m, 4m
118
+ buckets: [30, 60, 120, 240],
119
+ }),
120
+ stateTransitionTime: metricsRegister.histogram({
121
+ name: "lodestar_historical_state_state_transition_time_seconds",
122
+ help: "Time to run state transition to regen historical state in seconds",
123
+ // 5m, 10m, 30m, 1h, 3h
124
+ buckets: [5 * 60, 10 * 60, 30 * 60, 60 * 60, 180 * 60],
125
+ }),
126
+ stateTransitionBlocks: metricsRegister.histogram({
127
+ name: "lodestar_historical_state_state_transition_blocks",
128
+ help: "Count of blocks processed during state transition to regen historical state",
129
+ // given archiveStateEpochFrequency=1024, it could process up to 32768 blocks
130
+ buckets: [10, 100, 1000, 10000, 30000],
131
+ }),
132
+ stateSerializationTime: metricsRegister.histogram({
133
+ name: "lodestar_historical_state_serialization_time_seconds",
134
+ help: "Time to serialize a historical state in seconds",
135
+ buckets: [0.25, 0.5, 1, 2],
136
+ }),
137
+ regenRequestCount: metricsRegister.gauge({
138
+ name: "lodestar_historical_state_request_count",
139
+ help: "Count of total historical state requests",
140
+ }),
141
+ regenSuccessCount: metricsRegister.gauge({
142
+ name: "lodestar_historical_state_success_count",
143
+ help: "Count of successful historical state regen",
144
+ }),
145
+ regenErrorCount: metricsRegister.gauge({
146
+ name: "lodestar_historical_state_error_count",
147
+ help: "Count of failed historical state regen",
148
+ labelNames: ["reason"],
149
+ }),
150
+ };
151
+ queueMetrics = {
152
+ length: metricsRegister.gauge({
153
+ name: "lodestar_historical_state_queue_length",
154
+ help: "Count of total regen queue length",
155
+ }),
156
+ droppedJobs: metricsRegister.gauge({
157
+ name: "lodestar_historical_state_queue_dropped_jobs_total",
158
+ help: "Count of total regen queue dropped jobs",
159
+ }),
160
+ jobTime: metricsRegister.histogram({
161
+ name: "lodestar_historical_state_queue_job_time_seconds",
162
+ help: "Time to process regen queue job in seconds",
163
+ buckets: [0.01, 0.1, 1, 10, 100],
164
+ }),
165
+ jobWaitTime: metricsRegister.histogram({
166
+ name: "lodestar_historical_state_queue_job_wait_time_seconds",
167
+ help: "Time from job added to the regen queue to starting in seconds",
168
+ buckets: [0.01, 0.1, 1, 10, 100],
169
+ }),
170
+ concurrency: metricsRegister.gauge({
171
+ name: "lodestar_historical_state_queue_concurrency",
172
+ help: "Current concurrency of regen queue",
173
+ }),
174
+ };
175
+ }
176
+ const queue = new JobFnQueue({
177
+ maxConcurrency: workerData.maxConcurrency,
178
+ maxLength: workerData.maxLength,
179
+ signal: abortController.signal,
180
+ }, queueMetrics);
181
+ const pubkey2index = new PubkeyIndexMap();
182
+ const api = {
183
+ async close() {
184
+ abortController.abort();
185
+ },
186
+ async scrapeMetrics() {
187
+ return metricsRegister?.metrics() ?? "";
188
+ },
189
+ async getHistoricalState(slot) {
190
+ historicalStateRegenMetrics?.regenRequestCount.inc();
191
+ const stateBytes = await queue.push(() => getHistoricalState(slot, config, db, pubkey2index, historicalStateRegenMetrics));
192
+ const result = Transfer(stateBytes, [stateBytes.buffer]);
193
+ historicalStateRegenMetrics?.regenSuccessCount.inc();
194
+ return result;
195
+ },
196
+ };
197
+ expose(api);
198
+ //# sourceMappingURL=worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/chain/historicalState/worker.ts"],"names":[],"mappings":"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"}
@@ -97,6 +97,11 @@ export interface IBeaconChain {
97
97
  getHeadState(): CachedBeaconStateAllForks;
98
98
  getHeadStateAtCurrentEpoch(regenCaller: RegenCaller): Promise<CachedBeaconStateAllForks>;
99
99
  getHeadStateAtEpoch(epoch: Epoch, regenCaller: RegenCaller): Promise<CachedBeaconStateAllForks>;
100
+ getHistoricalStateBySlot(slot: Slot): Promise<{
101
+ state: Uint8Array;
102
+ executionOptimistic: boolean;
103
+ finalized: boolean;
104
+ } | null>;
100
105
  /** Returns a local state canonical at `slot` */
101
106
  getStateBySlot(slot: Slot, opts?: StateGetOpts): Promise<{
102
107
  state: BeaconStateAllForks;
@@ -115,6 +120,12 @@ export interface IBeaconChain {
115
120
  executionOptimistic: boolean;
116
121
  finalized: boolean;
117
122
  } | null;
123
+ /** Return state bytes by checkpoint */
124
+ getStateOrBytesByCheckpoint(checkpoint: CheckpointWithHex): Promise<{
125
+ state: CachedBeaconStateAllForks | Uint8Array;
126
+ executionOptimistic: boolean;
127
+ finalized: boolean;
128
+ } | null>;
118
129
  /**
119
130
  * Since we can have multiple parallel chains,
120
131
  * this methods returns blocks in current chain head according to
@@ -40,7 +40,7 @@ export interface IStateRegenerator extends IStateRegeneratorInternal {
40
40
  pruneOnFinalized(finalizedEpoch: Epoch): void;
41
41
  processState(blockRootHex: RootHex, postState: CachedBeaconStateAllForks): void;
42
42
  addCheckpointState(cp: phase0.Checkpoint, item: CachedBeaconStateAllForks): void;
43
- updateHeadState(newHeadStateRoot: RootHex, maybeHeadState: CachedBeaconStateAllForks): void;
43
+ updateHeadState(newHead: ProtoBlock, maybeHeadState: CachedBeaconStateAllForks): void;
44
44
  updatePreComputedCheckpoint(rootHex: RootHex, epoch: Epoch): number | null;
45
45
  }
46
46
  /**
@@ -59,7 +59,7 @@ export declare class QueuedStateRegenerator implements IStateRegenerator {
59
59
  pruneOnFinalized(finalizedEpoch: number): void;
60
60
  processState(blockRootHex: RootHex, postState: CachedBeaconStateAllForks): void;
61
61
  addCheckpointState(cp: phase0.Checkpoint, item: CachedBeaconStateAllForks): void;
62
- updateHeadState(newHeadStateRoot: RootHex, maybeHeadState: CachedBeaconStateAllForks): void;
62
+ updateHeadState(newHead: ProtoBlock, maybeHeadState: CachedBeaconStateAllForks): void;
63
63
  updatePreComputedCheckpoint(rootHex: RootHex, epoch: Epoch): number | null;
64
64
  /**
65
65
  * Get the state to run with `block`.
@@ -141,25 +141,36 @@ export class QueuedStateRegenerator {
141
141
  addCheckpointState(cp, item) {
142
142
  this.checkpointStateCache.add(cp, item);
143
143
  }
144
- updateHeadState(newHeadStateRoot, maybeHeadState) {
145
- // the resulting state will be added to block state cache so we transfer the cache in this flow
146
- const cloneOpts = { dontTransferCache: true };
147
- const headState = newHeadStateRoot === toHexString(maybeHeadState.hashTreeRoot())
144
+ updateHeadState(newHead, maybeHeadState) {
145
+ const { stateRoot: newHeadStateRoot, blockRoot: newHeadBlockRoot, slot: newHeadSlot } = newHead;
146
+ const maybeHeadStateRoot = toHexString(maybeHeadState.hashTreeRoot());
147
+ const logCtx = {
148
+ newHeadSlot,
149
+ newHeadBlockRoot,
150
+ newHeadStateRoot,
151
+ maybeHeadSlot: maybeHeadState.slot,
152
+ maybeHeadStateRoot,
153
+ };
154
+ const headState = newHeadStateRoot === maybeHeadStateRoot
148
155
  ? maybeHeadState
149
- : this.blockStateCache.get(newHeadStateRoot, cloneOpts);
156
+ : // maybeHeadState was already in block state cache so we don't transfer the cache
157
+ this.blockStateCache.get(newHeadStateRoot, { dontTransferCache: true });
150
158
  if (headState) {
151
159
  this.blockStateCache.setHeadState(headState);
152
160
  }
153
161
  else {
154
162
  // Trigger regen on head change if necessary
155
- this.logger.warn("Head state not available, triggering regen", { stateRoot: newHeadStateRoot });
156
- // it's important to reload state to regen head state here
157
- const allowDiskReload = true;
158
- // head has changed, so the existing cached head state is no longer useful. Set strong reference to null to free
159
- // up memory for regen step below. During regen, node won't be functional but eventually head will be available
160
- // for legacy StateContextCache only
163
+ this.logger.warn("Head state not available, triggering regen", logCtx);
164
+ // for the old BlockStateCacheImpl only
165
+ // - head has changed, so the existing cached head state is no longer useful. Set strong reference to null to free
166
+ // up memory for regen step below. During regen, node won't be functional but eventually head will be available
167
+ // for the new FIFOBlockStateCache, this has no affect
161
168
  this.blockStateCache.setHeadState(null);
162
- this.regen.getState(newHeadStateRoot, RegenCaller.processBlock, cloneOpts, allowDiskReload).then((headStateRegen) => this.blockStateCache.setHeadState(headStateRegen), (e) => this.logger.error("Error on head state regen", {}, e));
169
+ // for the new FIFOBlockStateCache, it's important to reload state to regen head state here if needed
170
+ const allowDiskReload = true;
171
+ // transfer cache here because we want to regen state asap
172
+ const cloneOpts = { dontTransferCache: false };
173
+ this.regen.getState(newHeadStateRoot, RegenCaller.processBlock, cloneOpts, allowDiskReload).then((headStateRegen) => this.blockStateCache.setHeadState(headStateRegen), (e) => this.logger.error("Error on head state regen", logCtx, e));
163
174
  }
164
175
  }
165
176
  updatePreComputedCheckpoint(rootHex, epoch) {
@@ -1 +1 @@
1
- {"version":3,"file":"queued.js","sourceRoot":"","sources":["../../../src/chain/regen/queued.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queued.js","sourceRoot":"","sources":["../../../src/chain/regen/queued.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { toHexString } from "@chainsafe/ssz";
2
- import { fromHex, isErrorAborted, createElapsedTimeTracker, toSafePrintableUrl } from "@lodestar/utils";
2
+ import { fromHex, isErrorAborted, createElapsedTimeTracker, toPrintableUrl } from "@lodestar/utils";
3
3
  import { isFetchError } from "@lodestar/api";
4
4
  import { linspace } from "../../util/numpy.js";
5
5
  import { depositEventTopics, parseDepositLog } from "../utils/depositContract.js";
@@ -33,7 +33,7 @@ export class Eth1Provider {
33
33
  jwtVersion: opts.jwtVersion,
34
34
  metrics: metrics,
35
35
  });
36
- this.logger?.info("Eth1 provider", { urls: providerUrls.map(toSafePrintableUrl).toString() });
36
+ this.logger?.info("Eth1 provider", { urls: providerUrls.map(toPrintableUrl).toString() });
37
37
  this.rpc.emitter.on(JsonRpcHttpClientEvent.RESPONSE, () => {
38
38
  const oldState = this.state;
39
39
  this.state = Eth1ProviderState.ONLINE;
@@ -1 +1 @@
1
- {"version":3,"file":"eth1Provider.js","sourceRoot":"","sources":["../../../src/eth1/provider/eth1Provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eth1Provider.js","sourceRoot":"","sources":["../../../src/eth1/provider/eth1Provider.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { parseExecutionPayloadAndBlobsBundle, reconstructFullBlockOrContents } from "@lodestar/state-transition";
2
2
  import { getClient } from "@lodestar/api/builder";
3
3
  import { SLOTS_PER_EPOCH } from "@lodestar/params";
4
- import { toSafePrintableUrl } from "@lodestar/utils";
4
+ import { toPrintableUrl } from "@lodestar/utils";
5
5
  export const defaultExecutionBuilderHttpOpts = {
6
6
  enabled: false,
7
7
  url: "http://localhost:8661",
@@ -21,7 +21,7 @@ export class ExecutionBuilderHttp {
21
21
  headers: opts.userAgent ? { "User-Agent": opts.userAgent } : undefined,
22
22
  },
23
23
  }, { config, metrics: metrics?.builderHttpClient });
24
- logger?.info("External builder", { url: toSafePrintableUrl(baseUrl) });
24
+ logger?.info("External builder", { url: toPrintableUrl(baseUrl) });
25
25
  this.config = config;
26
26
  this.issueLocalFcUWithFeeRecipient = opts.issueLocalFcUWithFeeRecipient;
27
27
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/execution/builder/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/execution/builder/http.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { ForkName } from "@lodestar/params";
3
3
  import { Logger } from "@lodestar/logger";
4
4
  import { IJsonRpcHttpClient } from "../../eth1/provider/jsonRpcHttpClient.js";
5
5
  import { Metrics } from "../../metrics/index.js";
6
- import { ExecutePayloadResponse, IExecutionEngine, PayloadId, PayloadAttributes, BlobsBundle, VersionedHashes, ExecutionEngineState } from "./interface.js";
6
+ import { ExecutePayloadResponse, IExecutionEngine, PayloadId, PayloadAttributes, BlobsBundle, VersionedHashes, ExecutionEngineState, ClientVersion } from "./interface.js";
7
7
  import { PayloadIdCache } from "./payloadIdCache.js";
8
8
  import { ExecutionPayloadBody } from "./types.js";
9
9
  export type ExecutionEngineModules = {
@@ -31,6 +31,14 @@ export type ExecutionEngineHttpOpts = {
31
31
  * A version string that will be set in `clv` field of jwt claims
32
32
  */
33
33
  jwtVersion?: string;
34
+ /**
35
+ * Lodestar version to be used for `ClientVersion`
36
+ */
37
+ version?: string;
38
+ /**
39
+ * Lodestar commit to be used for `ClientVersion`
40
+ */
41
+ commit?: string;
34
42
  };
35
43
  export declare const defaultExecutionEngineHttpOpts: ExecutionEngineHttpOpts;
36
44
  /**
@@ -44,8 +52,11 @@ export declare const defaultExecutionEngineHttpOpts: ExecutionEngineHttpOpts;
44
52
  */
45
53
  export declare class ExecutionEngineHttp implements IExecutionEngine {
46
54
  private readonly rpc;
55
+ private readonly opts?;
47
56
  private logger;
48
57
  state: ExecutionEngineState;
58
+ /** Cached EL client version from the latest getClientVersion call */
59
+ clientVersion?: ClientVersion | null;
49
60
  readonly payloadIdCache: PayloadIdCache;
50
61
  /**
51
62
  * A queue to serialize the fcUs and newPayloads calls:
@@ -58,7 +69,7 @@ export declare class ExecutionEngineHttp implements IExecutionEngine {
58
69
  */
59
70
  private readonly rpcFetchQueue;
60
71
  private jobQueueProcessor;
61
- constructor(rpc: IJsonRpcHttpClient, { metrics, signal, logger }: ExecutionEngineModules);
72
+ constructor(rpc: IJsonRpcHttpClient, { metrics, signal, logger }: ExecutionEngineModules, opts?: ExecutionEngineHttpOpts | undefined);
62
73
  /**
63
74
  * `engine_newPayloadV1`
64
75
  * From: https://github.com/ethereum/execution-apis/blob/v1.0.0-alpha.6/src/engine/specification.md#engine_newpayloadv1
@@ -132,6 +143,7 @@ export declare class ExecutionEngineHttp implements IExecutionEngine {
132
143
  prunePayloadIdCache(): Promise<void>;
133
144
  getPayloadBodiesByHash(blockHashes: RootHex[]): Promise<(ExecutionPayloadBody | null)[]>;
134
145
  getPayloadBodiesByRange(startBlockNumber: number, blockCount: number): Promise<(ExecutionPayloadBody | null)[]>;
146
+ private getClientVersion;
135
147
  private updateEngineState;
136
148
  }
137
149
  //# sourceMappingURL=http.d.ts.map
@@ -3,7 +3,8 @@ import { ErrorJsonRpcResponse, HttpRpcError, JsonRpcHttpClientEvent, } from "../
3
3
  import { JobItemQueue } from "../../util/queue/index.js";
4
4
  import { EPOCHS_PER_BATCH } from "../../sync/constants.js";
5
5
  import { numToQuantity } from "../../eth1/provider/utils.js";
6
- import { ExecutionPayloadStatus, ExecutionEngineState, } from "./interface.js";
6
+ import { getLodestarClientVersion } from "../../util/metadata.js";
7
+ import { ExecutionPayloadStatus, ExecutionEngineState, ClientCode, } from "./interface.js";
7
8
  import { PayloadIdCache } from "./payloadIdCache.js";
8
9
  import { parseExecutionPayload, serializeExecutionPayload, serializeVersionedHashes, serializePayloadAttributes, serializeBeaconBlockRoot, assertReqSizeLimit, deserializeExecutionPayloadBody, } from "./types.js";
9
10
  import { getExecutionEngineState } from "./utils.js";
@@ -37,8 +38,9 @@ const getPayloadOpts = { routeId: "getPayload" };
37
38
  * https://github.com/ethereum/execution-apis/blob/v1.0.0-alpha.1/src/engine/interop/specification.md
38
39
  */
39
40
  export class ExecutionEngineHttp {
40
- constructor(rpc, { metrics, signal, logger }) {
41
+ constructor(rpc, { metrics, signal, logger }, opts) {
41
42
  this.rpc = rpc;
43
+ this.opts = opts;
42
44
  // The default state is ONLINE, it will be updated to SYNCING once we receive the first payload
43
45
  // This assumption is better than the OFFLINE state, since we can't be sure if the EL is offline and being offline may trigger some notifications
44
46
  // It's safer to to avoid false positives and assume that the EL is syncing until we receive the first payload
@@ -53,6 +55,13 @@ export class ExecutionEngineHttp {
53
55
  this.updateEngineState(getExecutionEngineState({ payloadError: error, oldState: this.state }));
54
56
  });
55
57
  this.rpc.emitter.on(JsonRpcHttpClientEvent.RESPONSE, () => {
58
+ if (this.clientVersion === undefined) {
59
+ this.clientVersion = null;
60
+ // This statement should only be called first time receiving response after startup
61
+ this.getClientVersion(getLodestarClientVersion(this.opts)).catch((e) => {
62
+ this.logger.debug("Unable to get execution client version", {}, e);
63
+ });
64
+ }
56
65
  this.updateEngineState(getExecutionEngineState({ targetState: ExecutionEngineState.ONLINE, oldState: this.state }));
57
66
  });
58
67
  }
@@ -259,6 +268,20 @@ export class ExecutionEngineHttp {
259
268
  const response = await this.rpc.fetchWithRetries({ method, params: [start, count] });
260
269
  return response.map(deserializeExecutionPayloadBody);
261
270
  }
271
+ async getClientVersion(clientVersion) {
272
+ const method = "engine_getClientVersionV1";
273
+ const response = await this.rpc.fetchWithRetries({ method, params: [clientVersion] });
274
+ const clientVersions = response.map((cv) => {
275
+ const code = cv.code in ClientCode ? ClientCode[cv.code] : ClientCode.XX;
276
+ return { code, name: cv.name, version: cv.version, commit: cv.commit };
277
+ });
278
+ if (clientVersions.length === 0) {
279
+ throw Error("Received empty client versions array");
280
+ }
281
+ this.clientVersion = clientVersions[0];
282
+ this.logger.debug("Execution client version updated", this.clientVersion);
283
+ return clientVersions;
284
+ }
262
285
  updateEngineState(newState) {
263
286
  const oldState = this.state;
264
287
  if (oldState === newState)
@@ -266,6 +289,10 @@ export class ExecutionEngineHttp {
266
289
  switch (newState) {
267
290
  case ExecutionEngineState.ONLINE:
268
291
  this.logger.info("Execution client became online", { oldState, newState });
292
+ this.getClientVersion(getLodestarClientVersion(this.opts)).catch((e) => {
293
+ this.logger.debug("Unable to get execution client version", {}, e);
294
+ this.clientVersion = null;
295
+ });
269
296
  break;
270
297
  case ExecutionEngineState.OFFLINE:
271
298
  this.logger.error("Execution client went offline", { oldState, newState });
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/execution/engine/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/execution/engine/http.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { fromHex, toSafePrintableUrl } from "@lodestar/utils";
1
+ import { fromHex, toPrintableUrl } from "@lodestar/utils";
2
2
  import { JsonRpcHttpClient } from "../../eth1/provider/jsonRpcHttpClient.js";
3
3
  import { ExecutionEngineDisabled } from "./disabled.js";
4
4
  import { ExecutionEngineHttp, defaultExecutionEngineHttpOpts, } from "./http.js";
@@ -19,8 +19,8 @@ export function getExecutionEngineHttp(opts, modules) {
19
19
  jwtId: opts.jwtId,
20
20
  jwtVersion: opts.jwtVersion,
21
21
  });
22
- modules.logger.info("Execution client", { urls: opts.urls.map(toSafePrintableUrl).toString() });
23
- return new ExecutionEngineHttp(rpc, modules);
22
+ modules.logger.info("Execution client", { urls: opts.urls.map(toPrintableUrl).toString() });
23
+ return new ExecutionEngineHttp(rpc, modules, opts);
24
24
  }
25
25
  export function initializeExecutionEngine(opts, modules) {
26
26
  switch (opts.mode) {