ponder 0.17.6 → 0.17.8
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/CHANGELOG.md +12 -0
- package/dist/esm/client/index.js +3 -1
- package/dist/esm/client/index.js.map +1 -1
- package/dist/esm/runtime/filter.js +121 -1
- package/dist/esm/runtime/filter.js.map +1 -1
- package/dist/esm/sync-historical/index.js +30 -131
- package/dist/esm/sync-historical/index.js.map +1 -1
- package/dist/esm/sync-store/index.js +7 -3
- package/dist/esm/sync-store/index.js.map +1 -1
- package/dist/types/client/index.d.ts.map +1 -1
- package/dist/types/indexing/index.d.ts +1 -1
- package/dist/types/runtime/filter.d.ts +33 -1
- package/dist/types/runtime/filter.d.ts.map +1 -1
- package/dist/types/sync-historical/index.d.ts +2 -1
- package/dist/types/sync-historical/index.d.ts.map +1 -1
- package/dist/types/sync-store/index.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/client/index.ts +4 -1
- package/src/runtime/filter.ts +177 -1
- package/src/sync-historical/index.ts +33 -152
- package/src/sync-store/index.ts +6 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# ponder
|
|
2
2
|
|
|
3
|
+
## 0.17.8
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#2366](https://github.com/ponder-sh/ponder/pull/2366) [`bbcaa43`](https://github.com/ponder-sh/ponder/commit/bbcaa43982b92cbfd1d4b91f66a0b4ae824c3d43) Thanks [@kyscott18](https://github.com/kyscott18)! - Improved backfill sync performance by merging more compatible JSON-RPC `eth_getLogs` requests.
|
|
8
|
+
|
|
9
|
+
## 0.17.7
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [#2370](https://github.com/ponder-sh/ponder/pull/2370) [`e60a608`](https://github.com/ponder-sh/ponder/commit/e60a608b8a001511a6d62e825db73269a2ee669e) Thanks [@kyscott18](https://github.com/kyscott18)! - Fixed the error `TypeError: Cannot read properties of undefined (reading 'getSelectedFields')` that occurred during startup.
|
|
14
|
+
|
|
3
15
|
## 0.17.6
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/dist/esm/client/index.js
CHANGED
|
@@ -132,7 +132,7 @@ export const client = ({ db, schema, }) => {
|
|
|
132
132
|
if (driver.dialect === "pglite") {
|
|
133
133
|
const channel = getLiveQueryChannelName(globalThis.PONDER_NAMESPACE_BUILD.schema);
|
|
134
134
|
driver.instance.query(`LISTEN "${channel}"`);
|
|
135
|
-
driver.instance.onNotification((_, payload) => {
|
|
135
|
+
const unsubscribe = driver.instance.onNotification((_, payload) => {
|
|
136
136
|
const tables = JSON.parse(payload);
|
|
137
137
|
tables.push("_ponder_checkpoint");
|
|
138
138
|
let invalidQueryCount = 0;
|
|
@@ -165,6 +165,7 @@ export const client = ({ db, schema, }) => {
|
|
|
165
165
|
});
|
|
166
166
|
}
|
|
167
167
|
});
|
|
168
|
+
globalThis.PONDER_COMMON.apiShutdown.add(unsubscribe);
|
|
168
169
|
}
|
|
169
170
|
else {
|
|
170
171
|
(async () => {
|
|
@@ -177,6 +178,7 @@ export const client = ({ db, schema, }) => {
|
|
|
177
178
|
client = await driver.admin.connect();
|
|
178
179
|
if (hasRegisteredShutdown === false) {
|
|
179
180
|
globalThis.PONDER_COMMON.apiShutdown.add(() => {
|
|
181
|
+
client?.removeAllListeners("notification");
|
|
180
182
|
client?.release();
|
|
181
183
|
client = undefined;
|
|
182
184
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { hexToNumber } from "viem";
|
|
1
|
+
import { hexToNumber, numberToHex } from "viem";
|
|
2
|
+
import { sanitizeLogTopics } from '../rpc/index.js';
|
|
2
3
|
import { toLowerCase } from '../utils/lowercase.js';
|
|
3
4
|
/** Returns true if `address` is an address filter. */
|
|
4
5
|
export const isAddressFactory = (address) => {
|
|
@@ -9,6 +10,125 @@ export const isAddressFactory = (address) => {
|
|
|
9
10
|
}
|
|
10
11
|
return Array.isArray(address) ? isAddressFactory(address[0]) : true;
|
|
11
12
|
};
|
|
13
|
+
const logRequestKeys = [
|
|
14
|
+
"address",
|
|
15
|
+
"topic0",
|
|
16
|
+
"topic1",
|
|
17
|
+
"topic2",
|
|
18
|
+
"topic3",
|
|
19
|
+
];
|
|
20
|
+
const getLogRequestValue = (request, key) => {
|
|
21
|
+
if (key === "address")
|
|
22
|
+
return request.params[0].address;
|
|
23
|
+
const topic = request.params[0].topics?.[Number(key.slice(-1))];
|
|
24
|
+
return topic === null ? undefined : topic;
|
|
25
|
+
};
|
|
26
|
+
/** Returns `true` if `left` and `right` overlap by at least 80% of the smaller interval's length. */
|
|
27
|
+
const hasSufficientLogIntervalOverlap = (left, right) => {
|
|
28
|
+
const overlapStart = Math.max(left[0], right[0]);
|
|
29
|
+
const overlapEnd = Math.min(left[1], right[1]);
|
|
30
|
+
if (overlapStart > overlapEnd)
|
|
31
|
+
return false;
|
|
32
|
+
const overlapLength = overlapEnd - overlapStart + 1;
|
|
33
|
+
const smallerIntervalLength = Math.min(left[1] - left[0] + 1, right[1] - right[0] + 1);
|
|
34
|
+
return overlapLength / smallerIntervalLength >= 0.8;
|
|
35
|
+
};
|
|
36
|
+
const mergeLogFilterValue = (left, right) => left === undefined || right === undefined
|
|
37
|
+
? undefined
|
|
38
|
+
: [
|
|
39
|
+
...new Set([
|
|
40
|
+
...(Array.isArray(left) ? left : [left]),
|
|
41
|
+
...(Array.isArray(right) ? right : [right]),
|
|
42
|
+
]),
|
|
43
|
+
];
|
|
44
|
+
/**
|
|
45
|
+
* Merge `LogFilter`s into the smallest possible set of "eth_getLogs" requests.
|
|
46
|
+
*
|
|
47
|
+
* @dev Two filters are merged into a single request when:
|
|
48
|
+
* 1. their required intervals overlap by at least 80% (of the smaller
|
|
49
|
+
* interval's length), and
|
|
50
|
+
* 2. at most one of `address`, `topic0`, `topic1`, `topic2`, or `topic3`
|
|
51
|
+
* differs between them.
|
|
52
|
+
* The one differing dimension (if any) is unioned into an array.
|
|
53
|
+
*
|
|
54
|
+
* @dev Factory addresses are resolved into concrete child addresses (or
|
|
55
|
+
* `undefined`, above `factoryAddressCountThreshold`) before merging, so
|
|
56
|
+
* requests originating from different factories can still be merged.
|
|
57
|
+
*/
|
|
58
|
+
export const mergeLogFiltersToRequests = (filters, childAddresses, factoryAddressCountThreshold) => {
|
|
59
|
+
const requests = [];
|
|
60
|
+
for (const { filter, interval } of filters) {
|
|
61
|
+
if (filter.type !== "log")
|
|
62
|
+
continue;
|
|
63
|
+
let address;
|
|
64
|
+
if (isAddressFactory(filter.address)) {
|
|
65
|
+
const addresses = childAddresses.get(filter.address.id);
|
|
66
|
+
if (addresses.size === 0)
|
|
67
|
+
continue;
|
|
68
|
+
address =
|
|
69
|
+
addresses.size >= factoryAddressCountThreshold
|
|
70
|
+
? undefined
|
|
71
|
+
: Array.from(addresses.keys());
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
address = filter.address;
|
|
75
|
+
}
|
|
76
|
+
const candidate = {
|
|
77
|
+
method: "eth_getLogs",
|
|
78
|
+
params: [
|
|
79
|
+
{
|
|
80
|
+
address,
|
|
81
|
+
topics: sanitizeLogTopics([
|
|
82
|
+
filter.topic0,
|
|
83
|
+
filter.topic1 ?? null,
|
|
84
|
+
filter.topic2 ?? null,
|
|
85
|
+
filter.topic3 ?? null,
|
|
86
|
+
]),
|
|
87
|
+
fromBlock: numberToHex(interval[0]),
|
|
88
|
+
toBlock: numberToHex(interval[1]),
|
|
89
|
+
},
|
|
90
|
+
],
|
|
91
|
+
};
|
|
92
|
+
let isMerged = false;
|
|
93
|
+
for (const request of requests) {
|
|
94
|
+
if (hasSufficientLogIntervalOverlap([
|
|
95
|
+
hexToNumber(request.params[0].fromBlock),
|
|
96
|
+
hexToNumber(request.params[0].toBlock),
|
|
97
|
+
], interval) === false) {
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
const numberOfDifferences = logRequestKeys.filter((key) => JSON.stringify(getLogRequestValue(request, key)) !==
|
|
101
|
+
JSON.stringify(getLogRequestValue(candidate, key))).length;
|
|
102
|
+
if (numberOfDifferences > 1)
|
|
103
|
+
continue;
|
|
104
|
+
const requestParams = request.params[0];
|
|
105
|
+
for (const key of logRequestKeys) {
|
|
106
|
+
const requestValue = getLogRequestValue(request, key);
|
|
107
|
+
const candidateValue = getLogRequestValue(candidate, key);
|
|
108
|
+
if (JSON.stringify(requestValue) === JSON.stringify(candidateValue)) {
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
const mergedValue = mergeLogFilterValue(requestValue, candidateValue);
|
|
112
|
+
if (key === "address") {
|
|
113
|
+
requestParams.address = mergedValue;
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
const topics = [...(requestParams.topics ?? [])];
|
|
117
|
+
topics[Number(key.slice(-1))] = mergedValue ?? null;
|
|
118
|
+
requestParams.topics = sanitizeLogTopics(topics);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
requestParams.fromBlock = numberToHex(Math.min(hexToNumber(requestParams.fromBlock), interval[0]));
|
|
122
|
+
requestParams.toBlock = numberToHex(Math.max(hexToNumber(requestParams.toBlock), interval[1]));
|
|
123
|
+
isMerged = true;
|
|
124
|
+
break;
|
|
125
|
+
}
|
|
126
|
+
if (isMerged === false) {
|
|
127
|
+
requests.push(candidate);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return requests;
|
|
131
|
+
};
|
|
12
132
|
export const getChildAddress = ({ log, factory, }) => {
|
|
13
133
|
if (factory.childAddressLocation.startsWith("offset")) {
|
|
14
134
|
const childAddressOffset = Number(factory.childAddressLocation.substring(6));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../src/runtime/filter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../src/runtime/filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { getLogsRetryHelper } from "@ponder/utils";
|
|
2
2
|
import { hexToNumber, numberToHex, toHex, zeroHash, } from "viem";
|
|
3
3
|
import { debug_traceBlockByNumber, eth_getBlockByNumber, eth_getBlockReceipts, eth_getLogs, eth_getTransactionReceipt, validateLogsAndBlock, validateReceiptsAndBlock, validateTracesAndBlock, validateTransactionsAndBlock, } from '../rpc/actions.js';
|
|
4
|
-
import {
|
|
5
|
-
import { getChildAddress, isAddressFactory, isAddressMatched, isBlockFilterMatched, isBlockInFilter, isLogFactoryMatched, isLogFilterMatched, isTraceFilterMatched, isTransactionFilterMatched, isTransferFilterMatched, } from '../runtime/filter.js';
|
|
4
|
+
import { getChildAddress, isAddressFactory, isAddressMatched, isBlockFilterMatched, isBlockInFilter, isLogFactoryMatched, isLogFilterMatched, isTraceFilterMatched, isTransactionFilterMatched, isTransferFilterMatched, mergeLogFiltersToRequests, } from '../runtime/filter.js';
|
|
6
5
|
import { dedupe } from '../utils/dedupe.js';
|
|
7
6
|
import { getChunks, intervalBounds, intervalRange, } from '../utils/interval.js';
|
|
8
7
|
import { promiseAllSettledWithThrow } from '../utils/promiseAllSettledWithThrow.js';
|
|
@@ -20,29 +19,30 @@ export const createHistoricalSync = (args) => {
|
|
|
20
19
|
let logsRequestMetadata = {
|
|
21
20
|
estimatedRange: 500,
|
|
22
21
|
};
|
|
22
|
+
////////
|
|
23
|
+
// Helper functions for sync tasks
|
|
24
|
+
////////
|
|
23
25
|
/**
|
|
24
26
|
* Split "eth_getLogs" requests into ranges inferred from errors
|
|
25
27
|
* and batch requests.
|
|
26
28
|
*/
|
|
27
|
-
const syncLogsDynamic = async (
|
|
29
|
+
const syncLogsDynamic = async (params, context) => {
|
|
30
|
+
const { address, topics } = params;
|
|
28
31
|
const intervals = getChunks({
|
|
29
|
-
interval
|
|
32
|
+
interval: [
|
|
33
|
+
hexToNumber(params.fromBlock),
|
|
34
|
+
hexToNumber(params.toBlock),
|
|
35
|
+
],
|
|
30
36
|
maxChunkSize: args.chain.ethGetLogsBlockRange ??
|
|
31
37
|
logsRequestMetadata.confirmedRange ??
|
|
32
38
|
logsRequestMetadata.estimatedRange,
|
|
33
39
|
});
|
|
34
|
-
const
|
|
35
|
-
topic0 ?? null,
|
|
36
|
-
topic1 ?? null,
|
|
37
|
-
topic2 ?? null,
|
|
38
|
-
topic3 ?? null,
|
|
39
|
-
]);
|
|
40
|
-
const logs = await Promise.all(intervals.map((interval) => eth_getLogs(args.rpc, [
|
|
40
|
+
const logs = await Promise.all(intervals.map(([fromBlock, toBlock]) => eth_getLogs(args.rpc, [
|
|
41
41
|
{
|
|
42
42
|
address,
|
|
43
43
|
topics,
|
|
44
|
-
fromBlock: numberToHex(
|
|
45
|
-
toBlock: numberToHex(
|
|
44
|
+
fromBlock: numberToHex(fromBlock),
|
|
45
|
+
toBlock: numberToHex(toBlock),
|
|
46
46
|
},
|
|
47
47
|
], context).catch((error) => {
|
|
48
48
|
// Note: skip eth_getLogs range retry logic if the chain
|
|
@@ -55,8 +55,8 @@ export const createHistoricalSync = (args) => {
|
|
|
55
55
|
{
|
|
56
56
|
address,
|
|
57
57
|
topics,
|
|
58
|
-
fromBlock: toHex(
|
|
59
|
-
toBlock: toHex(
|
|
58
|
+
fromBlock: toHex(fromBlock),
|
|
59
|
+
toBlock: toHex(toBlock),
|
|
60
60
|
},
|
|
61
61
|
],
|
|
62
62
|
error: error,
|
|
@@ -77,7 +77,12 @@ export const createHistoricalSync = (args) => {
|
|
|
77
77
|
? range
|
|
78
78
|
: undefined,
|
|
79
79
|
};
|
|
80
|
-
return syncLogsDynamic({
|
|
80
|
+
return syncLogsDynamic({
|
|
81
|
+
address,
|
|
82
|
+
topics,
|
|
83
|
+
fromBlock: numberToHex(fromBlock),
|
|
84
|
+
toBlock: numberToHex(toBlock),
|
|
85
|
+
}, context);
|
|
81
86
|
}))).then((logs) => logs.flat());
|
|
82
87
|
/**
|
|
83
88
|
* Dynamically increase the range used in "eth_getLogs" if an
|
|
@@ -140,11 +145,12 @@ export const createHistoricalSync = (args) => {
|
|
|
140
145
|
const syncAddressFactory = async (factory, interval, context) => {
|
|
141
146
|
const logs = await syncLogsDynamic({
|
|
142
147
|
address: factory.address,
|
|
143
|
-
|
|
144
|
-
interval,
|
|
148
|
+
topics: [factory.eventSelector],
|
|
149
|
+
fromBlock: numberToHex(interval[0]),
|
|
150
|
+
toBlock: numberToHex(interval[1]),
|
|
145
151
|
}, context);
|
|
146
152
|
const childAddresses = new Map();
|
|
147
|
-
const
|
|
153
|
+
const factoryChildAddresses = args.childAddresses.get(factory.id);
|
|
148
154
|
const childAddressDecodeFailureIds = new Set();
|
|
149
155
|
let childAddressDecodeFailureCount = 0;
|
|
150
156
|
let childAddressDecodeSuccessCount = 0;
|
|
@@ -177,12 +183,12 @@ export const createHistoricalSync = (args) => {
|
|
|
177
183
|
throw error;
|
|
178
184
|
}
|
|
179
185
|
}
|
|
180
|
-
const existingBlockNumber =
|
|
186
|
+
const existingBlockNumber = factoryChildAddresses.get(address);
|
|
181
187
|
const newBlockNumber = hexToNumber(log.blockNumber);
|
|
182
188
|
if (existingBlockNumber === undefined ||
|
|
183
189
|
existingBlockNumber > newBlockNumber) {
|
|
184
190
|
childAddresses.set(address, newBlockNumber);
|
|
185
|
-
|
|
191
|
+
factoryChildAddresses.set(address, newBlockNumber);
|
|
186
192
|
}
|
|
187
193
|
}
|
|
188
194
|
}
|
|
@@ -220,117 +226,10 @@ export const createHistoricalSync = (args) => {
|
|
|
220
226
|
await Promise.all(requiredFactoryIntervals.map(async ({ factory, interval }) => {
|
|
221
227
|
childAddresses.set(factory.id, await syncAddressFactory(factory, interval, context));
|
|
222
228
|
}));
|
|
223
|
-
const
|
|
224
|
-
const singleEthGetLogsParams = [];
|
|
225
|
-
for (const { filter, interval } of requiredIntervals) {
|
|
226
|
-
if (filter.type !== "log")
|
|
227
|
-
continue;
|
|
228
|
-
const hasAddress = filter.address !== undefined;
|
|
229
|
-
const hasTopic1 = filter.topic1 !== undefined && filter.topic1 !== null;
|
|
230
|
-
const hasTopic2 = filter.topic2 !== undefined && filter.topic2 !== null;
|
|
231
|
-
const hasTopic3 = filter.topic3 !== undefined && filter.topic3 !== null;
|
|
232
|
-
if (hasAddress === false || hasTopic1 || hasTopic2 || hasTopic3) {
|
|
233
|
-
if (isAddressFactory(filter.address)) {
|
|
234
|
-
const childAddresses = args.childAddresses.get(filter.address.id);
|
|
235
|
-
if (childAddresses.size === 0) {
|
|
236
|
-
continue;
|
|
237
|
-
}
|
|
238
|
-
singleEthGetLogsParams.push({
|
|
239
|
-
address: childAddresses.size >=
|
|
240
|
-
args.common.options.factoryAddressCountThreshold
|
|
241
|
-
? undefined
|
|
242
|
-
: Array.from(childAddresses.keys()),
|
|
243
|
-
topic0: filter.topic0,
|
|
244
|
-
topic1: filter.topic1,
|
|
245
|
-
topic2: filter.topic2,
|
|
246
|
-
topic3: filter.topic3,
|
|
247
|
-
interval,
|
|
248
|
-
});
|
|
249
|
-
}
|
|
250
|
-
else {
|
|
251
|
-
singleEthGetLogsParams.push({
|
|
252
|
-
address: filter.address,
|
|
253
|
-
topic0: filter.topic0,
|
|
254
|
-
topic1: filter.topic1,
|
|
255
|
-
topic2: filter.topic2,
|
|
256
|
-
topic3: filter.topic3,
|
|
257
|
-
interval,
|
|
258
|
-
});
|
|
259
|
-
}
|
|
260
|
-
continue;
|
|
261
|
-
}
|
|
262
|
-
let addressKey;
|
|
263
|
-
if (isAddressFactory(filter.address)) {
|
|
264
|
-
addressKey = filter.address.id;
|
|
265
|
-
}
|
|
266
|
-
else if (Array.isArray(filter.address)) {
|
|
267
|
-
addressKey = filter.address.join("_");
|
|
268
|
-
}
|
|
269
|
-
else {
|
|
270
|
-
addressKey = filter.address;
|
|
271
|
-
}
|
|
272
|
-
if (mergedEthGetLogsParams.has(addressKey) === false) {
|
|
273
|
-
if (isAddressFactory(filter.address)) {
|
|
274
|
-
const childAddresses = args.childAddresses.get(filter.address.id);
|
|
275
|
-
if (childAddresses.size === 0) {
|
|
276
|
-
continue;
|
|
277
|
-
}
|
|
278
|
-
mergedEthGetLogsParams.set(addressKey, {
|
|
279
|
-
address: childAddresses.size >=
|
|
280
|
-
args.common.options.factoryAddressCountThreshold
|
|
281
|
-
? undefined
|
|
282
|
-
: Array.from(childAddresses.keys()),
|
|
283
|
-
topic0: filter.topic0,
|
|
284
|
-
topic1: filter.topic1,
|
|
285
|
-
topic2: filter.topic2,
|
|
286
|
-
topic3: filter.topic3,
|
|
287
|
-
interval,
|
|
288
|
-
});
|
|
289
|
-
}
|
|
290
|
-
else {
|
|
291
|
-
mergedEthGetLogsParams.set(addressKey, {
|
|
292
|
-
address: filter.address,
|
|
293
|
-
topic0: filter.topic0,
|
|
294
|
-
topic1: filter.topic1,
|
|
295
|
-
topic2: filter.topic2,
|
|
296
|
-
topic3: filter.topic3,
|
|
297
|
-
interval,
|
|
298
|
-
});
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
else {
|
|
302
|
-
const existingInterval = mergedEthGetLogsParams.get(addressKey).interval;
|
|
303
|
-
const existingTopic0 = mergedEthGetLogsParams.get(addressKey)
|
|
304
|
-
.topic0;
|
|
305
|
-
if (Array.isArray(existingTopic0)) {
|
|
306
|
-
if (existingTopic0.includes(filter.topic0) === false) {
|
|
307
|
-
mergedEthGetLogsParams.get(addressKey).topic0 = [
|
|
308
|
-
...existingTopic0,
|
|
309
|
-
filter.topic0,
|
|
310
|
-
];
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
else {
|
|
314
|
-
if (existingTopic0 !== filter.topic0) {
|
|
315
|
-
mergedEthGetLogsParams.get(addressKey).topic0 = [
|
|
316
|
-
existingTopic0,
|
|
317
|
-
filter.topic0,
|
|
318
|
-
];
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
mergedEthGetLogsParams.get(addressKey).interval = intervalBounds([
|
|
322
|
-
existingInterval,
|
|
323
|
-
interval,
|
|
324
|
-
]);
|
|
325
|
-
}
|
|
326
|
-
}
|
|
327
|
-
const ethGetLogsParams = dedupe([
|
|
328
|
-
...singleEthGetLogsParams,
|
|
329
|
-
...Array.from(mergedEthGetLogsParams.values()),
|
|
330
|
-
], (params) => JSON.stringify(params));
|
|
229
|
+
const ethGetLogsRequests = mergeLogFiltersToRequests(requiredIntervals, args.childAddresses, args.common.options.factoryAddressCountThreshold);
|
|
331
230
|
let logs = [];
|
|
332
|
-
await Promise.all(
|
|
333
|
-
const _logs = await syncLogsDynamic(params, context);
|
|
231
|
+
await Promise.all(ethGetLogsRequests.map(async (request) => {
|
|
232
|
+
const _logs = await syncLogsDynamic(request.params[0], context);
|
|
334
233
|
for (const log of _logs) {
|
|
335
234
|
logs.push(log);
|
|
336
235
|
}
|