invalidate delisted markets

This commit is contained in:
Nour Alharithi
2024-10-07 12:55:57 -07:00
parent 47a5be0518
commit 3743899810
3 changed files with 66 additions and 33 deletions

View File

@@ -22,6 +22,7 @@ import {
BulkAccountLoader,
isOperationPaused,
PerpOperation,
DelistedMarketSetting,
} from '@drift-labs/sdk';
import { RedisClient, RedisClientPrefix } from '@drift/common';
@@ -232,6 +233,7 @@ const main = async (): Promise<void> => {
resubTimeoutMs: 60_000,
},
env: driftEnv,
delistedMarketSetting: DelistedMarketSetting.Discard,
});
let updatesReceivedTotal = 0;

View File

@@ -6,12 +6,10 @@ import {
MarketType,
OpenbookV2Subscriber,
OraclePriceData,
PerpMarkets,
PhoenixSubscriber,
PublicKey,
SerumSubscriber,
SpotMarketConfig,
SpotMarkets,
decodeUser,
isVariant,
} from '@drift-labs/sdk';
@@ -294,9 +292,9 @@ export const validateDlobQuery = (
case 'spot': {
normedMarketType = MarketType.SPOT;
normedMarketIndex = parseInt(marketIndex as string);
const spotMarketIndicies = SpotMarkets[driftEnv].map(
(mkt) => mkt.marketIndex
);
const spotMarketIndicies = driftClient
.getSpotMarketAccounts()
.map((mkt) => mkt.marketIndex);
if (!spotMarketIndicies.includes(normedMarketIndex)) {
return {
error: 'Bad Request: invalid marketIndex',
@@ -307,9 +305,9 @@ export const validateDlobQuery = (
case 'perp': {
normedMarketType = MarketType.PERP;
normedMarketIndex = parseInt(marketIndex as string);
const perpMarketIndicies = PerpMarkets[driftEnv].map(
(mkt) => mkt.marketIndex
);
const perpMarketIndicies = driftClient
.getPerpMarketAccounts()
.map((mkt) => mkt.marketIndex);
if (!perpMarketIndicies.includes(normedMarketIndex)) {
return {
error: 'Bad Request: invalid marketIndex',