diff --git a/src/service/event.sync.service.ts b/src/service/event.sync.service.ts index 5fc1a52..fd179b1 100644 --- a/src/service/event.sync.service.ts +++ b/src/service/event.sync.service.ts @@ -1,4 +1,5 @@ import { HttpRetryProvider } from 'chain/HttpRetryProvider' +import logger from 'logger/logger' import { NftTransferEvent } from 'models/NftTransferEvent' import { RedisClient } from 'redis/RedisClient' @@ -47,7 +48,10 @@ export class EventSyncSvr { this.fromBlock = Math.max(parseInt(blockStr), this.fromBlock) } this.toBlock = currentBlock - console.log(`query events:: ${this.event} address: ${this.address} from: ${this.fromBlock} to: ${this.toBlock}`) + if (this.fromBlock > this.toBlock) { + return + } + logger.log(`query events:: ${this.event} address: ${this.address} from: ${this.fromBlock} to: ${this.toBlock}`) let events = getPastEventsIter({ contract: this.contract, event: this.event, diff --git a/src/utils/contract.util.ts b/src/utils/contract.util.ts index dee330b..0c08cc5 100644 --- a/src/utils/contract.util.ts +++ b/src/utils/contract.util.ts @@ -195,6 +195,7 @@ export function* getPastEventsIter({ yield new RedisClient().set(redisKey, from + '') } yield getPastEvents({ contract, event, fromBlock: from, toBlock: toBlockBN, options }) + yield new RedisClient().set(redisKey, toBlockBN.add(ONE) + '') } export async function processEvents(web3, iterator, processedEvent) {