mina-indexer icon indicating copy to clipboard operation
mina-indexer copied to clipboard

Problem: this query takes way too long

Open n1tranquilla opened this issue 6 months ago • 2 comments

(Edited by @robinbb)

This query pins 2 CPUs at 100% and does not return before Cloudflare times out the request (1 minute?).

So, it is unacceptably slow because the front-end seems to hang.

curl 'https://api.minasearch.com/graphql' --data-raw $'{"variables":{"blocks_query":{"creatorAccount":{"publicKey":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc"},"canonical":true},"blocks_limit":25,"blocks_sort_by":"BLOCKHEIGHT_DESC","snarks_sort_by":"BLOCKHEIGHT_DESC","snarks_limit":25,"snarks_query":{"prover":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc","canonical":true,"block":{"creatorAccount":{"publicKey":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc"}}},"trans_limit":25,"trans_sort_by":"BLOCKHEIGHT_DESC","outgoing_trans_query":{"from":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc","canonical":true},"incoming_trans_query":{"canonical":true,"to":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc"},"account_query":{"publicKey":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc"},"internal_commands_limit":25,"internal_commands_sort_by":"BLOCKHEIGHT_DESC","internal_commands_query":{"recipient":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc","canonical":true}},"query":"query AccountActivityQuery(\\n  $blocks_query: BlockQueryInput\u0021\\n  $blocks_limit: Int = 3\\n  $blocks_sort_by: BlockSortByInput\u0021\\n  $snarks_sort_by: SnarkSortByInput\u0021\\n  $snarks_limit: Int = 3\\n  $snarks_query: SnarkQueryInput\u0021\\n  $trans_limit: Int = 10\\n  $trans_sort_by: TransactionSortByInput\u0021\\n  $outgoing_trans_query: TransactionQueryInput\u0021\\n  $incoming_trans_query: TransactionQueryInput\u0021\\n  $account_query: AccountQueryInput\u0021\\n  $internal_commands_limit: Int = 3\\n  $internal_commands_sort_by: FeetransferSortByInput\u0021\\n  $internal_commands_query: FeetransferQueryInput\u0021\\n) {\\n  incoming_transactions: transactions(\\n    sortBy: $trans_sort_by\\n    limit: $trans_limit\\n    query: $incoming_trans_query\\n  ) {\\n    canonical\\n    fee\\n    from\\n    hash\\n    to\\n    amount\\n    block {\\n      dateTime\\n    }\\n    blockHeight\\n    nonce\\n    kind\\n    failureReason\\n    memo\\n  }\\n  outgoing_transactions: transactions(\\n    sortBy: $trans_sort_by\\n    limit: $trans_limit\\n    query: $outgoing_trans_query\\n  ) {\\n    canonical\\n    fee\\n    from\\n    hash\\n    to\\n    amount\\n    block {\\n      dateTime\\n    }\\n    blockHeight\\n    nonce\\n    kind\\n    failureReason\\n    memo\\n  }\\n  feetransfers(\\n    sortBy: $internal_commands_sort_by\\n    limit: $internal_commands_limit\\n    query: $internal_commands_query\\n  ) {\\n    blockHeight\\n    blockStateHash {\\n      stateHash\\n    }\\n    fee\\n    type\\n    dateTime\\n    canonical\\n  }\\n  snarks(sortBy: $snarks_sort_by, limit: $snarks_limit, query: $snarks_query) {\\n    canonical\\n    blockHeight\\n    block {\\n      stateHash\\n    }\\n    fee\\n    dateTime\\n    prover\\n  }\\n  blocks(sortBy: $blocks_sort_by, limit: $blocks_limit, query: $blocks_query) {\\n    canonical\\n    blockHeight\\n    stateHash\\n    dateTime\\n    protocolState {\\n      consensusState {\\n        slot\\n        slotSinceGenesis\\n      }\\n    }\\n    creatorAccount {\\n      publicKey\\n    }\\n    snarkJobs {\\n      blockHeight\\n    }\\n    transactions {\\n      coinbase\\n      userCommands {\\n        blockHeight\\n      }\\n      coinbaseReceiverAccount {\\n        publicKey\\n      }\\n    }\\n  }\\n  accounts(limit: 1, query: $account_query) {\\n    balance\\n    username\\n    nonce\\n    delegate\\n    is_genesis_account\\n  }\\n}\\n","operationName":"AccountActivityQuery"}'

variables:

{
   "variables":{
      "blocks_query":{
         "creatorAccount":{
            "publicKey":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc"
         },
         "canonical":true
      },
      "blocks_limit":25,
      "blocks_sort_by":"BLOCKHEIGHT_DESC",
      "snarks_sort_by":"BLOCKHEIGHT_DESC",
      "snarks_limit":25,
      "snarks_query":{
         "prover":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc",
         "canonical":true,
         "block":{
            "creatorAccount":{
               "publicKey":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc"
            }
         }
      },
      "trans_limit":25,
      "trans_sort_by":"BLOCKHEIGHT_DESC",
      "outgoing_trans_query":{
         "from":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc",
         "canonical":true
      },
      "incoming_trans_query":{
         "canonical":true,
         "to":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc"
      },
      "account_query":{
         "publicKey":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc"
      },
      "internal_commands_limit":25,
      "internal_commands_sort_by":"BLOCKHEIGHT_DESC",
      "internal_commands_query":{
         "recipient":"B62qqa9g4CFfkSuX2j22S52z6UfcDcS9tMTgQrFKZ21v7GrEP6Zu5Tc",
         "canonical":true
      }
   }
}

n1tranquilla avatar Jul 29 '24 12:07 n1tranquilla