Skip to content

Commit

Permalink
Merge pull request #17 from lyra-finance/revert-15-fix/query-filter-r…
Browse files Browse the repository at this point in the history
…ange

fix: Limit query filter for block numbers
  • Loading branch information
michaelxuwu authored Oct 10, 2022
2 parents 5a0aa23 + a44d045 commit dc66f7f
Showing 1 changed file with 5 additions and 16 deletions.
21 changes: 5 additions & 16 deletions sdk/src/utils/fetchRecentPositionEventsByIDs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import getCollateralUpdateDataFromRecentEvent from './getCollateralUpdateDataFro
import getLyraMarketContract from './getLyraMarketContract'
import getTradeDataFromRecentEvent from './getTradeDataFromRecentEvent'

const BLOCK_LIMIT = 1_000
const BLOCK_LIMIT = 100

type PositionRecentEventData = Omit<PositionEventData, 'settle' | 'transfers'>

Expand All @@ -26,25 +26,16 @@ export default async function fetchRecentPositionEventsByIDs(
return []
}

// Approximately last 5 mins of events
// Approximately last 1 min of events
const fromBlockNumber = market.block.number - BLOCK_LIMIT

const [tradeEvents, updateEvents, transferEvents] = await Promise.all([
marketContract.queryFilter(
marketContract.filters.Trade(null, null, positionIds),
fromBlockNumber,
market.block.number
),
marketContract.queryFilter(marketContract.filters.Trade(null, null, positionIds), fromBlockNumber),
tokenContract.queryFilter(
tokenContract.filters.PositionUpdated(positionIds, null, POSITION_UPDATED_TYPES),
fromBlockNumber,
market.block.number
),
tokenContract.queryFilter(
tokenContract.filters.Transfer(null, null, positionIds),
fromBlockNumber,
market.block.number
fromBlockNumber
),
tokenContract.queryFilter(tokenContract.filters.Transfer(null, null, positionIds), fromBlockNumber),
])

const transfersByIdAndHash: Record<string, ContractTransferEvent[]> = transferEvents.reduce((dict, transfer) => {
Expand All @@ -70,7 +61,6 @@ export default async function fetchRecentPositionEventsByIDs(
transfersByIdAndHash[getTransferKey(tradeEvent.transactionHash, tradeEvent.args.positionId.toNumber())]
return getTradeDataFromRecentEvent(tradeEvent, market, transfers)
} catch (e) {
console.error(e)
return null
}
})
Expand All @@ -83,7 +73,6 @@ export default async function fetchRecentPositionEventsByIDs(
transfersByIdAndHash[getTransferKey(updateEvent.transactionHash, updateEvent.args.positionId.toNumber())]
return getCollateralUpdateDataFromRecentEvent(updateEvent, market, transfers)
} catch (e) {
console.error(e)
return null
}
})
Expand Down

0 comments on commit dc66f7f

Please sign in to comment.