4

I get this error when trying to open a wallet with 0.10.0 that I created with 0.9.4:

> ./monero/monero-wallet-cli --wallet-file wallet-2016-06-14
Creating the logger system
Monero 'Wolfram Warptangent' (v0.10.0.0-release)
Logging at log level 0 to /home/xxx/./monero/monero-wallet-cli.log
password: *********
Error: failed to load wallet: std::bad_alloc
Error: You may want to remove the file "wallet-2016-06-14" and try again

Shouldn't wallets be compatible between 0.9.4 and 0.10.0? I'm running on OpenSuSE Leap 42.1 using the binaries from http://getmonero.org (both when I created the wallet with 0.9.4, and now with 0.10.0).

What should I do now to use my wallets with 0.10.0?

2 Answers 2

9

This is a known bug (see https://github.com/monero-project/monero/issues/1106), though the root cause is only suspected now known to be a difference in Boost versions used in the binaries for 0.10.0 and 0.9.4. The file that fails to load is only the cache, not the keys, so if you remove the cache, the wallet will load. Bear in mind that the cache may contain tx keys for past transactions, so removing the cache will lose them.

Note: it is recommended that you keep a copy of the cache anyway, as you may need it if you need to prove a transaction (then you can tempporarily load your wallet with 0.9.4 again to perform the operation, then go back to 0.10.0).

In the hopefully near future, the wallet cache will be moved to a LMDB database, so these compatibility issues will become moot.

6

Here is what you can do:

  1. First of all, it is a good idea to keep a copy of your previous Monero client. And I mean even the old blockchain lmdb contents, but specially your keys and wallet files, of course. I say that because, worse comes to worst, you can always go back and run ./simplewallet and access the contents of your old wallets in its entirety (eventually the old client version will become obsolete, but this is just for backup purposes).

  2. Make sure to copy only the wallet-2016-06-14.keys file to the new monero directory (the one where you have monero-wallet-cli). You should not copy the wallet-2016-06-14 file to the new monero directory; if you did, delete it from that directory before proceeding, it will be created anew based on your keys and a new scan of the blockchain.

  3. From your monero directory, run:

    monero-wallet-cli --wallet-file wallet-2016-06-14
    
  4. Use your password and wait the rescan to complete. This can take a while, but at least there will be a display of the progress :)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.