From bcfc442cca0f64ba51870bd6325171f73dc5c7f9 Mon Sep 17 00:00:00 2001 From: CounterFire2023 <136581895+CounterFire2023@users.noreply.github.com> Date: Fri, 30 Jun 2023 15:43:59 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=B2=E5=8D=95=E6=AC=A1=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E4=BA=8B=E4=BB=B6=E7=9A=84=E9=99=90=E5=88=B6=E5=86=99=E5=85=A5?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/contract.util.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/utils/contract.util.ts b/src/utils/contract.util.ts index f6aae66..cabd3b5 100644 --- a/src/utils/contract.util.ts +++ b/src/utils/contract.util.ts @@ -7,7 +7,7 @@ const ONE = toBN(1) const TWO = toBN(2) const queryRange = toBN(1000) // 返回数据如果达到这个数值, 需要拆分块的区间, 重新获取 -const RESULT_LIMIT_COUNT = 99 +const RESULT_LIMIT_COUNT = parseInt(process.env.RESULT_LIMIT_COUNT) // 单个块event数量超过该值, 需要独立请求 const SPLIT_LIMIT_COUNT = 40 @@ -68,7 +68,8 @@ export async function getPastEvents({ toBlock, }) logger.debug(`from: ${fromBlock} to: ${toBlock} events: ${events.length}`) - if (events.length >= RESULT_LIMIT_COUNT) { + // 有些公共节点会限制返回事件数量, 需要拆分块的区间, 重新获取 + if (RESULT_LIMIT_COUNT > 0 && events.length >= RESULT_LIMIT_COUNT) { events = await divQueryPassEvents({ contract, event,