11

When I opened my account in simplewallet, it said that my transaction failed even though I saw them in a transaction pool on a block explorer. What does the message mean in simplewallet?

2 Answers 2

12

Once the wallet creates a transaction, it can fail at several steps.

The first one is to be rejected by the daemon. This can happen if the daemon sees that transction uses already spent key images, has too low a fee, etc. Normally, this should not happen, and the ringCT branch contains fixes for a few of these problems - hopefully fixing all of it.

When this happens, the wallet will warn you with a red message when trying to send.

The second one is that the transaction will never be mined. It may be that the daemon accepted the transction, but other nodes will not accept it, or will never mine it, or simply were never told about it (the latter one could be a temporary problem if using a new daemon with an older wallet).

When this happens, the wallet will first show the transaction as pending in the transactions history (show_transfers), while the transaction is waiting to be mined in the pool. If it is dropped by the pool, and was not added to the blockchain, this status will then change to failed. At this point, you used to need to run rescan_spent as the wallet became confused about which coins were spent and which were not, but this is now fixed in the RingCT branch (this one does seem to fix a lot of things, doesn't it).

1
  • rejected by the daemon can also happen if the last transaction is not long time ago as each transaction has to be confirmed with 10 blocks before the wallet is available for further transactions.
    – David
    Commented Feb 4, 2018 at 22:00
7

Failed means two things happened:
the wallet sent a tx, which was accepted by the daemon. sometime later, the wallet doesn't find it in the pool nor the blockchain. There are fixes for this in newer versions.

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