[Bitcoin-development] What is the danger if bitcoind startted with -flushwallet=false ?
laanwj at gmail.com
Wed Aug 13 20:29:28 UTC 2014
On Wed, Aug 13, 2014 at 6:22 PM, 潘庆庆 <qingqing.pan at okcoin.com> wrote:
> Hi everybody,
> I tried to reduce the IO of bitcoind, and I found '-flushwallet=false'. After trying it, my IO reduced greatly.
> But why 'flushwallet' is true by default? Is there any danger if closing the flush wallet thread?
> I lost all my coins in testnet after one crash with '-flushwallet=false', was this because of no flush wallet thread?
When flushwallet is disabled, the wallet is not flushed (written to
disk in a self-contained state) periodically. This means that there's
a larger chance that the wallet database is in inconsistent state when
the process stops unexpectedly. This can happen either due to a crash,
or an external cause such as the power turning off unexpectedly.
With the wallet in non-self-contained state, the next time that you
start bitcoind BerkeleyDB will have to process log files. There is a
non-zero chance that this will fail and manual recovery is needed.
As the wallet is usually critical, it is unwise to disable that option.
More information about the bitcoin-dev