Skip to content

Commit 261e651

Browse files
committed
more temp
1 parent 45fda2c commit 261e651

File tree

3 files changed

+53
-5
lines changed

3 files changed

+53
-5
lines changed

sdk/src/accounts/bulkAccountLoader.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,9 +121,10 @@ export class BulkAccountLoader {
121121
this.lastTimeLoadingPromiseCleared = Date.now();
122122

123123
try {
124+
const acctsArray = Array.from(this.accountsToLoad.values());
124125
const chunks = this.chunks(
125126
this.chunks(
126-
Array.from(this.accountsToLoad.values()),
127+
acctsArray,
127128
GET_MULTIPLE_ACCOUNTS_CHUNK_SIZE
128129
),
129130
10

sdk/src/accounts/customizedCadenceBulkAccountLoader.ts

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,54 @@ export class CustomizedCadenceBulkAccountLoader extends BulkAccountLoader {
5555

5656
private async handleAccountLoading(): Promise<void> {
5757
const accounts = this.getAccountsToLoad();
58+
console.log('ORACLEDATA handleAccountLoading', accounts.length);
59+
60+
const oracleAddresses = [
61+
'3m6i4RFWEDw2Ft4tFHPJtYgmpPe21k56M3FHeWYrgGBz', // SOL
62+
'35MbvS1Juz2wf7GsyHrkCw8yfKciRLxVpEhfZDZFrB4R', // BTC
63+
'93FG52TzNKCnMiasV14Ba34BYcHDb9p4zK4GjZnLwqWR', // ETH
64+
'CXZhzKePYajrZgZyrzgvHYFKK3c5tNgDrRobAgySo8Nb', // APT
65+
'BERaNi6cpEresbq6HC1EQGaB1H1UjvEo4NGnmYSSJof4', // BONK
66+
'HDveCibToLf157NtUqShCEWX3GcF4Aq8Ngt2bst1s1cc', // POL
67+
'r8eNLQ8jysUyk9rrWXuicwAoKZ7V3YngAB6737zfxmv', // BERA
68+
'8M8mjNJ42k2Xi12Q1zRnQRC3xhggu3WGuftiu5VZZmsF', // KAITO
69+
'AZVVDFve8ijzLAm9z6W53GFsoWbcycFsdxCL7WUjMz8S', // IP
70+
'2sZomfWMDuQLcFak3nuharXorHrZ3hK8iaML6ZGSHtso', // FARTCOIN
71+
'55722FS8VeAxRghz5h2ARJvNjkFiHyzkZ9BF7CEQWN6E', // ADA
72+
];
73+
74+
const oracleMatches = accounts.filter(account =>
75+
oracleAddresses.some(addr =>
76+
account.publicKey.toBase58().includes(addr)
77+
)
78+
);
79+
80+
console.log('ORACLEDATA loading oracle accounts:', oracleMatches.length);
81+
console.log('ORACLEDATA oracle pubkeys found:',
82+
oracleMatches.map(account => {
83+
const pubkey = account.publicKey.toBase58();
84+
let marketName = '';
85+
if (pubkey.includes('3m6i4RFWEDw2Ft4tFHPJtYgmpPe21k56M3FHeWYrgGBz')) marketName = 'SOL';
86+
else if (pubkey.includes('35MbvS1Juz2wf7GsyHrkCw8yfKciRLxVpEhfZDZFrB4R')) marketName = 'BTC';
87+
else if (pubkey.includes('93FG52TzNKCnMiasV14Ba34BYcHDb9p4zK4GjZnLwqWR')) marketName = 'ETH';
88+
else if (pubkey.includes('CXZhzKePYajrZgZyrzgvHYFKK3c5tNgDrRobAgySo8Nb')) marketName = 'APT';
89+
else if (pubkey.includes('BERaNi6cpEresbq6HC1EQGaB1H1UjvEo4NGnmYSSJof4')) marketName = 'BONK';
90+
else if (pubkey.includes('HDveCibToLf157NtUqShCEWX3GcF4Aq8Ngt2bst1s1cc')) marketName = 'POL';
91+
else if (pubkey.includes('r8eNLQ8jysUyk9rrWXuicwAoKZ7V3YngAB6737zfxmv')) marketName = 'BERA';
92+
else if (pubkey.includes('8M8mjNJ42k2Xi12Q1zRnQRC3xhggu3WGuftiu5VZZmsF')) marketName = 'KAITO';
93+
else if (pubkey.includes('AZVVDFve8ijzLAm9z6W53GFsoWbcycFsdxCL7WUjMz8S')) marketName = 'IP';
94+
else if (pubkey.includes('2sZomfWMDuQLcFak3nuharXorHrZ3hK8iaML6ZGSHtso')) marketName = 'FARTCOIN';
95+
else if (pubkey.includes('55722FS8VeAxRghz5h2ARJvNjkFiHyzkZ9BF7CEQWN6E')) marketName = 'ADA';
96+
return `${marketName} (${pubkey})`;
97+
})
98+
);
99+
const hasBonkOracle = accounts.some((account) =>
100+
account.publicKey.toBase58().includes(
101+
'BERaNi6cpEresbq6HC1EQGaB1H1UjvEo4NGnmYSSJof4'
102+
)
103+
);
104+
// console.log('ORACLEDATA loading accounts hasBonkOracle', hasBonkOracle);
105+
console.log('ORACLEDATA loading accounts', accounts.map((account) => account.publicKey.toBase58()));
58106

59107
if (accounts.length > 0) {
60108
const chunks = this.chunks(

sdk/src/accounts/externalOracleDataDriftClientSubscriber.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ export class ExternalOracleDataDriftClientSubscriber extends PollingDriftClientA
2626

2727
/** Public method to be called externally with fresh oracle data */
2828
public feedOracle(oracleInfo: OracleInfo, priceData: OraclePriceData, slot: number) {
29-
console.log('ORACLEDATA feedOracle');
3029
const oracleId = getOracleId(oracleInfo.publicKey, oracleInfo.source);
3130
this.oracles.set(oracleId, { data: priceData, slot });
3231
this.oracleLastUpdate.set(oracleId, Date.now());
@@ -51,24 +50,24 @@ export class ExternalOracleDataDriftClientSubscriber extends PollingDriftClientA
5150
}
5251

5352
private startOraclePollingWatchdog() {
53+
// how do we handle not polling bet markets every 1s from this change?
5454
this.oraclePollIntervalId = setInterval(async () => {
5555
for (const [oracleId, oracleToPoll] of this.oraclesToPoll.entries()) {
5656
const lastUpdate = this.oracleLastUpdate.get(oracleId) || 0;
5757
const now = Date.now();
5858
if (now - lastUpdate > 70_000 && !this.pollingOracles.has(oracleId)) {
59-
console.log('ORACLEDATA polling oracle via RPC', oracleToPoll.publicKey.toBase58());
6059
await this.addOracleToAccountLoader(oracleToPoll);
6160
this.pollingOracles.set(oracleId, true);
6261
}
6362
}
64-
}, 70_000);
63+
}, 60_000);
6564
}
6665

6766
public removeAllOraclesFromAccountLoader() {
6867
for (const oracleInfo of this.oracleInfos) {
6968
const existingAccountToLoad = this.accountLoader.accountsToLoad.get(oracleInfo.publicKey.toString());
7069
if (existingAccountToLoad) {
71-
console.log('ORACLEDATA remove from account loader', oracleInfo.publicKey.toBase58());
70+
// console.log('ORACLEDATA remove from account loader', oracleInfo.publicKey.toBase58());
7271
for (const [callbackId] of existingAccountToLoad.callbacks) {
7372
this.accountLoader.removeAccount(oracleInfo.publicKey, callbackId);
7473
}

0 commit comments

Comments
 (0)