Closed CodeCracker-oss closed 2 years ago
Connecting to the Whirlpool server is unrelated to your Electrum server configuration, except that if you are connecting to a .onion Electrum server address, Sparrow will use the Whirlpool .onion address. It's likely your problem is Tor related, and I suggest restarting your proxy as a first step.
If you would like to try connecting manually (to test the connection), you can connect to
http://udkmfc5j6zvv3ysavbrwzhwji4hpyfe3apqa6yst7c7l32mygf65g4ad.onion/rest/pools/
@craigraw
I have done basic troubleshooting for this issue, such as restart tor more than just a few times and issue keeps occuring. I always run tor before starting sparrow (the official tor ppa), and it bootstraps 100% with no errors. Don't see any tor errors even after the timeout error occurs in sparrow.
If you would like to try connecting manually (to test the connection), you can connect to
http://udkmfc5j6zvv3ysavbrwzhwji4hpyfe3apqa6yst7c7l32mygf65g4ad.onion/rest/pools/
Where do I put this url to test it? In tor browser it just gives 404 error.
Update: one day later, mixing is working again.
When trying to Start Mixing (Postmix - UTXO), I get: Error connecting to Wirlpool server, will retry soon.....
Sparrow 1.6.4 Ubuntu 20.04 using Private Electrum Server over tor (umbrel node) via internal tor, which works fine.
Where do I put this url to test it? In tor browser it just gives 404 error.
Typically I execute this using cURL configured with a Tor proxy as follows:
❯ curl -x socks5h://localhost:9050 http://udkmfc5j6zvv3ysavbrwzhwji4hpyfe3apqa6yst7c7l32mygf65g4ad.onion/rest/pools
{"pools":[{"poolId":"0.01btc","denomination":1000000,"feeValue":50000,"mustMixBalanceMin":1000170,"mustMixBalanceCap":1009690....
This is the same request that Sparrow makes to fetch the pools.
@craigraw
Executing that curl command outputs (I do have tor running @ localhost:9050):
curl -x socks5h://localhost:9050 http://udkmfc5j6zvv3ysavbrwzhwji4hpyfe3apqa6yst7c7l32mygf65g4ad.onion/rest/pools {"pools":[{"poolId":"0.01btc","denomination":1000000,"feeValue":50000,"mustMixBalanceMin":1000170,"mustMixBalanceCap":1009690,"mustMixBalanceMax":1019125,"minAnonymitySet":5,"minMustMix":2,"tx0MaxOutputs":70,"nbRegistered":280,"mixAnonymitySet":5,"mixStatus":"CONFIRM_INPUT","elapsedTime":836976,"nbConfirmed":2},{"poolId":"0.001btc","denomination":100000,"feeValue":5000,"mustMixBalanceMin":100170,"mustMixBalanceCap":109690,"mustMixBalanceMax":119125,"minAnonymitySet":5,"minMustMix":2,"tx0MaxOutputs":25,"nbRegistered":302,"mixAnonymitySet":5,"mixStatus":"CONFIRM_INPUT","elapsedTime":74921,"nbConfirmed":2},{"poolId":"0.05btc","denomination":5000000,"feeValue":175000,"mustMixBalanceMin":5000170,"mustMixBalanceCap":5009690,"mustMixBalanceMax":5019125,"minAnonymitySet":5,"minMustMix":2,"tx0MaxOutputs":70,"nbRegistered":150,"mixAnonymitySet":5,"mixStatus":"CONFIRM_INPUT","elapsedTime":1359709,"nbConfirmed":2},{"poolId":"0.5btc","denomination":50000000,"feeValue":1750000,"mustMixBalanceMin":50000170,"mustMixBalanceCap":50009690,"mustMixBalanceMax":50019125,"minAnonymitySet":5,"minMustMix":2,"tx0MaxOutputs":70,"nbRegistered":44,"mixAnonymitySet":5,"mixStatus":"CONFIRM_INPUT","elapsedTime":24725574,"nbConfirmed":2}]}
Ok, so that establishes this machine can connect to the Whirlpool server over Tor. Sparrow is making the same call when it fetches the pools for mixing. Are you still getting the "Fetching pools timeout" error consistently in Sparrow?
@craigraw
Yes, the fetching pools timeout error continues to occur
It is strange that cURL succeeds in making a request that Sparrow cannot. Sparrow's HTTP client is a standard and very well tested software library.
I don't have any great ideas atm why this might be the case. I can suggest trying to see if it happens on another internet connection, or perhaps if it is resolved by using a VPN instead of Tor. You did indicate originally it was intermittent, which points to something outside of Sparrow itself.
@craigraw
Well, now it appears like it works just fine over tor & whirlpool's onion address through sparrow. Fetching pool's only take ~5 seconds. Last few day's, I tried almost every hour it seems so I am not sure why its working now, maybe an update to tor addressed this if it was directly related.
I just hope it stays this way, since I don't know what the issue was exactly.
Ok thanks for the feedback. I'll close this off for now as likely Tor related.
Hello,
there doesn't appear to be any docs/faq about this, or how whirlpool even connects to more easily self-diagnose this issue.
I am running Sparrow version 1.6.4 on linux (Kubuntu 22.04). I have tor running @ 127.0.0.1:9050 with proxy option enabled under electrum server, connected to the public blockstream v3 onion. Tested successfully, everything in sparrow works as it should other than this mixing feature.
When attemping to mix my first time I walk through the introductory screens, set normal for the fee and next screen it'll say Fetching pools... and after some time it'll just give an error. Error fetching pools timeout of 3000ms. I couldn't see anything related to this in sparrow.log, unless I missed it but it's full of other info not releated to this.
Do the public servers such as blockstream have to have support for whirlpool for this feature to work, or is whirlpool an external source not connected through the server manually setup?
It appears as if one time when testing it with the public sever electrum.bitaroot.net, it fetched pools ok, but when I tried again later when atually going to start the mixing it gave timeout again. I haven't tried without tor, as I don't want to cause a leak of IP.
and again, everything else works as usual even after this timeout error for whirlpool.