Skip to content

Commit

Permalink
perf: Dont fetch masterchef sanity check if there is no valid pool
Browse files Browse the repository at this point in the history
  • Loading branch information
memoyil committed Oct 3, 2024
1 parent 83358cb commit f0fac89
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions apps/web/src/state/farmsV4/state/poolApr/fetcher.ts
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,12 @@ const getV3PoolsCakeAprByChainId = async (pools: V3PoolInfo[], chainId: number,

if (!masterChefV3 || !client) return {}

const validPools = pools.filter((pool) => {
return pool.pid && pool.chainId === chainId
})

if (!validPools?.length) return {}

const [totalAllocPoint, latestPeriodCakePerSecond] = await Promise.all([
masterChefV3CacheMap.get(chainId)?.totalAllocPoint ?? masterChefV3.read.totalAllocPoint(),
masterChefV3CacheMap.get(chainId)?.latestPeriodCakePerSecond ?? masterChefV3.read.latestPeriodCakePerSecond(),
Expand All @@ -243,10 +249,6 @@ const getV3PoolsCakeAprByChainId = async (pools: V3PoolInfo[], chainId: number,
latestPeriodCakePerSecond,
})

const validPools = pools.filter((pool) => {
return pool.pid && pool.chainId === chainId
})

const poolInfoCalls = validPools.map(
(pool) =>
({
Expand Down Expand Up @@ -389,6 +391,8 @@ const getV2PoolsCakeAprByChainId = async (
const client = publicClient({ chainId })
const validPools = pools.filter((p) => p.chainId === chainId && p.bCakeWrapperAddress)

if (!validPools?.length) return {}

const rewardPerSecondCalls = validPools.map((pool) => {
return {
address: pool.bCakeWrapperAddress!,
Expand Down Expand Up @@ -504,7 +508,7 @@ const getV2PoolsCakeApr = async (pools: Array<V2PoolInfo | StablePoolInfo>): Pro
const poolsByChainId = groupBy(pools, 'chainId')
const aprs = await Promise.all(
Object.keys(poolsByChainId).map((chainId) =>
getV2PoolsCakeAprByChainId(poolsByChainId[Number(chainId)], Number(chainId), cakePrice),
getV2PoolsCakeAprByChainId(poolsByChainId[chainId], Number(chainId), cakePrice),
),
)
return aprs.reduce((acc, apr) => assign(acc, apr), {})
Expand Down

0 comments on commit f0fac89

Please sign in to comment.