I’m using the GraphQL API at https://graphql.bitquery.io/ to fetch Solana token transfer data for a specific mint address (e.g., “5DWZ1RAMXwuSr9beXQyfaevX2f6mj6SUn8NbexE6pump”) within a time range (e.g., 2025-03-18T15:01:41Z to 2025-03-19T15:01:41Z). I’ve tried querying under the solana
root field using subfields like transfers
, instructions
, coinpath
, instructionAccounts
, and address
, but none support filtering arguments (where
, time
) or pagination arguments (first
, skip
). Without filtering, the query exceeds the memory limit (74.51 GiB), as seen in this error:
“DB::Exception: Memory limit (for query) exceeded: would use 74.51 GiB (attempt to allocate chunk of 6291456 bytes), maximum: 74.51 GiB: While executing AggregatingTransform.”
Here’s an example query that works syntactically but hits the memory limit:
{ solana { transfers { amount currency { symbol } sender { address } receiver { address } block { timestamp { iso8601 } } } } }
My questions are:
- How can I filter Solana token transfers server-side by mint address and time range to avoid the memory limit error?
- Is there a different endpoint or query structure for fetching DEX trade data on Solana (e.g., a
dexTrades
field)? - Does the API support pagination in a different way (e.g., a global pagination mechanism)?
Thank you for your assistance!