From 9fe1ea98d63f953d16836d218b46c72e56ef98bc Mon Sep 17 00:00:00 2001 From: CounterFire2023 <136581895+CounterFire2023@users.noreply.github.com> Date: Tue, 16 Jan 2024 10:28:17 +0800 Subject: [PATCH] fix bug --- src/chain/chain.api.ts | 10 ++++++++-- src/models/NftHolder.ts | 3 ++- src/service/block.sync.service.ts | 6 +----- src/service/event.batch.service.ts | 6 ------ 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/src/chain/chain.api.ts b/src/chain/chain.api.ts index af7130c..4e5f24f 100644 --- a/src/chain/chain.api.ts +++ b/src/chain/chain.api.ts @@ -6,8 +6,14 @@ const AbortController = globalThis.AbortController const request = async (url: string, options: any) => { const controller = new AbortController() const timeout = setTimeout(() => controller.abort(), 30000) - const res = await fetch(url, { ...options, signal: controller.signal }) - clearTimeout(timeout) + let res; + try { + res = await fetch(url, { ...options, signal: controller.signal }) + clearTimeout(timeout) + } catch (err) { + clearTimeout(timeout) + throw err; + } return res } diff --git a/src/models/NftHolder.ts b/src/models/NftHolder.ts index b463fe7..c10d63d 100644 --- a/src/models/NftHolder.ts +++ b/src/models/NftHolder.ts @@ -30,7 +30,8 @@ export class NftHolderClass extends BaseModule { const tokenId = event.decodedData.tokenId; const blockNumer = event.blockNumber; const burn = event.decodedData.to === ZERO_ADDRESS - const user = (burn ? event.decodedData.from : event.decodedData.to).toLowerCase() + let user = (burn ? event.decodedData.from : event.decodedData.to).toLowerCase() + user = user.toLowerCase() let record = await NftHolder.findOne({ address, chain, tokenId }) if (!record) { record = new NftHolder({ address, chain, tokenId, blockNumber: blockNumer, user, burn }) diff --git a/src/service/block.sync.service.ts b/src/service/block.sync.service.ts index 3223946..0d1b152 100644 --- a/src/service/block.sync.service.ts +++ b/src/service/block.sync.service.ts @@ -28,7 +28,6 @@ export class BlockSyncSvr { } async execute() { - // try { let currentBlock = await retryEthBlockNumber(this.rpc) let blockStr = await new RedisClient().get(this.redisKey) if (blockStr) { @@ -45,9 +44,6 @@ export class BlockSyncSvr { amount: this.batchCount }) await this.processBlockDatas(blocks) - // } catch (err) { - // console.log(err) - // } } async processBlockDatas(iterator: any) { @@ -82,4 +78,4 @@ export class BlockSyncSvr { } return count } -} \ No newline at end of file +} diff --git a/src/service/event.batch.service.ts b/src/service/event.batch.service.ts index f31e57e..cd0ec1d 100644 --- a/src/service/event.batch.service.ts +++ b/src/service/event.batch.service.ts @@ -41,7 +41,6 @@ export class EventBatchSvr { async execute() { - // try { let currentBlock = await retryEthBlockNumber(this.rpc) let toBlock = parseInt(currentBlock.result, 16) let blockStr = await new RedisClient().get(this.redisKey) @@ -110,11 +109,6 @@ export class EventBatchSvr { await new RedisClient().set(redisKey, cfg.fromBlock + '') } await new RedisClient().set(this.redisKey, nextBlock + '') - - // } catch (err) { - // logger.error('sync events error: ', err.message || err) - // throw err - // } } buildRedisKey(cfg: IEventCfg) {