PirateNetwork / pirate

Pirate Chain (ARRR) - Untraceable, Anonymous, Private Cryptocurrency
https://piratechain.com
Other
112 stars 27 forks source link

Incorrect system date breaks wallet #22

Closed hobselec closed 3 years ago

hobselec commented 3 years ago

Describe the bug Having incorrectly set the system date a year ahead of time, the chain sync is broken and there are problems with the wallet.dat

To Reproduce A few days ago around December 29th, I set the time to 2021-12-29 then opened komodo-qt. I did this because the system time was behind due to being in sleep mode.

Expected behavior The chain should sync

Screenshots

Desktop (please complete the following information): WSL Ubuntu 20.04 komodo-qt v3.1.0-7dc670273

Additional context After fixing the date and relaunching the application, I can't remember what happened, but the chain state was broken. Originally I tried to resync the chain several times and got a segmentation fault a few weeks before the the last block.

Next I started a new ~/.komodo/PIRATE folder with an older wallet backup and it syncs properly, but when I use my newest wallet (that was not backed up before setting the system time incorrectly), which has an additional receiving address in it, I get more error messages and the chain won't sync. The console gives me this message:

EXCEPTION: St13runtime_error CDB: Error -30972, can't open database Komodo in ProcessMessages()

However, I can see the two receiving addresses in the receive menu and the application does not exit. I went back to syncing with the old wallet. I then opened the application back up with my newest wallet and this happened:

`EXCEPTION: St13runtime_error
CWalletDB::ListAccountCreditDebit(): cannot create DB cursor
Komodo in Runaway exception

komodo-qt: /root/pirate/depends/x86_64-unknown-linux-gnu/share/../include/boost/thread/pthread/condition_variable_fwd.hpp:81: boost::condition_variable::~condition_variable(): Assertion !posix::pthread_mutex_destroy(&internal_mutex)' failed. Aborted`

Please help me, as I do have a transaction with the newer address! I've noticed the wallet size of my original was 92K and when I backed up the current wallet it was 80K. After syncing the chain my (older) wallet was about 209K. Is my newest wallet recoverable?

kaks25 commented 3 years ago

@jnhouse try these troubleshoot

If it doesn't work:

How to import the private key? launch pirateocean > Click on help > debug window > console then type z_importkey Replacewithyourprivatekey yes

CryptoForge commented 3 years ago

Use v3.1.1 with the bootstrap=1 option in your PIRATE.conf file. This will completely reset your block, chainstate and transactions.

hobselec commented 3 years ago

Thank you both very much! It works again and didn't need to import private key.