Error traces "inputs already spent"

+1 vote

In my tests I see many times the next error message in traces:

2016-06-13 18:33:15 ERROR: AcceptToMemoryPool : inputs already spent

Is it really an error, or only a warning of the wallet? Beacause I think the wallet retries the operation with new calculated inputs.

Thanks,

  Fernando

asked Jun 13, 2016 by Fernando

I have grep from our log file, and there are many traces with the ERROR tag. Are they really errors?

2016-06-13 19:35:45 mchn: Coin selection: Combine transaction requires extra native currency amountERROR: AcceptToMemoryPool : inputs already spent
2016-06-13 19:35:45 ERROR: AcceptToMemoryPool : inputs already spent
2016-06-13 19:35:50 ERROR: AcceptToMemoryPool : inputs already spent
2016-06-13 19:35:50 ERROR: AcceptToMemoryPool : inputs already spent
2016-06-13 19:35:50 ERROR: AcceptToMemoryPool : inputs already spent
2016-06-13 19:35:50 ERROR: AcceptToMemoryPool : inputs already spent
2016-06-13 19:36:03 ERROR: AcceptToMemoryPool : inputs already spent
2016-06-13 19:36:06 ERROR: ConnectTip() : ConnectBlock 000008920ee6fe6d292cd83a62525a3c9c353da16fd8d9d52f60fe62dd395edb failed
2016-06-13 19:36:06 ERROR: ProcessNewBlock : ActivateBestChain failed
2016-06-13 19:36:06 ERROR: MultiChainMiner : ProcessNewBlock, block not accepted
2016-06-13 19:36:07 ERROR: ConnectTip() : ConnectBlock 000008920ee6fe6d292cd83a62525a3c9c353da16fd8d9d52f60fe62dd395edb failed
2016-06-13 19:36:07 ERROR: ProcessNewBlock : ActivateBestChain failed

And this other:

2016-06-13 19:39:47 ERROR: MultiChainMiner : generated block is stale

 

1 Answer

0 votes
This is not really an error. New transaction is not accepted because one of its inputs cannot be found. There are several situations when it can happen. In your case I think it is related to "generated block is stale" error.

There are several mining nodes. While this node looks for the block, some other node already found the block and it was accepted. As a result when the node finally finds the block - transactions are already confirmed and cannot be accepted again. It is normal situation.
answered Jun 14, 2016 by Michael
Ok, this was my assumption.

Don't you think if this is not an error, it is better to change the message to avoid confusion?

Thanks for your help,
  Fernando
You are right, but we inherited this message from the Bitcoin Core, so we must be very careful when chaniging it. I've looked in the latest Bitcoin code - they removed this message completely, so probably we will do the same or make it less confusing.
Prev Out already spent
...