6

Something very peculiar has happened with a transaction and I would like to understand what network conditions can possibly be the cause of this.

I transferred about 150mBTC from my Android wallet to my bitcoin core HD wallet (v0.13.0) I have done quite a few of these transfers, and typically within at most a few seconds, the transaction is relayed by the network and appears in my bitcoin core mempool. In this case, the transaction still has not been seen by bitcoin-qt for almost an hour. It is a very ordinary transaction with quite a high fee of 0.1 mBTC (for only 225 bytes).

I initially thought that my Android had failed to broadcast the transaction. However, this assumption can be dismissed as blockchain.info has successfully received it, providing me with a transaction id.

I then thought that bitcoin-qt possibly did not recognize the transaction was in relation to my HD wallet. However, it seems that the transaction was in fact never received by my node:

$ cat ~/.bitcoin/debug.log | grep <transaction id>    # nothing appears

So I am now under the impression that the transaction was successfully broadcast but for some reason was never relayed to my node. In fact, something like 5 new blocks have appeared since the initial broadcast and the transaction still isn't confirmed (which given the level of fees and no apparent network bottleneck seems very unusual). So I am now under the impression that some miners may not have seen the transaction either (after all if this can happen to my node, why not others?)

Incidentally I have tried to re-broadcast the transaction with https://blockchain.info/pushtx and the raw transaction id, but it tells me the transaction already exists.

Does anyone have a plausible explanation of what may trigger this sort of rare event, where a transaction is seemingly successfully broadcast, but not all nodes seem to hear about it (assuming this interpretation is valid)?

EDIT: Actually looking at https://blockchain.info/unconfirmed-transactions, as I was writing up this question until now, the number has been rising and is now showing about 18k unmatched transactions which seems to point at abnormal network conditions (typically 2k-4k)

EDIT: The transaction was eventually confirmed about 10 blocks later. The fact remains that it was seemingly never relayed to my node until its inclusion in a new block.

1

It's not a rare event. It's the nature of the network that not all transactions will reach all nodes. There's also the possibility that some nodes have heard of the transaction but then dropped it from their mempool when they encountered higher fee transactions. They do this to prevent DDoS attacks because memory is a scarce resource and they can only hold so many unconfirmed transactions in their mempool.

Once the transaction confirms everyone will hear about it because it'll have been incorporated in a block. So I wouldn't worry about it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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