ThreadFlushWalletDB takes a long time with a big wallet.dat #178

Closed
Wack0 opened this Issue Jan 30, 2014 · 6 comments

Comments

Projects
None yet
7 participants

Wack0 commented Jan 30, 2014

I have a 400MB wallet.dat and ThreadFlushWalletDB takes upwards of 60 seconds every time. I've had to compile my own dogecoind without ThreadFlushWalletDB running specifically because this was lagging transactions (even with 100 rpcthreads).

Hopefully this can be fixed.

This comment has been minimized.

Show comment Hide comment
@billym2k

billym2k Feb 5, 2014

Contributor

What is ThreadFlushWalletDB good for? Does it occur frequently while running dogecoind? Could it result in 100% cpus?

Contributor

billym2k commented Feb 5, 2014

What is ThreadFlushWalletDB good for? Does it occur frequently while running dogecoind? Could it result in 100% cpus?

This comment has been minimized.

Show comment Hide comment
@Wack0

Wack0 Feb 6, 2014

According to coding.md, ThreadFlushWalletDB closes wallet.dat if it hasn't been used for 500ms. Which is fine for a smaller wallet.dat but obviously would cause issues with a big one.

It does occur frequently when running dogecoind. I ended up rebuilding my wallet.dat to stop the lag, but after a week or so it grew to 50MB and dogecoind stopped syncing with the block chain after a while of it running (so payments never got sent). So it looks like there's some bug somewhere, but no idea where: as a temporary solution I can rebuild wallet.dat every week.

(I also am now using the original dogecoind with ThreadFlushWalletDB so I can check debug.log and see how long it takes with a wallet.dat of however much size)

Wack0 commented Feb 6, 2014

According to coding.md, ThreadFlushWalletDB closes wallet.dat if it hasn't been used for 500ms. Which is fine for a smaller wallet.dat but obviously would cause issues with a big one.

It does occur frequently when running dogecoind. I ended up rebuilding my wallet.dat to stop the lag, but after a week or so it grew to 50MB and dogecoind stopped syncing with the block chain after a while of it running (so payments never got sent). So it looks like there's some bug somewhere, but no idea where: as a temporary solution I can rebuild wallet.dat every week.

(I also am now using the original dogecoind with ThreadFlushWalletDB so I can check debug.log and see how long it takes with a wallet.dat of however much size)

This comment has been minimized.

Show comment Hide comment
@asadhaider

asadhaider Feb 6, 2014

Contributor

I've been having this issue as well, flushing wallet.dat takes up to 10 seconds sometimes in my wallet and RPC commands seem to hang until the flushing has finished (they're definitely delayed).

This message in the bitcoin development mailing list mentions the issue too:
http://sourceforge.net/mailarchive/message.php?msg_id=31482185

Contributor

asadhaider commented Feb 6, 2014

I've been having this issue as well, flushing wallet.dat takes up to 10 seconds sometimes in my wallet and RPC commands seem to hang until the flushing has finished (they're definitely delayed).

This message in the bitcoin development mailing list mentions the issue too:
http://sourceforge.net/mailarchive/message.php?msg_id=31482185

@ummjackson ummjackson self-assigned this Feb 9, 2014

This comment has been minimized.

Show comment Hide comment
@leofidus

leofidus Apr 15, 2014

Contributor

does this problem still exist in Dogecoin Core 1.7?

Contributor

leofidus commented Apr 15, 2014

does this problem still exist in Dogecoin Core 1.7?

This comment has been minimized.

Show comment Hide comment
@rnicoll

rnicoll Apr 15, 2014

Owner

Don't think we'll know until heavy users start with the 1.7 beta...

Owner

rnicoll commented Apr 15, 2014

Don't think we'll know until heavy users start with the 1.7 beta...

This comment has been minimized.

Show comment Hide comment
@leofidus

leofidus May 13, 2014

Contributor

Any updates now that more people have large testnet wallets?

Contributor

leofidus commented May 13, 2014

Any updates now that more people have large testnet wallets?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment