@lodestar/beacon-node 1.49.0-dev.a18e2b6354 → 1.49.0-dev.ae6cc426f1
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/metrics/metrics/lodestar.d.ts +15 -4
- package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
- package/lib/metrics/metrics/lodestar.js +28 -1
- package/lib/metrics/metrics/lodestar.js.map +1 -1
- package/lib/network/gossip/encoding.d.ts +1 -2
- package/lib/network/gossip/encoding.d.ts.map +1 -1
- package/lib/network/gossip/encoding.js +5 -10
- package/lib/network/gossip/encoding.js.map +1 -1
- package/lib/network/gossip/gossipsub.js +1 -1
- package/lib/network/gossip/gossipsub.js.map +1 -1
- package/lib/network/gossip/topic.d.ts +9 -6
- package/lib/network/gossip/topic.d.ts.map +1 -1
- package/lib/network/gossip/topic.js +23 -8
- package/lib/network/gossip/topic.js.map +1 -1
- package/lib/network/reqresp/protocols.d.ts.map +1 -1
- package/lib/network/reqresp/protocols.js +19 -5
- package/lib/network/reqresp/protocols.js.map +1 -1
- package/lib/sync/types.d.ts +18 -0
- package/lib/sync/types.d.ts.map +1 -1
- package/lib/sync/types.js +20 -0
- package/lib/sync/types.js.map +1 -1
- package/lib/sync/unknownBlock.d.ts.map +1 -1
- package/lib/sync/unknownBlock.js +33 -12
- package/lib/sync/unknownBlock.js.map +1 -1
- package/lib/util/sszBytes.d.ts +5 -0
- package/lib/util/sszBytes.d.ts.map +1 -1
- package/lib/util/sszBytes.js +13 -1
- package/lib/util/sszBytes.js.map +1 -1
- package/package.json +14 -14
- package/src/metrics/metrics/lodestar.ts +30 -3
- package/src/network/gossip/encoding.ts +5 -8
- package/src/network/gossip/gossipsub.ts +1 -1
- package/src/network/gossip/topic.ts +25 -7
- package/src/network/reqresp/protocols.ts +31 -6
- package/src/sync/types.ts +20 -0
- package/src/sync/unknownBlock.ts +47 -12
- package/src/util/sszBytes.ts +18 -0
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
import { type CompositeTypeAny } from "@chainsafe/ssz";
|
|
2
|
-
import { ForkDigestContext } from "@lodestar/config";
|
|
2
|
+
import { BeaconConfig, ChainForkConfig, ForkDigestContext } from "@lodestar/config";
|
|
3
3
|
import { ForkName } from "@lodestar/params";
|
|
4
|
+
import { TypeSizes } from "@lodestar/reqresp";
|
|
4
5
|
import { Attestation, SingleAttestation } from "@lodestar/types";
|
|
5
6
|
import { NetworkConfig } from "../networkConfig.js";
|
|
6
7
|
import { GossipTopic, GossipTopicTypeMap, GossipType, SSZTypeOfGossipTopic } from "./interface.js";
|
|
7
8
|
export interface IGossipTopicCache {
|
|
8
9
|
getTopic(topicStr: string): GossipTopic;
|
|
10
|
+
getTypeSizes(topicStr: string): TypeSizes;
|
|
9
11
|
}
|
|
10
12
|
export declare class GossipTopicCache implements IGossipTopicCache {
|
|
11
|
-
private readonly
|
|
13
|
+
private readonly config;
|
|
12
14
|
private topicsByTopicStr;
|
|
13
|
-
|
|
15
|
+
private typeSizesByTopicStr;
|
|
16
|
+
constructor(config: BeaconConfig);
|
|
14
17
|
/** Returns cached GossipTopic, otherwise attempts to parse it from the str */
|
|
15
18
|
getTopic(topicStr: string): GossipTopic;
|
|
19
|
+
getTypeSizes(topicStr: string): TypeSizes;
|
|
16
20
|
/** Returns cached GossipTopic, otherwise returns undefined */
|
|
17
21
|
getKnownTopic(topicStr: string): GossipTopic | undefined;
|
|
18
22
|
setTopic(topicStr: string, topic: GossipTopic): void;
|
|
@@ -5229,10 +5233,9 @@ export declare function getGossipSSZType(topic: GossipTopic): import("@chainsafe
|
|
|
5229
5233
|
signature: import("@chainsafe/ssz").ByteVectorType;
|
|
5230
5234
|
}>>;
|
|
5231
5235
|
/**
|
|
5232
|
-
* Return the maximum uncompressed SSZ byte length
|
|
5233
|
-
* or MAX_PAYLOAD_SIZE, whichever is smaller.
|
|
5236
|
+
* Return the maximum uncompressed SSZ byte length allowed by the type and configured network bounds.
|
|
5234
5237
|
*/
|
|
5235
|
-
export declare function getGossipSSZMaxSize(topic: GossipTopic,
|
|
5238
|
+
export declare function getGossipSSZMaxSize(topic: GossipTopic, config: ChainForkConfig, sszType?: CompositeTypeAny): number;
|
|
5236
5239
|
/**
|
|
5237
5240
|
* Deserialize a gossip serialized data into an ssz object.
|
|
5238
5241
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topic.d.ts","sourceRoot":"","sources":["../../../src/network/gossip/topic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAC,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"topic.d.ts","sourceRoot":"","sources":["../../../src/network/gossip/topic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAC,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAEL,QAAQ,EAOT,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAC,WAAW,EAAE,iBAAiB,EAAmB,MAAM,iBAAiB,CAAC;AAGjF,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAiB,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,oBAAoB,EAAC,MAAM,gBAAgB,CAAC;AAEjH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC;IACxC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C;AAED,qBAAa,gBAAiB,YAAW,iBAAiB;IAI5C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,OAAO,CAAC,gBAAgB,CAA4C;IACpE,OAAO,CAAC,mBAAmB,CAAgC;IAE3D,YAA6B,MAAM,EAAE,YAAY,EAAI;IAErD,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAQtC;IAED,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CASxC;IAED,8DAA8D;IAC9D,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEvD;IAED,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAInD;CACF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,CAKrG;AA+BD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2ClD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAMnH;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,cAAc,EAAE,UAAU,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAOnH;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,GAAG,WAAW,CAMjG;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,GAAG,iBAAiB,CAS7G;AAMD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,CA0D9G;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE;IAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAAC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAC,GAC7G,kBAAkB,CAAC,MAAM,kBAAkB,CAAC,EAAE,CA4DhD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC,CAgB1E;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,aAAa,EAC5B,yBAAyB,UAAQ,GAChC,kBAAkB,CAAC,MAAM,kBAAkB,CAAC,EAAE,CAWhD;AAgBD,eAAO,MAAM,sCAAsC,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,CAkB9E,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kCAAkC,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,CAwB1E,CAAC"}
|
|
@@ -1,24 +1,36 @@
|
|
|
1
1
|
import { ATTESTATION_SUBNET_COUNT, ForkSeq, SYNC_COMMITTEE_SUBNET_COUNT, isForkPostAltair, isForkPostElectra, isForkPostFulu, isForkPostGloas, } from "@lodestar/params";
|
|
2
2
|
import { ssz, sszTypesFor } from "@lodestar/types";
|
|
3
3
|
import { GossipAction, GossipActionError, GossipErrorCode } from "../../chain/errors/gossipValidation.js";
|
|
4
|
+
import { computeMaxGloasDataColumnSidecarSize } from "../../util/sszBytes.js";
|
|
4
5
|
import { DEFAULT_ENCODING } from "./constants.js";
|
|
5
6
|
import { GossipEncoding, GossipType } from "./interface.js";
|
|
6
7
|
export class GossipTopicCache {
|
|
7
|
-
|
|
8
|
+
config;
|
|
8
9
|
topicsByTopicStr = new Map();
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
typeSizesByTopicStr = new Map();
|
|
11
|
+
constructor(config) {
|
|
12
|
+
this.config = config;
|
|
11
13
|
}
|
|
12
14
|
/** Returns cached GossipTopic, otherwise attempts to parse it from the str */
|
|
13
15
|
getTopic(topicStr) {
|
|
14
16
|
let topic = this.topicsByTopicStr.get(topicStr);
|
|
15
17
|
if (topic === undefined) {
|
|
16
|
-
topic = parseGossipTopic(this.
|
|
18
|
+
topic = parseGossipTopic(this.config, topicStr);
|
|
17
19
|
// TODO: Consider just throwing here. We should only receive messages from known subscribed topics
|
|
18
20
|
this.topicsByTopicStr.set(topicStr, topic);
|
|
19
21
|
}
|
|
20
22
|
return topic;
|
|
21
23
|
}
|
|
24
|
+
getTypeSizes(topicStr) {
|
|
25
|
+
let typeSizes = this.typeSizesByTopicStr.get(topicStr);
|
|
26
|
+
if (typeSizes === undefined) {
|
|
27
|
+
const topic = this.getTopic(topicStr);
|
|
28
|
+
const sszType = getGossipSSZType(topic);
|
|
29
|
+
typeSizes = { minSize: sszType.minSize, maxSize: getGossipSSZMaxSize(topic, this.config, sszType) };
|
|
30
|
+
this.typeSizesByTopicStr.set(topicStr, typeSizes);
|
|
31
|
+
}
|
|
32
|
+
return typeSizes;
|
|
33
|
+
}
|
|
22
34
|
/** Returns cached GossipTopic, otherwise returns undefined */
|
|
23
35
|
getKnownTopic(topicStr) {
|
|
24
36
|
return this.topicsByTopicStr.get(topicStr);
|
|
@@ -111,11 +123,14 @@ export function getGossipSSZType(topic) {
|
|
|
111
123
|
}
|
|
112
124
|
}
|
|
113
125
|
/**
|
|
114
|
-
* Return the maximum uncompressed SSZ byte length
|
|
115
|
-
* or MAX_PAYLOAD_SIZE, whichever is smaller.
|
|
126
|
+
* Return the maximum uncompressed SSZ byte length allowed by the type and configured network bounds.
|
|
116
127
|
*/
|
|
117
|
-
export function getGossipSSZMaxSize(topic,
|
|
118
|
-
|
|
128
|
+
export function getGossipSSZMaxSize(topic, config, sszType) {
|
|
129
|
+
const maxSize = Math.min((sszType ?? getGossipSSZType(topic)).maxSize, config.MAX_PAYLOAD_SIZE);
|
|
130
|
+
if (isForkPostGloas(topic.boundary.fork) && topic.type === GossipType.data_column_sidecar) {
|
|
131
|
+
return Math.min(maxSize, computeMaxGloasDataColumnSidecarSize(config));
|
|
132
|
+
}
|
|
133
|
+
return maxSize;
|
|
119
134
|
}
|
|
120
135
|
/**
|
|
121
136
|
* Deserialize a gossip serialized data into an ssz object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topic.js","sourceRoot":"","sources":["../../../src/network/gossip/topic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"topic.js","sourceRoot":"","sources":["../../../src/network/gossip/topic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocols.d.ts","sourceRoot":"","sources":["../../../src/network/reqresp/protocols.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,QAAQ,
|
|
1
|
+
{"version":3,"file":"protocols.d.ts","sourceRoot":"","sources":["../../../src/network/reqresp/protocols.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAC,QAAQ,EAAkB,MAAM,kBAAkB,CAAC;AAI3D,OAAO,EAAC,iBAAiB,EAA0E,MAAM,YAAY,CAAC;AAEtH,eAAO,MAAM,OAAO,SA2IJ,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAvIhE,CAAC;AAEH,eAAO,MAAM,QAAQ,SAqIL,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAjIhE,CAAC;AAEH,eAAO,MAAM,UAAU,SA+HP,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AA3HhE,CAAC;AAEH,eAAO,MAAM,UAAU,SAyHP,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AArHhE,CAAC;AAEH,eAAO,MAAM,IAAI,SAmHD,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AA/GhE,CAAC;AAEH,eAAO,MAAM,MAAM,SA6GH,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAzGhE,CAAC;AAEH,eAAO,MAAM,QAAQ,SAuGL,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAnGhE,CAAC;AAEH,eAAO,MAAM,mBAAmB,SAiGhB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AA7FhE,CAAC;AAEH,eAAO,MAAM,qBAAqB,SA2FlB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAvFhE,CAAC;AAEH,eAAO,MAAM,kBAAkB,SAqFf,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAjFhE,CAAC;AAEH,eAAO,MAAM,oBAAoB,SA+EjB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AA3EhE,CAAC;AAEH,eAAO,MAAM,kBAAkB,SAyEf,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AArEhE,CAAC;AAEH,eAAO,MAAM,mBAAmB,SAmEhB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AA/DhE,CAAC;AAEH,eAAO,MAAM,kBAAkB,SA6Df,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAzDhE,CAAC;AAEH,eAAO,MAAM,yBAAyB,SAuDtB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAnDhE,CAAC;AAEH,eAAO,MAAM,wBAAwB,SAiDrB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AA7ChE,CAAC;AAEH,eAAO,MAAM,+BAA+B,SA2C5B,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAvChE,CAAC;AAEH,eAAO,MAAM,gCAAgC,SAqC7B,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAjChE,CAAC;AAEH,eAAO,MAAM,oBAAoB,SA+BjB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AA3BhE,CAAC;AAEH,eAAO,MAAM,yBAAyB,SAyBtB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AArBhE,CAAC;AAEH,eAAO,MAAM,2BAA2B,SAmBxB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAfhE,CAAC;AAEH,eAAO,MAAM,yBAAyB,SAatB,QAAQ,UAAU,YAAY,KAAG,iBAAiB,AAThE,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { isForkPostGloas } from "@lodestar/params";
|
|
1
2
|
import { ContextBytesType, Encoding } from "@lodestar/reqresp";
|
|
3
|
+
import { computeMaxGloasDataColumnSidecarSize } from "../../util/sszBytes.js";
|
|
2
4
|
import { rateLimitQuotas } from "./rateLimit.js";
|
|
3
5
|
import { ReqRespMethod, Version, requestSszTypeByMethod, responseSszTypeByMethod } from "./types.js";
|
|
4
6
|
export const Goodbye = toProtocol({
|
|
@@ -120,17 +122,29 @@ function toProtocol(protocol) {
|
|
|
120
122
|
encoding: Encoding.SSZ_SNAPPY,
|
|
121
123
|
contextBytes: toContextBytes(protocol.contextBytesType, config),
|
|
122
124
|
inboundRateLimits: rateLimitQuotas(fork, config)[protocol.method],
|
|
123
|
-
requestSizes: requestType === null ? null : clampTypeSizes(requestType, config),
|
|
124
|
-
responseSizes: (fork) =>
|
|
125
|
+
requestSizes: requestType === null ? null : clampTypeSizes(requestType, config.MAX_PAYLOAD_SIZE),
|
|
126
|
+
responseSizes: (fork) => clampResponseTypeSizes(responseSszTypeByMethod[protocol.method](fork, protocol.version), protocol.method, fork, config),
|
|
125
127
|
};
|
|
126
128
|
};
|
|
127
129
|
}
|
|
130
|
+
function clampResponseTypeSizes(type, method, fork, config) {
|
|
131
|
+
let maxPayloadSize = config.MAX_PAYLOAD_SIZE;
|
|
132
|
+
if (isForkPostGloas(fork)) {
|
|
133
|
+
switch (method) {
|
|
134
|
+
case ReqRespMethod.DataColumnSidecarsByRange:
|
|
135
|
+
case ReqRespMethod.DataColumnSidecarsByRoot:
|
|
136
|
+
maxPayloadSize = Math.min(maxPayloadSize, computeMaxGloasDataColumnSidecarSize(config));
|
|
137
|
+
break;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
return clampTypeSizes(type, maxPayloadSize);
|
|
141
|
+
}
|
|
128
142
|
/**
|
|
129
|
-
* Length-prefix must be within the SSZ type bounds or
|
|
143
|
+
* Length-prefix must be within the SSZ type bounds or the configured payload limit, whichever is smaller.
|
|
130
144
|
* https://github.com/ethereum/consensus-specs/blob/v1.7.0-alpha.12/specs/phase0/p2p-interface.md#encoding-strategies
|
|
131
145
|
*/
|
|
132
|
-
function clampTypeSizes(type,
|
|
133
|
-
return { minSize: type.minSize, maxSize: Math.min(type.maxSize,
|
|
146
|
+
function clampTypeSizes(type, maxPayloadSize) {
|
|
147
|
+
return { minSize: type.minSize, maxSize: Math.min(type.maxSize, maxPayloadSize) };
|
|
134
148
|
}
|
|
135
149
|
function toContextBytes(type, config) {
|
|
136
150
|
switch (type) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocols.js","sourceRoot":"","sources":["../../../src/network/reqresp/protocols.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"protocols.js","sourceRoot":"","sources":["../../../src/network/reqresp/protocols.ts"],"names":[],"mappings":"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"}
|
package/lib/sync/types.d.ts
CHANGED
|
@@ -25,6 +25,24 @@ export declare enum PendingBlockType {
|
|
|
25
25
|
*/
|
|
26
26
|
INCOMPLETE_PAYLOAD_ENVELOPE = "incomplete_payload_envelope"
|
|
27
27
|
}
|
|
28
|
+
export declare enum DownloadResult {
|
|
29
|
+
/** payload fully downloaded, ready to process */
|
|
30
|
+
Resolved = "resolved",
|
|
31
|
+
/** payload fully downloaded, but it was already imported (via gossip) while we were downloading */
|
|
32
|
+
Late = "late",
|
|
33
|
+
/** envelope downloaded, held until the block lands in fork choice */
|
|
34
|
+
WaitingForBlock = "waiting_for_block",
|
|
35
|
+
/** fetch failed, the pending entry is retained for retry */
|
|
36
|
+
Failed = "failed"
|
|
37
|
+
}
|
|
38
|
+
export declare enum FetchResult {
|
|
39
|
+
SuccessResolved = "success_resolved",
|
|
40
|
+
SuccessMissingParent = "success_missing_parent",
|
|
41
|
+
SuccessLate = "success_late",
|
|
42
|
+
SuccessWaitingForBlock = "success_waiting_for_block",
|
|
43
|
+
FailureTriedAllPeers = "failure_tried_all_peers",
|
|
44
|
+
FailureMaxAttempts = "failure_max_attempts"
|
|
45
|
+
}
|
|
28
46
|
export declare enum PendingBlockInputStatus {
|
|
29
47
|
pending = "pending",
|
|
30
48
|
fetching = "fetching",
|
package/lib/sync/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,8BAA8B,EAAC,MAAM,uBAAuB,CAAC;AAErE,OAAO,EAAC,WAAW,EAAC,MAAM,qCAAqC,CAAC;AAChE,OAAO,EAAC,oBAAoB,EAAC,MAAM,8DAA8D,CAAC;AAElG,oBAAY,gBAAgB;IAC1B;;OAEG;IACH,kBAAkB,qBAAqB;IACvC;;OAEG;IACH,cAAc,mBAAmB;IACjC;;;OAGG;IACH,sBAAsB,yBAAyB;IAE/C;;OAEG;IACH,0BAA0B,+BAA+B;IACzD;;OAEG;IACH,2BAA2B,gCAAgC;CAC5D;AAED,oBAAY,uBAAuB;IACjC,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,UAAU,eAAe;CAC1B;AAED;;;;;GAKG;AACH,oBAAY,iBAAiB;IAC3B,2HAA2H;IAC3H,cAAc,oBAAoB;IAClC,wFAAwF;IACxF,OAAO,aAAa;IACpB,4FAA4F;IAC5F,QAAQ,aAAa;IACrB,iEAAiE;IACjE,aAAa,mBAAmB;IAChC,wEAAwE;IACxE,OAAO,aAAa;IACpB,gFAAgF;IAChF,SAAS,eAAe;IACxB,mEAAmE;IACnE,YAAY,kBAAkB;IAC9B,qGAAqG;IACrG,oBAAoB,2BAA2B;IAC/C,kFAAkF;IAClF,eAAe,qBAAqB;IACpC,6DAA6D;IAC7D,gBAAgB,sBAAsB;IACtC,kGAAkG;IAClG,WAAW,gBAAgB;IAC3B,0DAA0D;IAC1D,OAAO,YAAY;CACpB;AAED,oBAAY,yBAAyB;IACnC,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,eAAe,sBAAsB;IACrC,UAAU,eAAe;IACzB,UAAU,eAAe;CAC1B;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,uBAAuB,CAAC;IAChC,UAAU,EAAE,WAAW,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,uBAAuB,CAAC,OAAO,GAAG,uBAAuB,CAAC,QAAQ,CAAC;IAC3E,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAEzE,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EACF,yBAAyB,CAAC,OAAO,GACjC,yBAAyB,CAAC,QAAQ,GAClC,yBAAyB,CAAC,UAAU,GACpC,yBAAyB,CAAC,UAAU,CAAC;IACzC,YAAY,EAAE,oBAAoB,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,yBAAyB,CAAC,OAAO,GAAG,yBAAyB,CAAC,QAAQ,CAAC;IAC/E,OAAO,EAAE,OAAO,CAAC;IAIjB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,yBAAyB,CAAC,eAAe,CAAC;IAClD,QAAQ,EAAE,8BAA8B,CAAC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,qBAAqB,GAAG,sBAAsB,CAAC;AAExG,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,IAAI,iBAAiB,CAElG;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,IAAI,mBAAmB,CAEnG;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,IAAI,sBAAsB,CAEzG;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAEzF;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI,GAAG,MAAM,CAE5F;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAUrF;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI,GAAG,MAAM,CAUxF"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"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"}
|
package/lib/sync/types.js
CHANGED
|
@@ -23,6 +23,26 @@ export var PendingBlockType;
|
|
|
23
23
|
*/
|
|
24
24
|
PendingBlockType["INCOMPLETE_PAYLOAD_ENVELOPE"] = "incomplete_payload_envelope";
|
|
25
25
|
})(PendingBlockType || (PendingBlockType = {}));
|
|
26
|
+
export var DownloadResult;
|
|
27
|
+
(function (DownloadResult) {
|
|
28
|
+
/** payload fully downloaded, ready to process */
|
|
29
|
+
DownloadResult["Resolved"] = "resolved";
|
|
30
|
+
/** payload fully downloaded, but it was already imported (via gossip) while we were downloading */
|
|
31
|
+
DownloadResult["Late"] = "late";
|
|
32
|
+
/** envelope downloaded, held until the block lands in fork choice */
|
|
33
|
+
DownloadResult["WaitingForBlock"] = "waiting_for_block";
|
|
34
|
+
/** fetch failed, the pending entry is retained for retry */
|
|
35
|
+
DownloadResult["Failed"] = "failed";
|
|
36
|
+
})(DownloadResult || (DownloadResult = {}));
|
|
37
|
+
export var FetchResult;
|
|
38
|
+
(function (FetchResult) {
|
|
39
|
+
FetchResult["SuccessResolved"] = "success_resolved";
|
|
40
|
+
FetchResult["SuccessMissingParent"] = "success_missing_parent";
|
|
41
|
+
FetchResult["SuccessLate"] = "success_late";
|
|
42
|
+
FetchResult["SuccessWaitingForBlock"] = "success_waiting_for_block";
|
|
43
|
+
FetchResult["FailureTriedAllPeers"] = "failure_tried_all_peers";
|
|
44
|
+
FetchResult["FailureMaxAttempts"] = "failure_max_attempts";
|
|
45
|
+
})(FetchResult || (FetchResult = {}));
|
|
26
46
|
export var PendingBlockInputStatus;
|
|
27
47
|
(function (PendingBlockInputStatus) {
|
|
28
48
|
PendingBlockInputStatus["pending"] = "pending";
|
package/lib/sync/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unknownBlock.d.ts","sourceRoot":"","sources":["../../src/sync/unknownBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAMjD,OAAO,EAAC,MAAM,EAA+D,MAAM,iBAAiB,CAAC;AAMrG,OAAO,EAA6B,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAG3E,OAAO,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAC,QAAQ,EAAuD,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAK5C,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"unknownBlock.d.ts","sourceRoot":"","sources":["../../src/sync/unknownBlock.ts"],"names":[],"mappings":"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"}
|
package/lib/sync/unknownBlock.js
CHANGED
|
@@ -17,7 +17,7 @@ import { shuffle } from "../util/shuffle.js";
|
|
|
17
17
|
import { sortBy } from "../util/sortBy.js";
|
|
18
18
|
import { wrapError } from "../util/wrapError.js";
|
|
19
19
|
import { MAX_CONCURRENT_REQUESTS } from "./constants.js";
|
|
20
|
-
import { DroppedItemReason, PendingBlockInputStatus, PendingBlockType, PendingPayloadInputStatus, getBlockInputSyncCacheItemRootHex, getBlockInputSyncCacheItemSlot, getPayloadSyncCacheItemRootHex, getPayloadSyncCacheItemSlot, isPendingBlockInput, isPendingPayloadEnvelope, isPendingPayloadInput, } from "./types.js";
|
|
20
|
+
import { DownloadResult, DroppedItemReason, FetchResult, PendingBlockInputStatus, PendingBlockType, PendingPayloadInputStatus, getBlockInputSyncCacheItemRootHex, getBlockInputSyncCacheItemSlot, getPayloadSyncCacheItemRootHex, getPayloadSyncCacheItemSlot, isPendingBlockInput, isPendingPayloadEnvelope, isPendingPayloadInput, } from "./types.js";
|
|
21
21
|
import { DownloadByRootError, downloadByRoot } from "./utils/downloadByRoot.js";
|
|
22
22
|
import { getAllDescendantBlocks, getUnknownAndAncestorBlocks } from "./utils/pendingBlocksTree.js";
|
|
23
23
|
import { getRateLimitedUntilMs } from "./utils/rateLimit.js";
|
|
@@ -28,14 +28,6 @@ const MAX_PENDING_BLOCKS = 100;
|
|
|
28
28
|
* A pending payload without slot can only stay at most 2 epochs.
|
|
29
29
|
*/
|
|
30
30
|
const PRUNE_UNRESOLVED_SLOT_EPOCHS = 2;
|
|
31
|
-
var FetchResult;
|
|
32
|
-
(function (FetchResult) {
|
|
33
|
-
FetchResult["SuccessResolved"] = "success_resolved";
|
|
34
|
-
FetchResult["SuccessMissingParent"] = "success_missing_parent";
|
|
35
|
-
FetchResult["SuccessLate"] = "success_late";
|
|
36
|
-
FetchResult["FailureTriedAllPeers"] = "failure_tried_all_peers";
|
|
37
|
-
FetchResult["FailureMaxAttempts"] = "failure_max_attempts";
|
|
38
|
-
})(FetchResult || (FetchResult = {}));
|
|
39
31
|
class UnknownBlockRateLimitedError extends Error {
|
|
40
32
|
constructor(message) {
|
|
41
33
|
super(message);
|
|
@@ -946,14 +938,22 @@ export class BlockInputSync {
|
|
|
946
938
|
return;
|
|
947
939
|
}
|
|
948
940
|
this.pendingPayloads.set(resultRootHex, pendingPayload);
|
|
941
|
+
const result = isPendingPayloadEnvelope(pendingPayload)
|
|
942
|
+
? DownloadResult.WaitingForBlock
|
|
943
|
+
: this.chain.forkChoice.hasPayloadHexUnsafe(resultRootHex)
|
|
944
|
+
? DownloadResult.Late
|
|
945
|
+
: DownloadResult.Resolved;
|
|
946
|
+
this.metrics?.blockInputSync.downloadedPayloadsResult.inc({ result });
|
|
949
947
|
if (isPendingPayloadEnvelope(pendingPayload)) {
|
|
950
948
|
await this.reconcilePayloadEnvelope(pendingPayload);
|
|
951
949
|
}
|
|
952
950
|
else if (pendingPayload.status === PendingPayloadInputStatus.downloaded) {
|
|
951
|
+
this.metrics?.blockInputSync.elapsedTimeTillPayloadReceived.observe(Date.now() / 1000 - computeTimeAtSlot(this.config, pendingPayload.payloadInput.slot, this.chain.genesisTime));
|
|
953
952
|
await this.processPayload(pendingPayload);
|
|
954
953
|
}
|
|
955
954
|
return;
|
|
956
955
|
}
|
|
956
|
+
this.metrics?.blockInputSync.downloadedPayloadsResult.inc({ result: DownloadResult.Failed });
|
|
957
957
|
this.logger.debug("Ignoring unknown payload root after failed download", logCtx, res.err);
|
|
958
958
|
if (!isPendingPayloadEnvelope(payload)) {
|
|
959
959
|
payload.status = PendingPayloadInputStatus.pending;
|
|
@@ -1050,6 +1050,10 @@ export class BlockInputSync {
|
|
|
1050
1050
|
? cacheItem.payloadInput
|
|
1051
1051
|
: await this.chain.seenPayloadEnvelopeInputCache.getOrReload(rootHex);
|
|
1052
1052
|
let envelope = payloadInput?.hasPayloadEnvelope() ? payloadInput.getPayloadEnvelope() : undefined;
|
|
1053
|
+
const fetchStartSec = Date.now() / 1000;
|
|
1054
|
+
if (typeof slot === "number") {
|
|
1055
|
+
this.metrics?.blockInputSync.payloadFetchBegin.observe(this.chain.clock.secFromSlot(slot, fetchStartSec));
|
|
1056
|
+
}
|
|
1053
1057
|
let i = 0;
|
|
1054
1058
|
let deferredByRateLimit = false;
|
|
1055
1059
|
while (i++ < this.getMaxDownloadAttempts()) {
|
|
@@ -1065,6 +1069,8 @@ export class BlockInputSync {
|
|
|
1065
1069
|
const reason = pendingColumns.size > 0
|
|
1066
1070
|
? `cannot find peer with needed columns=${prettyPrintIndices(Array.from(pendingColumns))}`
|
|
1067
1071
|
: "no peer available to download pending payload";
|
|
1072
|
+
this.metrics?.blockInputSync.payloadFetchTime.observe({ result: FetchResult.FailureTriedAllPeers }, Date.now() / 1000 - fetchStartSec);
|
|
1073
|
+
this.metrics?.blockInputSync.payloadFetchPeers.set({ result: FetchResult.FailureTriedAllPeers }, i);
|
|
1068
1074
|
throw Error(`Error fetching payload by root slot=${slot} root=${rootHex} after ${i}: ${reason}`);
|
|
1069
1075
|
}
|
|
1070
1076
|
const { peerId, client: peerClient } = peerMeta;
|
|
@@ -1072,7 +1078,12 @@ export class BlockInputSync {
|
|
|
1072
1078
|
try {
|
|
1073
1079
|
if (!envelope) {
|
|
1074
1080
|
envelope = await this.fetchExecutionPayloadEnvelope(peerId, blockRoot, rootHex);
|
|
1081
|
+
const slotWasUnknown = typeof slot !== "number";
|
|
1075
1082
|
slot = envelope.message.payload.slotNumber;
|
|
1083
|
+
if (slotWasUnknown) {
|
|
1084
|
+
// we were not able to observe the time into slot when starting the fetch, do it now
|
|
1085
|
+
this.metrics?.blockInputSync.payloadFetchBegin.observe(this.chain.clock.secFromSlot(slot, fetchStartSec));
|
|
1086
|
+
}
|
|
1076
1087
|
}
|
|
1077
1088
|
payloadInput ??= await this.chain.seenPayloadEnvelopeInputCache.getOrReload(rootHex);
|
|
1078
1089
|
if (!this.chain.forkChoice.hasBlockHex(rootHex)) {
|
|
@@ -1080,6 +1091,8 @@ export class BlockInputSync {
|
|
|
1080
1091
|
// envelope and wait for the block body; reconcilePayloadEnvelope validates once the block lands.
|
|
1081
1092
|
// payloadInput may be seeded from the block body during download, so a non-null payloadInput does not
|
|
1082
1093
|
// imply the block is imported.
|
|
1094
|
+
this.metrics?.blockInputSync.payloadFetchTime.observe({ result: FetchResult.SuccessWaitingForBlock }, Date.now() / 1000 - fetchStartSec);
|
|
1095
|
+
this.metrics?.blockInputSync.payloadFetchPeers.set({ result: FetchResult.SuccessWaitingForBlock }, i);
|
|
1083
1096
|
return {
|
|
1084
1097
|
status: PendingPayloadInputStatus.waitingForBlock,
|
|
1085
1098
|
envelope,
|
|
@@ -1124,6 +1137,12 @@ export class BlockInputSync {
|
|
|
1124
1137
|
hasAllData: pendingPayload.payloadInput.hasAllData(),
|
|
1125
1138
|
});
|
|
1126
1139
|
if (pendingPayload.status === PendingPayloadInputStatus.downloaded) {
|
|
1140
|
+
// late = the payload got imported (via gossip) while we were downloading, same as the block path
|
|
1141
|
+
const result = this.chain.forkChoice.hasPayloadHexUnsafe(rootHex)
|
|
1142
|
+
? FetchResult.SuccessLate
|
|
1143
|
+
: FetchResult.SuccessResolved;
|
|
1144
|
+
this.metrics?.blockInputSync.payloadFetchTime.observe({ result }, Date.now() / 1000 - fetchStartSec);
|
|
1145
|
+
this.metrics?.blockInputSync.payloadFetchPeers.set({ result }, i);
|
|
1127
1146
|
return pendingPayload;
|
|
1128
1147
|
}
|
|
1129
1148
|
cacheItem = pendingPayload;
|
|
@@ -1155,6 +1174,8 @@ export class BlockInputSync {
|
|
|
1155
1174
|
this.peerBalancer.onRequestCompleted(peerId);
|
|
1156
1175
|
}
|
|
1157
1176
|
}
|
|
1177
|
+
this.metrics?.blockInputSync.payloadFetchTime.observe({ result: FetchResult.FailureMaxAttempts }, Date.now() / 1000 - fetchStartSec);
|
|
1178
|
+
this.metrics?.blockInputSync.payloadFetchPeers.set({ result: FetchResult.FailureMaxAttempts }, i - 1);
|
|
1158
1179
|
if (deferredByRateLimit && this.peerBalancer.getNextRateLimitRetryAt() !== null) {
|
|
1159
1180
|
throw new UnknownBlockRateLimitedError(`Error fetching payload with slot=${slot} root=${rootHex} after ${i - 1} attempts: peers are rate-limited`);
|
|
1160
1181
|
}
|
|
@@ -1227,7 +1248,7 @@ export class BlockInputSync {
|
|
|
1227
1248
|
}
|
|
1228
1249
|
// no more peer with needed columns to try, throw error
|
|
1229
1250
|
const message = `Error fetching UnknownBlockRoot slot=${slot} root=${rootHex} after ${i}: cannot find peer with needed columns=${prettyPrintIndices(Array.from(pendingColumns))}`;
|
|
1230
|
-
this.metrics?.blockInputSync.
|
|
1251
|
+
this.metrics?.blockInputSync.fetchTime.observe({ result: FetchResult.FailureTriedAllPeers }, Date.now() / 1000 - fetchStartSec);
|
|
1231
1252
|
this.metrics?.blockInputSync.fetchPeers.set({ result: FetchResult.FailureTriedAllPeers }, i);
|
|
1232
1253
|
throw Error(message);
|
|
1233
1254
|
}
|
|
@@ -1309,7 +1330,7 @@ export class BlockInputSync {
|
|
|
1309
1330
|
: this.chain.forkChoice.hasBlockHex(cacheItem.blockInput.parentRootHex)
|
|
1310
1331
|
? FetchResult.SuccessResolved
|
|
1311
1332
|
: FetchResult.SuccessMissingParent;
|
|
1312
|
-
this.metrics?.blockInputSync.
|
|
1333
|
+
this.metrics?.blockInputSync.fetchTime.observe({ result }, Date.now() / 1000 - fetchStartSec);
|
|
1313
1334
|
this.metrics?.blockInputSync.fetchPeers.set({ result }, i);
|
|
1314
1335
|
return cacheItem;
|
|
1315
1336
|
}
|
|
@@ -1336,7 +1357,7 @@ export class BlockInputSync {
|
|
|
1336
1357
|
throw new Error(`${message} Missing column indices=${prettyPrintIndices(missing)}.`);
|
|
1337
1358
|
}
|
|
1338
1359
|
}
|
|
1339
|
-
this.metrics?.blockInputSync.
|
|
1360
|
+
this.metrics?.blockInputSync.fetchTime.observe({ result: FetchResult.FailureMaxAttempts }, Date.now() / 1000 - fetchStartSec);
|
|
1340
1361
|
this.metrics?.blockInputSync.fetchPeers.set({ result: FetchResult.FailureMaxAttempts }, i - 1);
|
|
1341
1362
|
throw Error(message);
|
|
1342
1363
|
}
|