sparrowwallet / sparrow

Desktop Bitcoin Wallet focused on security and privacy. Free and open source.
https://sparrowwallet.com/
Apache License 2.0
1.33k stars 187 forks source link

Mixing Wallet Failing to Connect to Node #1190

Closed abundantone closed 10 months ago

abundantone commented 10 months ago

I have been communicating with Craig Raw on Telegram regarding this issue and he asked me to create this support ticket.

Here are the facts:

I've been running Sparrow 1.7.3 successfully on MacOS (Big Sur 11.7.10) for the past 10 months.

I connect to my own Bitcoin Core full node.

All of my sparrow wallets were connecting to my node however the mixing wallet suddenly stopped connecting.

I get an error message: 'Connection Failed: Server Error'.

There is no issue with my bitcoin node; it is up and running and connecting to my other sparrow wallets.

I have updated to Sparrow 1.8.1 but the issue with the mixing wallet failing to connect to the server persists.

I also checked the config file as Craig Raw suggested and it is set to:

“Uselegacycorewallet”: false

I have attached the log.

Looking forward to getting this issue resolved.

Thanks!

sparrow log.log sparrow log.log

craigraw commented 10 months ago

See https://bitcoin.stackexchange.com/questions/81447/rpc-giving-error-13 - it appears Bitcoin Core is trying to load a wallet, finding that a passphrase is required, and failing. Unfortunately it doesn't give the name of the wallet.

Sparrow uses one of two wallets in Bitcoin Core depending on whether you are legacy Core wallets, or the newer descriptor wallets. Neither use passphrase encryption. So either something else has added a passphrase to these wallets, or there is some other wallet that requires a passphrase before wallet functionality is enabled.

You can try closing Sparrow and Bitcoin Core and deleting the Core wallets from the Bitcoin Core data directory until things work again. Sparrow's wallets are called cormorant and sparrow. Sparrow will recreate these wallets if necessary, but rescanning will be required.

Alternatively, you can enable DEBUG logging by opening Terminal and running:

open /Applications/Sparrow.app --args -l DEBUG

This will do a lot more logging, but will provide more clues to the problem.

abundantone commented 10 months ago

Hi Craig,

This makes sense.

I remember creating a wallet via Bitcoin Core just before this issue appeared.

There are no assets in that Bitcoin Core wallet.

The Bitcoin Core wallet is 'encrypted'.

Can you guide me through the steps I would need to take to delete this Bitcoin Core wallet?

Thanks very much in advance

[image: Screen Shot 2023-12-03 at 10.18.14 AM.png]

[image: Screen Shot 2023-12-03 at 10.18.24 AM.png]

On Sun, Dec 3, 2023 at 12:08 AM craigraw @.***> wrote:

See https://bitcoin.stackexchange.com/questions/81447/rpc-giving-error-13

  • it appears Bitcoin Core is trying to load a wallet, finding that a passphrase is required, and failing. Unfortunately it doesn't give the name of the wallet.

Sparrow uses one of two wallets in Bitcoin Core depending on whether you are legacy Core wallets, or the newer descriptor wallets. Neither use passphrase encryption. So either something else has added a passphrase to these wallets, or there is some other wallet that requires a passphrase before wallet functionality is enabled.

You can try closing Sparrow and Bitcoin Core and deleting the Core wallets from the Bitcoin Core data directory until things work again. Sparrow's wallets are called cormorant and sparrow. Sparrow will recreate these wallets if necessary, but rescanning will be required.

Alternatively, you can enable DEBUG logging by opening Terminal and running:

open /Applications/Sparrow.app --args -l DEBUG

This will do a lot more logging, but will provide more clues to the problem.

— Reply to this email directly, view it on GitHub https://github.com/sparrowwallet/sparrow/issues/1190#issuecomment-1837381929, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHJIIFRSXQUVNC4NDIDYJ7TYHQJNFAVCNFSM6AAAAABAEERYQKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZXGM4DCOJSHE . You are receiving this because you authored the thread.Message ID: @.***>

abundantone commented 10 months ago

Some further information.

I do remember the passphrase for the encrypted bitcoin core wallet but I don't remember the name that I gave it.

Looking at Bitcoin Core, this is what I see:

[image: Screen Shot 2023-12-03 at 10.32.00 AM.png]

There is only one wallet showing which is named 'Sparrow' and it is not clickable.

This is 'Sparrow' wallet is the wallet I created originally to connect my Bitcoin Core node to my Sparrow wallet(s).

So, I have no clue as to how to delete the Bitcoin Core wallet that I created a few months ago that seems to be the cause of the current issue.

On Sun, Dec 3, 2023 at 10:22 AM Jeffrey Lee @.***> wrote:

Hi Craig,

This makes sense.

I remember creating a wallet via Bitcoin Core just before this issue appeared.

There are no assets in that Bitcoin Core wallet.

The Bitcoin Core wallet is 'encrypted'.

Can you guide me through the steps I would need to take to delete this Bitcoin Core wallet?

Thanks very much in advance

[image: Screen Shot 2023-12-03 at 10.18.14 AM.png]

[image: Screen Shot 2023-12-03 at 10.18.24 AM.png]

On Sun, Dec 3, 2023 at 12:08 AM craigraw @.***> wrote:

See https://bitcoin.stackexchange.com/questions/81447/rpc-giving-error-13

  • it appears Bitcoin Core is trying to load a wallet, finding that a passphrase is required, and failing. Unfortunately it doesn't give the name of the wallet.

Sparrow uses one of two wallets in Bitcoin Core depending on whether you are legacy Core wallets, or the newer descriptor wallets. Neither use passphrase encryption. So either something else has added a passphrase to these wallets, or there is some other wallet that requires a passphrase before wallet functionality is enabled.

You can try closing Sparrow and Bitcoin Core and deleting the Core wallets from the Bitcoin Core data directory until things work again. Sparrow's wallets are called cormorant and sparrow. Sparrow will recreate these wallets if necessary, but rescanning will be required.

Alternatively, you can enable DEBUG logging by opening Terminal and running:

open /Applications/Sparrow.app --args -l DEBUG

This will do a lot more logging, but will provide more clues to the problem.

— Reply to this email directly, view it on GitHub https://github.com/sparrowwallet/sparrow/issues/1190#issuecomment-1837381929, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHJIIFRSXQUVNC4NDIDYJ7TYHQJNFAVCNFSM6AAAAABAEERYQKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZXGM4DCOJSHE . You are receiving this because you authored the thread.Message ID: @.***>

abundantone commented 10 months ago

I am correct in assuming that these 'receiving addresses' are associated with the Bitcoin Core wallet that I created?

[image: Screen Shot 2023-12-03 at 10.38.48 AM.png] [image: Screen Shot 2023-12-03 at 10.38.16 AM.png]

On Sun, Dec 3, 2023 at 10:37 AM Jeffrey Lee @.***> wrote:

Some further information.

I do remember the passphrase for the encrypted bitcoin core wallet but I don't remember the name that I gave it.

Looking at Bitcoin Core, this is what I see:

[image: Screen Shot 2023-12-03 at 10.32.00 AM.png]

There is only one wallet showing which is named 'Sparrow' and it is not clickable.

This is 'Sparrow' wallet is the wallet I created originally to connect my Bitcoin Core node to my Sparrow wallet(s).

So, I have no clue as to how to delete the Bitcoin Core wallet that I created a few months ago that seems to be the cause of the current issue.

On Sun, Dec 3, 2023 at 10:22 AM Jeffrey Lee @.***> wrote:

Hi Craig,

This makes sense.

I remember creating a wallet via Bitcoin Core just before this issue appeared.

There are no assets in that Bitcoin Core wallet.

The Bitcoin Core wallet is 'encrypted'.

Can you guide me through the steps I would need to take to delete this Bitcoin Core wallet?

Thanks very much in advance

[image: Screen Shot 2023-12-03 at 10.18.14 AM.png]

[image: Screen Shot 2023-12-03 at 10.18.24 AM.png]

On Sun, Dec 3, 2023 at 12:08 AM craigraw @.***> wrote:

See https://bitcoin.stackexchange.com/questions/81447/rpc-giving-error-13 - it appears Bitcoin Core is trying to load a wallet, finding that a passphrase is required, and failing. Unfortunately it doesn't give the name of the wallet.

Sparrow uses one of two wallets in Bitcoin Core depending on whether you are legacy Core wallets, or the newer descriptor wallets. Neither use passphrase encryption. So either something else has added a passphrase to these wallets, or there is some other wallet that requires a passphrase before wallet functionality is enabled.

You can try closing Sparrow and Bitcoin Core and deleting the Core wallets from the Bitcoin Core data directory until things work again. Sparrow's wallets are called cormorant and sparrow. Sparrow will recreate these wallets if necessary, but rescanning will be required.

Alternatively, you can enable DEBUG logging by opening Terminal and running:

open /Applications/Sparrow.app --args -l DEBUG

This will do a lot more logging, but will provide more clues to the problem.

— Reply to this email directly, view it on GitHub https://github.com/sparrowwallet/sparrow/issues/1190#issuecomment-1837381929, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHJIIFRSXQUVNC4NDIDYJ7TYHQJNFAVCNFSM6AAAAABAEERYQKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZXGM4DCOJSHE . You are receiving this because you authored the thread.Message ID: @.***>

abundantone commented 10 months ago

[image: Screen Shot 2023-12-03 at 11.07.17 AM.png]

[image: Screen Shot 2023-12-03 at 11.07.17 AM.png]

[image: Screen Shot 2023-12-03 at 11.07.51 AM.png]

On Sun, Dec 3, 2023 at 10:40 AM Jeffrey Lee @.***> wrote:

I am correct in assuming that these 'receiving addresses' are associated with the Bitcoin Core wallet that I created?

[image: Screen Shot 2023-12-03 at 10.38.48 AM.png] [image: Screen Shot 2023-12-03 at 10.38.16 AM.png]

On Sun, Dec 3, 2023 at 10:37 AM Jeffrey Lee @.***> wrote:

Some further information.

I do remember the passphrase for the encrypted bitcoin core wallet but I don't remember the name that I gave it.

Looking at Bitcoin Core, this is what I see:

[image: Screen Shot 2023-12-03 at 10.32.00 AM.png]

There is only one wallet showing which is named 'Sparrow' and it is not clickable.

This is 'Sparrow' wallet is the wallet I created originally to connect my Bitcoin Core node to my Sparrow wallet(s).

So, I have no clue as to how to delete the Bitcoin Core wallet that I created a few months ago that seems to be the cause of the current issue.

On Sun, Dec 3, 2023 at 10:22 AM Jeffrey Lee @.***> wrote:

Hi Craig,

This makes sense.

I remember creating a wallet via Bitcoin Core just before this issue appeared.

There are no assets in that Bitcoin Core wallet.

The Bitcoin Core wallet is 'encrypted'.

Can you guide me through the steps I would need to take to delete this Bitcoin Core wallet?

Thanks very much in advance

[image: Screen Shot 2023-12-03 at 10.18.14 AM.png]

[image: Screen Shot 2023-12-03 at 10.18.24 AM.png]

On Sun, Dec 3, 2023 at 12:08 AM craigraw @.***> wrote:

See https://bitcoin.stackexchange.com/questions/81447/rpc-giving-error-13

  • it appears Bitcoin Core is trying to load a wallet, finding that a passphrase is required, and failing. Unfortunately it doesn't give the name of the wallet.

Sparrow uses one of two wallets in Bitcoin Core depending on whether you are legacy Core wallets, or the newer descriptor wallets. Neither use passphrase encryption. So either something else has added a passphrase to these wallets, or there is some other wallet that requires a passphrase before wallet functionality is enabled.

You can try closing Sparrow and Bitcoin Core and deleting the Core wallets from the Bitcoin Core data directory until things work again. Sparrow's wallets are called cormorant and sparrow. Sparrow will recreate these wallets if necessary, but rescanning will be required.

Alternatively, you can enable DEBUG logging by opening Terminal and running:

open /Applications/Sparrow.app --args -l DEBUG

This will do a lot more logging, but will provide more clues to the problem.

— Reply to this email directly, view it on GitHub https://github.com/sparrowwallet/sparrow/issues/1190#issuecomment-1837381929, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHJIIFRSXQUVNC4NDIDYJ7TYHQJNFAVCNFSM6AAAAABAEERYQKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZXGM4DCOJSHE . You are receiving this because you authored the thread.Message ID: @.***>

craigraw commented 10 months ago

Unfortunately none of the screenshots have come through - it's better to post them on github.com than to use email.

Nonetheless, here is what I would do:

  1. Close Sparrow and shut down Bitcoin Core
  2. In Finder, in the menu bar click Go > Go to Folder... and enter ~/Library/Application Support/Bitcoin
  3. You now need to find and delete the folder containing the encrypted wallet you created. Sometimes wallets are located in a wallets subfolder, most of the time they are just directly in that folder. Folders called blocks and chainstate should not be deleted. The folder called cormorant contains Sparrow's wallet. If you delete it Sparrow will recreate it, but you will need to rescan the blockchain.
  4. Once you have deleted the encrypted wallet folder, you can start Bitcoin Core and then Sparrow.
abundantone commented 10 months ago

Hi Craig,

Thanks so much for your help.

I have located the Wallets folder:

Screen Shot 2023-12-04 at 6 48 07 AM

A subfolder within the Wallet folder is the 'Sparrow' folder.

Other than that I don't see any other wallet file.

Perhaps you see something that I don't?

craigraw commented 10 months ago

It's really unclear what happened. I would just delete the sparrow wallet now. Hopefully that lets you connect again, you'll need to rescan your wallets though.

abundantone commented 10 months ago

Okay, I will do that now. How long will it take to rescan the wallets?

On another note, I am going to download Bitcoin Core and Sparrow onto another MacOS device. I am assuming that I can recover my Sparrow wallet(s) on that new device with the 12-word Sparrow seed that was originally created on the device that is encountering the issue?

abundantone commented 10 months ago

Once I have the new MacOS device up and running, will I be able to connect to my Sparrow wallet(s) from both of these MacOS devices?

craigraw commented 10 months ago

How long will it take to rescan the wallets?

It depends on the wallet birth dates - when the first transaction happened.

I am assuming that I can recover my Sparrow wallet(s) on that new device with the 12-word Sparrow seed that was originally created on the device that is encountering the issue?

Yes. You can also just copy the wallet files across.

Once I have the new MacOS device up and running, will I be able to connect to my Sparrow wallet(s) from both of these MacOS devices?

Yes. Consider running an Electrum server (like Fulcrum or Electrs) though - these are engineering wise a better setup for connecting multiple wallet apps.

abundantone commented 10 months ago

Which one do you like the best; Fulcrum or Electrs?
Do you have a guide that you can send me that will guide me through the setup?

craigraw commented 10 months ago

Which one do you like the best; Fulcrum or Electrs?

Fulcrum. But unfortunately in neither case is it easy to run on macOS - both do not come with precompiled binaries for that platform. This is why many people use a dedicated Linux miniserver, for example those offered by Ronin Dojo or Start9. If you're up to it though, Ministry of Nodes has some great guides as part of the the Node Box series, for example https://www.youtube.com/watch?v=SpQRrbJt7cg&t=4s.

Let me know if your issue is resolved?

abundantone commented 10 months ago

Hi Craig,Yes, the issue was resolved by deleting the Sparrow wallet folder.  Upon rebooting, the Sparrow wallet recreated itself and scanned all the wallets including the mixing wallet.Thanks so much for your help!JoffreyOn Dec 5, 2023, at 3:29 AM, craigraw @.***> wrote:

Which one do you like the best; Fulcrum or Electrs?

Fulcrum. But unfortunately in neither case is it easy to run on macOS - both do not come with precompiled binaries for that platform. This is why many people use a dedicated Linux miniserver, for example those offered by Ronin Dojo or Start9. If you're up to it though, Ministry of Nodes has some great guides as part of the the Node Box series, for example https://www.youtube.com/watch?v=SpQRrbJt7cg&t=4s. Let me know if your issue is resolved?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

craigraw commented 10 months ago

Great, closing this off.