ponder 0.17.7 → 0.17.9

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 CHANGED
@@ -1,5 +1,21 @@
1
1
  # ponder
2
2
 
3
+ ## 0.17.9
4
+
5
+ ### Patch Changes
6
+
7
+ - [#2377](https://github.com/ponder-sh/ponder/pull/2377) [`f0f413d`](https://github.com/ponder-sh/ponder/commit/f0f413da6144eab9c48824c4130c7582229bfaa4) Thanks [@DicksonWu654](https://github.com/DicksonWu654)! - Fixed a bug that caused SQL-over-HTTP cache invalidation and live updates to use the wrong table dependencies.
8
+
9
+ - [#2378](https://github.com/ponder-sh/ponder/pull/2378) [`25b6697`](https://github.com/ponder-sh/ponder/commit/25b66975cec9fe52f95032092c51a915faee3348) Thanks [@DicksonWu654](https://github.com/DicksonWu654)! - Fixed a bug that caused crash recovery to fail with `Finalized block for chain "<id>" cannot move backwards` in `ordering: "multichain"` apps with empty schemas.
10
+
11
+ - [#2376](https://github.com/ponder-sh/ponder/pull/2376) [`3e092e2`](https://github.com/ponder-sh/ponder/commit/3e092e28eee8c7e4e1cc24a1977f4570ff7af779) Thanks [@DicksonWu654](https://github.com/DicksonWu654)! - Fixed a bug that caused failed `/sql/live` requests to exhaust the live query limit.
12
+
13
+ ## 0.17.8
14
+
15
+ ### Patch Changes
16
+
17
+ - [#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.
18
+
3
19
  ## 0.17.7
4
20
 
5
21
  ### Patch Changes
@@ -336,105 +336,119 @@ export const client = ({ db, schema, }) => {
336
336
  return c.text("Maximum number of live queries reached", 503);
337
337
  }
338
338
  liveQueryCount++;
339
- c.header("Content-Type", "text/event-stream");
340
- c.header("Cache-Control", "no-cache");
341
- c.header("Connection", "keep-alive");
342
- const queryString = c.req.query("sql");
343
- if (queryString === undefined) {
344
- return c.text('Missing "sql" query parameter', 400);
345
- }
346
- const query = superjson.parse(queryString);
339
+ let hasLiveQuerySlot = true;
340
+ let isStreaming = false;
341
+ const releaseLiveQuerySlot = () => {
342
+ if (hasLiveQuerySlot === false)
343
+ return;
344
+ hasLiveQuerySlot = false;
345
+ liveQueryCount--;
346
+ };
347
347
  try {
348
- await validateAllowableSQLQuery(query.sql);
349
- }
350
- catch (error) {
351
- error.stack = undefined;
352
- return c.text(error.message, 500);
353
- }
354
- const relations = await getSQLQueryRelations(query.sql);
355
- const referencedTables = new Set();
356
- for (const relation of relations) {
357
- if (tableNames.has(relation)) {
358
- referencedTables.add(relation);
348
+ c.header("Content-Type", "text/event-stream");
349
+ c.header("Cache-Control", "no-cache");
350
+ c.header("Connection", "keep-alive");
351
+ const queryString = c.req.query("sql");
352
+ if (queryString === undefined) {
353
+ return c.text('Missing "sql" query parameter', 400);
359
354
  }
360
- else if (viewNames.has(relation)) {
361
- for (const tableName of perViewTables.get(relation)) {
362
- referencedTables.add(tableName);
355
+ const query = superjson.parse(queryString);
356
+ try {
357
+ await validateAllowableSQLQuery(query.sql);
358
+ }
359
+ catch (error) {
360
+ error.stack = undefined;
361
+ return c.text(error.message, 500);
362
+ }
363
+ const relations = await getSQLQueryRelations(query.sql);
364
+ const referencedTables = new Set();
365
+ for (const relation of relations) {
366
+ if (tableNames.has(relation)) {
367
+ referencedTables.add(relation);
368
+ }
369
+ else if (viewNames.has(relation)) {
370
+ for (const tableName of perViewTables.get(relation)) {
371
+ referencedTables.add(tableName);
372
+ }
363
373
  }
364
374
  }
365
- }
366
- let result;
367
- if (cache.has(queryString)) {
368
- const resultRef = cache.get(queryString).deref();
369
- if (resultRef === undefined) {
370
- cache.delete(queryString);
375
+ let result;
376
+ if (cache.has(queryString)) {
377
+ const resultRef = cache.get(queryString).deref();
378
+ if (resultRef === undefined) {
379
+ cache.delete(queryString);
380
+ const resultPromise = getQueryResult(query);
381
+ cache.set(queryString, new WeakRef(resultPromise));
382
+ perQueryReferences.set(queryString, referencedTables);
383
+ registry.register(resultPromise, queryString);
384
+ result = await resultPromise;
385
+ }
386
+ else {
387
+ result = await resultRef;
388
+ }
389
+ }
390
+ else {
371
391
  const resultPromise = getQueryResult(query);
372
392
  cache.set(queryString, new WeakRef(resultPromise));
373
393
  perQueryReferences.set(queryString, referencedTables);
374
394
  registry.register(resultPromise, queryString);
375
395
  result = await resultPromise;
376
396
  }
377
- else {
378
- result = await resultRef;
379
- }
380
- }
381
- else {
382
- const resultPromise = getQueryResult(query);
383
- cache.set(queryString, new WeakRef(resultPromise));
384
- perQueryReferences.set(queryString, referencedTables);
385
- registry.register(resultPromise, queryString);
386
- result = await resultPromise;
387
- }
388
- let resultHash = crypto
389
- .createHash("MD5")
390
- // @ts-expect-error
391
- .update(JSON.stringify(result.rows))
392
- .digest("hex")
393
- .slice(0, 10);
394
- return streamSSE(c, async (stream) => {
395
- stream.onAbort(() => {
396
- liveQueryCount--;
397
- });
398
- while (stream.closed === false && stream.aborted === false) {
399
- await Promise.race(Array.from(referencedTables).map((relation) => perTableResolver.get(relation).promise));
400
- try {
401
- let resultPromise;
402
- if (cache.has(queryString)) {
403
- const resultRef = cache.get(queryString).deref();
404
- if (resultRef === undefined) {
405
- cache.delete(queryString);
397
+ let resultHash = crypto
398
+ .createHash("MD5")
399
+ // @ts-expect-error
400
+ .update(JSON.stringify(result.rows))
401
+ .digest("hex")
402
+ .slice(0, 10);
403
+ const response = streamSSE(c, async (stream) => {
404
+ stream.onAbort(releaseLiveQuerySlot);
405
+ while (stream.closed === false && stream.aborted === false) {
406
+ await Promise.race(Array.from(referencedTables).map((relation) => perTableResolver.get(relation).promise));
407
+ try {
408
+ let resultPromise;
409
+ if (cache.has(queryString)) {
410
+ const resultRef = cache.get(queryString).deref();
411
+ if (resultRef === undefined) {
412
+ cache.delete(queryString);
413
+ resultPromise = getQueryResult(query);
414
+ cache.set(queryString, new WeakRef(resultPromise));
415
+ perQueryReferences.set(queryString, referencedTables);
416
+ registry.register(resultPromise, queryString);
417
+ }
418
+ else {
419
+ resultPromise = resultRef;
420
+ }
421
+ }
422
+ else {
406
423
  resultPromise = getQueryResult(query);
407
424
  cache.set(queryString, new WeakRef(resultPromise));
408
425
  perQueryReferences.set(queryString, referencedTables);
409
426
  registry.register(resultPromise, queryString);
410
427
  }
411
- else {
412
- resultPromise = resultRef;
413
- }
428
+ const result = await resultPromise;
429
+ const _resultHash = crypto
430
+ .createHash("MD5")
431
+ // @ts-expect-error
432
+ .update(JSON.stringify(result.rows))
433
+ .digest("hex")
434
+ .slice(0, 10);
435
+ if (_resultHash === resultHash)
436
+ continue;
437
+ resultHash = _resultHash;
438
+ await stream.writeSSE({ data: JSON.stringify(result) });
414
439
  }
415
- else {
416
- resultPromise = getQueryResult(query);
417
- cache.set(queryString, new WeakRef(resultPromise));
418
- perQueryReferences.set(queryString, referencedTables);
419
- registry.register(resultPromise, queryString);
440
+ catch {
441
+ stream.abort();
420
442
  }
421
- const result = await resultPromise;
422
- const _resultHash = crypto
423
- .createHash("MD5")
424
- // @ts-expect-error
425
- .update(JSON.stringify(result.rows))
426
- .digest("hex")
427
- .slice(0, 10);
428
- if (_resultHash === resultHash)
429
- continue;
430
- resultHash = _resultHash;
431
- await stream.writeSSE({ data: JSON.stringify(result) });
432
- }
433
- catch {
434
- stream.abort();
435
443
  }
436
- }
437
- });
444
+ });
445
+ isStreaming = true;
446
+ return response;
447
+ }
448
+ finally {
449
+ if (isStreaming === false)
450
+ releaseLiveQuerySlot();
451
+ }
438
452
  }
439
453
  return next();
440
454
  });
@@ -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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"}
@@ -259,11 +259,12 @@ export const finalizeOmnichain = async (qb, { checkpoint, tables, namespaceBuild
259
259
  };
260
260
  export const finalizeMultichain = async (qb, { checkpoint, tables, namespaceBuild, }, context) => {
261
261
  const PONDER_CHECKPOINT = getPonderCheckpointTable(namespaceBuild.schema);
262
- // TODO(kyle) is this breaking an invariant?
262
+ const chainId = Number(decodeCheckpoint(checkpoint).chainId);
263
263
  if (tables.length === 0) {
264
264
  await qb.wrap((db) => db
265
265
  .update(PONDER_CHECKPOINT)
266
- .set({ finalizedCheckpoint: checkpoint, safeCheckpoint: checkpoint }), context);
266
+ .set({ finalizedCheckpoint: checkpoint, safeCheckpoint: checkpoint })
267
+ .where(eq(PONDER_CHECKPOINT.chainId, chainId)), context);
267
268
  return;
268
269
  }
269
270
  // NOTE: It is invariant that PONDER_CHECKPOINT has a value for each chain.
@@ -271,7 +272,7 @@ export const finalizeMultichain = async (qb, { checkpoint, tables, namespaceBuil
271
272
  await tx.wrap((tx) => tx
272
273
  .update(PONDER_CHECKPOINT)
273
274
  .set({ finalizedCheckpoint: checkpoint })
274
- .where(eq(PONDER_CHECKPOINT.chainId, Number(decodeCheckpoint(checkpoint).chainId))));
275
+ .where(eq(PONDER_CHECKPOINT.chainId, chainId)));
275
276
  const minOperationId = await tx
276
277
  .wrap((tx) => tx.execute(`
277
278
  SELECT MIN(operation_id) AS operation_id FROM (
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/database/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/database/actions.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));