I'm testing an application based on bitcoinj so I've been sending small amounts for days and it worked fine – transaction fees are set by default to BTC 0.00001. As of yesterday, these small transactions just remain unconfirmed... I guess because the Bitcoin network also considers volumes. Is that assumption correct? What is a reasonable fee to prevent this inconvenient? And last but not least, how do I recover my unconfirmed transactions?
CoinWallet began a different kind of stress test within the past several days. After concerns about the method in which it conducts stress tests being a violation of laws in the UK, it decided to stress test the system by giving away 200 BTC for free to the public in a manner which will have the same effect without being a criminal act.
CoinWallet is giving away private keys that have (cumulatively) up to 200 BTC in them. The BTC community is raising to load the wallets and send the transactions to their own private addresses so that they can get to the free money. The result of this competitive fight for the 200 BTC is that the memory pools of full nodes are being filled with double spends and transactions that will never be verified. Eventually, the double spends will be dropped as one of the spends makes it into a block and the remaining spends become invalid, but until then, all the nodes and all the miners are overwhelmed with a lot of extra data, which places small transactions especially those with low or no fees at the back of the priority list.
The good news is that the priority function increases the priority of all transactions as a function of time, so that even no-fee transactions will eventually have a high enough priority to be forced into the next block. However, there is no way to predict how long that will be.
You will get your test transactions back. They will confirm eventually. During this stress test however, it may take as much as several days if you are unlucky.
After all the BTC that have been given away have been fully processed and all the double spends have been cleared from the mem pool, you should see normal confirmation times return to the network.
You have to calculate the fee depending on the size of the transaction.
Here it is described:
Now is problem with the transaction throughput, because CoinWallet doing stress test and sends a lot of transactions.
I think that if you calculate the fee correctly the problem not affect you. If your transactions remain uncommitted you will get your Bitcoins back.