Post
Topic
Board Bitcoin Technical Support
Re: Bets stuck in SatoshiDice for weeks.
by
Stephen Gornick
on 31/08/2012, 20:03:10 UTC
How would I go about resetting my bitcoin client without losing these 'in limbo' transactions?

SatoshiDICE never got the transactions because they were never accepted by the network.  There is nothing SatoshiDICE can or should do as the Bitcoin transactions for your wagers never confirmed.

Now why this is happening?

What appears to be happening is that your client has some double spend transactions.

That can happen a few ways accidentally (e.g., you have two copies of your wallet.dat and are making spend transactions from both) or purposely (you have a script that tries to wager with SatoshiDICE and then also attempt to double spend the bets that lose via race attack, Finney attack, etc.   There are even situations where if you were specifically targeted, you could see funds on one confirmation but then when you spend them they are invalid -- but that is pretty easily preventable.  Here are the various methods:

 - https://en.bitcoin.it/wiki/Double-spending#Attack_vectors

So, the end result is you have wagers that never got processed and never will.

Unfortunately, the Bitcoin.org client doesn't deal well with these -- there is no way to manually remove the transactions using bitcoind.

The easiest thing to do would be to send your remaining funds to a new address in a new wallet and start clean.

A way to fix the wallet you have involves perofrming wallet surgery to remove the offending private keys (using pywallet) and then rescan.