3

when use cleos

chuck@chuck-MacBook-Pro:~/seaify/mine/coindream(master↑1|✚3) % cleos 
get transaction 
5af0762b78073cf20769f9ca884e3c4ec29d0d0f564fb4da9c1361e2b7302954 
(master↑1|✚3) Error 3200006: invalid http request Error Details: The 
server has rejected the request as invalid! Please verify this url is      
valid: http://mainnet.eoscalgary.io:80/v1/history/get_transaction If 
the condition persists, please contact the RPC server administrator for 
mainnet.eoscalgary.io!

when query at eosflare, https://eosflare.io/block/13602626, not found this transaction.

But when query at eospark, https://eospark.com/MainNet/block/13602626, it exists.

https://eospark.com/MainNet/tx/5af0762b78073cf20769f9ca884e3c4ec29d0d0f564fb4da9c1361e2b7302954, but i can't know it's status, success or failed

2 Answers 2

1

I can see your transaction on both block explorers, but eosflare labels it as a hard_fail transaction. Therefore, I assume your transaction exceeded the resources it was entitled to without running into an assert.

For reference, according to /libraries/chain/include/eosio/chain/block.hpp there are several states of transactions:

  enum status_enum {
     executed  = 0, ///< succeed, no error handler executed
     soft_fail = 1, ///< objectively failed (not executed), error handler executed
     hard_fail = 2, ///< objectively failed and error handler objectively failed thus no state change
     delayed   = 3, ///< transaction delayed/deferred/scheduled for future execution
     expired   = 4  ///< transaction expired and storage space refuned to user
 };

The reason why cleos didn't find it may have something to do with the read modes that the nodeos you were querrying was running as:

  • speculative : this includes the side effects of unconfirmed transactions.
  • head : this only includes the side effects of transactions which have been included in the produced and signed blocks that are part of the best chain nodeos
  • irreversible : this only includes side effects of transactions which have been confirmed by the network as irreversible.
0

If you see a transaction, that means it went through. If any part of a transaction fails, the entire transaction is rolled back.

See irreversible status: https://bloks.io/transaction/5af0762b78073cf20769f9ca884e3c4ec29d0d0f564fb4da9c1361e2b7302954

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.