What is the danger if bitcoind startted with -flushwallet=false ?

What is the danger if bitcoind startted with -flushwallet=false ?
From: KingK.Pan @ 2014-08-13 16:27 UTC ( / )
  To: bitcoin-development



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?




  --
  Qing Qing Pan
  okcoin.com


  
From: Wladimir @ 2014-08-13 20:29 UTC (permalink / raw)
  To: 潘庆庆;  bitcoin-development

On Wed, Aug 13, 2014 at 6:22 PM, 潘庆庆 <qingqing.pan@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.

Wladimir



 permalink raw reply	[|nested]