Granola-Team / mina-indexer

The Mina Indexer is a re-imagined version of the software collectively called the "Mina archive node."
Apache License 2.0
18 stars 10 forks source link

`AccountActivityQuery` is too slow #1131

Closed Isaac-DeFrain closed 3 months ago

Isaac-DeFrain commented 3 months ago
query AccountActivityQuery(
  $blocks_query: BlockQueryInput!
  $blocks_limit: Int = 3
  $blocks_sort_by: BlockSortByInput!
  $snarks_sort_by: SnarkSortByInput!
  $snarks_limit: Int = 3
  $snarks_query: SnarkQueryInput!
  $trans_limit: Int = 10
  $trans_sort_by: TransactionSortByInput!
  $outgoing_trans_query: TransactionQueryInput!
  $incoming_trans_query: TransactionQueryInput!
  $account_query: AccountQueryInput!
) {
  incoming_transactions: transactions(
    sortBy: $trans_sort_by
    limit: $trans_limit
    query: $incoming_trans_query
  ) {
    canonical
    fee
    from
    hash
    to
    amount
    block {
      dateTime
    }
    blockHeight
    nonce
    kind
    failureReason
    memo
  }
  outgoing_transactions: transactions(
    sortBy: $trans_sort_by
    limit: $trans_limit
    query: $outgoing_trans_query
  ) {
    canonical
    fee
    from
    hash
    to
    amount
    block {
      dateTime
    }
    blockHeight
    nonce
    kind
    failureReason
    memo
  }
  snarks(sortBy: $snarks_sort_by, limit: $snarks_limit, query: $snarks_query) {
    canonical
    blockHeight
    block {
      stateHash
    }
    fee
    dateTime
    prover
  }
  blocks(sortBy: $blocks_sort_by, limit: $blocks_limit, query: $blocks_query) {
    canonical
    blockHeight
    stateHash
    dateTime
    protocolState {
      consensusState {
        slot
      }
    }
    creatorAccount {
      publicKey
    }
    snarkJobs {
      blockHeight
    }
    transactions {
      coinbase
      userCommands {
        blockHeight
      }
      coinbaseReceiverAccount {
        publicKey
      }
    }
  }
  accounts(limit: 1, query: $account_query) {
    balance
    username
    nonce
    delegate
  }
}
trevorbernard commented 3 months ago

Closing as it's a duplicate of: https://github.com/Granola-Team/mina-indexer/issues/1140

Isaac-DeFrain commented 3 months ago

Technically, #1140 is a dupe of this issue. But who's keeping track? 🤷