comit-network / xmr-btc-swap

Bitcoin–Monero Cross-chain Atomic Swap
GNU General Public License v3.0
655 stars 83 forks source link

Issues with redeeming the Monero #1432

Open binarybaron opened 1 year ago

binarybaron commented 1 year ago

Describe the bug A bunch of users have reported an issue where the CLI fails to redeem the Monero.

Lost/trapped Funds Yes, but recoverable using the monero-recover command.

Debug logs https://github.com/UnstoppableSwap/unstoppableswap-gui/issues/147

https://github.com/UnstoppableSwap/unstoppableswap-gui/issues/155

Platform (please complete the following information):

binarybaron commented 1 year ago

This seems to be very prevalent. I've gotten more and more users contacting me with this issue. I'll start working on it and try to find the root cause.

binarybaron commented 1 year ago

Logs of user gad35...

{"timestamp":"2023-04-28T02:23:46.368003Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-04-28T02:23:46.370827Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-04-28T02:23:46.370856Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"5b352bf0-3de6-4d70-a761-27bc48c97b9d"}}
{"timestamp":"2023-04-28T02:23:46.893715Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
{"timestamp":"2023-04-28T02:57:07.400481Z","level":"INFO","fields":{"message":"Logging initialized to C:\Users\Brady\AppData\Roaming\xmr-btc-swap\cli\mainnet\logs"}}
{"timestamp":"2023-04-28T02:57:07.400652Z","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"2023-04-28T02:57:07.402302Z","level":"DEBUG","fields":{"message":"Reading in seed from C:\Users\Brady\AppData\Roaming\xmr-btc-swap\cli\mainnet\seed.pem"}}
{"timestamp":"2023-04-28T02:57:09.736312Z","level":"DEBUG","fields":{"message":"RPC exec path: C:\Users\Brady\AppData\Roaming\xmr-btc-swap\cli\mainnet\monero\monero-wallet-rpc.exe"}}
{"timestamp":"2023-04-28T02:57:10.765291Z","level":"DEBUG","fields":{"message":"RPC version output: Monero 'Fluorine Fermi' (v0.18.1.2-release)\r\n"}}
{"timestamp":"2023-04-28T02:57:10.765672Z","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"53245"}}
{"timestamp":"2023-04-28T02:57:17.340355Z","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2023-04-28T02:57:19.382711Z","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWEtMKj1C7fEya9syS4R8qkNXAm63cp85YzWG8QjnWtJSG"}}
{"timestamp":"2023-04-28T02:57:19.383510Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-04-28T02:57:19.386396Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-04-28T02:57:19.386428Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"5b352bf0-3de6-4d70-a761-27bc48c97b9d"}}
{"timestamp":"2023-04-28T02:57:19.912699Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
when it is "Connected to Alice" it then doesn't proceed any further even after 1hr+
binarybaron commented 1 year ago

Logs of user teslonian...

{"timestamp":"2023-08-30T13:57:05.020985Z","level":"DEBUG","fields":{"message":"Reading in seed from C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\seed.pem"}}
{"timestamp":"2023-08-30T13:57:07.601829Z","level":"DEBUG","fields":{"message":"RPC exec path: C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\monero\\monero-wallet-rpc.exe"}}
{"timestamp":"2023-08-30T14:47:10.564331Z","level":"INFO","fields":{"message":"Logging initialized to C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\logs"}}
{"timestamp":"2023-08-30T14:47:10.564472Z","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"2023-08-30T14:47:10.568694Z","level":"DEBUG","fields":{"message":"Reading in seed from C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\seed.pem"}}
{"timestamp":"2023-08-30T14:47:14.298574Z","level":"DEBUG","fields":{"message":"RPC exec path: C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\monero\\monero-wallet-rpc.exe"}}
{"timestamp":"2023-08-30T14:47:15.626551Z","level":"DEBUG","fields":{"message":"RPC version output: Monero 'Fluorine Fermi' (v0.18.1.2-release)\r\n"}}
{"timestamp":"2023-08-30T14:47:15.626996Z","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"55023"}}
{"timestamp":"2023-08-30T14:47:21.136928Z","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2023-08-30T14:47:23.174816Z","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWMo9JmveDcdWqnrKufq7KWdn8QhbMp37JgRaGY95RAPgv"}}
{"timestamp":"2023-08-30T14:47:23.175989Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-08-30T14:47:23.179834Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-08-30T14:47:23.179877Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"c703cdbb-5b14-4a39-b7ee-092aa319e9f3"}}
{"timestamp":"2023-08-30T14:47:24.186448Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
{"timestamp":"2023-08-30T14:47:57.966672Z","level":"INFO","fields":{"message":"Logging initialized to C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\logs"}}
{"timestamp":"2023-08-30T14:47:57.966856Z","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"2023-08-30T14:47:57.968729Z","level":"DEBUG","fields":{"message":"Reading in seed from C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\seed.pem"}}
{"timestamp":"2023-08-30T14:48:00.368588Z","level":"DEBUG","fields":{"message":"RPC exec path: C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\monero\\monero-wallet-rpc.exe"}}
{"timestamp":"2023-08-30T14:48:01.395296Z","level":"DEBUG","fields":{"message":"RPC version output: Monero 'Fluorine Fermi' (v0.18.1.2-release)\r\n"}}
{"timestamp":"2023-08-30T14:48:01.395731Z","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"55085"}}
{"timestamp":"2023-08-30T14:48:06.711621Z","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2023-08-30T14:48:08.767514Z","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWMo9JmveDcdWqnrKufq7KWdn8QhbMp37JgRaGY95RAPgv"}}
{"timestamp":"2023-08-30T14:48:08.768607Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-08-30T14:48:08.772251Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-08-30T14:48:08.772300Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"c703cdbb-5b14-4a39-b7ee-092aa319e9f3"}}
{"timestamp":"2023-08-30T14:48:09.301750Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
{"timestamp":"2023-08-30T14:48:38.385367Z","level":"INFO","fields":{"message":"Logging initialized to C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\logs"}}
{"timestamp":"2023-08-30T14:48:38.385532Z","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"2023-08-30T14:48:38.387127Z","level":"DEBUG","fields":{"message":"Reading in seed from C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\seed.pem"}}
{"timestamp":"2023-08-30T14:48:40.232270Z","level":"DEBUG","fields":{"message":"RPC exec path: C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\monero\\monero-wallet-rpc.exe"}}
{"timestamp":"2023-08-30T14:48:41.263367Z","level":"DEBUG","fields":{"message":"RPC version output: Monero 'Fluorine Fermi' (v0.18.1.2-release)\r\n"}}
{"timestamp":"2023-08-30T14:48:41.263774Z","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"55117"}}
{"timestamp":"2023-08-30T14:48:47.951960Z","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2023-08-30T14:48:49.981621Z","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWMo9JmveDcdWqnrKufq7KWdn8QhbMp37JgRaGY95RAPgv"}}
{"timestamp":"2023-08-30T14:48:49.982550Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-08-30T14:48:49.985455Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-08-30T14:48:49.985510Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"c703cdbb-5b14-4a39-b7ee-092aa319e9f3"}}
{"timestamp":"2023-08-30T14:48:50.512918Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
{"timestamp":"2023-08-30T14:51:21.526184Z","level":"INFO","fields":{"message":"Logging initialized to C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\logs"}}
{"timestamp":"2023-08-30T14:51:21.526304Z","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"2023-08-30T14:51:21.527517Z","level":"DEBUG","fields":{"message":"Reading in seed from C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\seed.pem"}}
{"timestamp":"2023-08-30T14:51:24.793010Z","level":"DEBUG","fields":{"message":"RPC exec path: C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\monero\\monero-wallet-rpc.exe"}}
{"timestamp":"2023-08-30T14:51:25.818219Z","level":"DEBUG","fields":{"message":"RPC version output: Monero 'Fluorine Fermi' (v0.18.1.2-release)\r\n"}}
{"timestamp":"2023-08-30T14:51:25.818775Z","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"55326"}}
{"timestamp":"2023-08-30T14:51:31.171299Z","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2023-08-30T14:51:33.212233Z","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWMo9JmveDcdWqnrKufq7KWdn8QhbMp37JgRaGY95RAPgv"}}
{"timestamp":"2023-08-30T14:51:33.213249Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-08-30T14:51:33.216668Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-08-30T14:51:33.216714Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"c703cdbb-5b14-4a39-b7ee-092aa319e9f3"}}
{"timestamp":"2023-08-30T14:51:33.761602Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
{"timestamp":"2023-08-30T16:35:20.243091Z","level":"INFO","fields":{"message":"Logging initialized to C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\logs"}}
{"timestamp":"2023-08-30T16:35:20.243294Z","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"2023-08-30T16:35:20.244954Z","level":"DEBUG","fields":{"message":"Reading in seed from C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\seed.pem"}}
{"timestamp":"2023-08-30T16:35:23.522114Z","level":"DEBUG","fields":{"message":"RPC exec path: C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\monero\\monero-wallet-rpc.exe"}}
{"timestamp":"2023-08-30T16:35:24.546518Z","level":"DEBUG","fields":{"message":"RPC version output: Monero 'Fluorine Fermi' (v0.18.1.2-release)\r\n"}}
{"timestamp":"2023-08-30T16:35:24.546968Z","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"60323"}}
{"timestamp":"2023-08-30T16:35:30.265613Z","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2023-08-30T16:35:32.316892Z","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWMo9JmveDcdWqnrKufq7KWdn8QhbMp37JgRaGY95RAPgv"}}
{"timestamp":"2023-08-30T16:35:32.317817Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-08-30T16:35:32.323173Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-08-30T16:35:32.323229Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"c703cdbb-5b14-4a39-b7ee-092aa319e9f3"}}
{"timestamp":"2023-08-30T16:35:32.857169Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
{"timestamp":"2023-08-30T16:52:37.534505Z","level":"INFO","fields":{"message":"Logging initialized to C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\logs"}}
{"timestamp":"2023-08-30T16:52:37.534649Z","level":"DEBUG","fields":{"message":"Using existing sqlite database."}}
{"timestamp":"2023-08-30T16:52:37.536077Z","level":"DEBUG","fields":{"message":"Reading in seed from C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\seed.pem"}}
{"timestamp":"2023-08-30T16:52:41.872313Z","level":"DEBUG","fields":{"message":"RPC exec path: C:\\Users\\mrjoshjohnsmith\\AppData\\Roaming\\xmr-btc-swap\\cli\\mainnet\\monero\\monero-wallet-rpc.exe"}}
{"timestamp":"2023-08-30T16:52:42.897830Z","level":"DEBUG","fields":{"message":"RPC version output: Monero 'Fluorine Fermi' (v0.18.1.2-release)\r\n"}}
{"timestamp":"2023-08-30T16:52:42.898379Z","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"61326"}}
{"timestamp":"2023-08-30T16:52:48.307693Z","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2023-08-30T16:52:50.369321Z","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWMo9JmveDcdWqnrKufq7KWdn8QhbMp37JgRaGY95RAPgv"}}
{"timestamp":"2023-08-30T16:52:50.370634Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-08-30T16:52:50.374586Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-08-30T16:52:50.374659Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"c703cdbb-5b14-4a39-b7ee-092aa319e9f3"}}
{"timestamp":"2023-08-30T16:52:50.871472Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
{"timestamp":"2023-08-30T20:00:08.992327Z","level":"DEBUG","fields":{"message":"Starting monero-wallet-rpc","port":"49876"}}
{"timestamp":"2023-08-30T20:00:15.5720669Z","level":"DEBUG","fields":{"message":"Opened Monero wallet","monero_wallet_name":"swap-tool-blockchain-monitoring-wallet"}}
{"timestamp":"2023-08-30T20:00:17.6189012Z","level":"DEBUG","fields":{"message":"Network layer initialized","peer_id":"12D3KooWMo9JmveDcdWqnrKufq7KWdn8QhbMp37JgRaGY95RAPgv"}}
{"timestamp":"2023-08-30T20:00:17.6204933Z","level":"DEBUG","fields":{"message":"Advancing state","state":"btc is redeemed"}}
{"timestamp":"2023-08-30T20:00:17.6265187Z","level":"WARN","fields":{"message":"Failed to generate monero wallet from keys: Failed to generate new wallet from keys: JSON-RPC request failed with code -1: Wallet already exists.: JSON-RPC request failed with code -1: Wallet already exists."}}
{"timestamp":"2023-08-30T20:00:17.6265561Z","level":"INFO","fields":{"message":"Falling back to trying to open the the wallet if it already exists","wallet_file_name":"c703cdbb-5b14-4a39-b7ee-092aa319e9f3"}}
{"timestamp":"2023-08-30T20:00:18.1465174Z","level":"INFO","fields":{"message":"Connected to Alice at /ip4/45.138.50.29/tcp/9939/p2p/12D3KooWMgGjeW7ErQxCQzaeHiXxJn42wegCPFepixEXfBJT1PNS"}}
Error: JSON-RPC request failed with code -38: no connection to daemon

Caused by:
    JSON-RPC request failed with code -38: no connection to daemon
binarybaron commented 1 year ago

The Wallet already exists error is fixed by https://github.com/comit-network/xmr-btc-swap/pull/1434 and only occurs when using the GUI.

The no connection to daemon however needs to be investigated further.

We could have a list of possible daemon addresses. Loop through them at startup and send a HTTP address to /get_info to check if they are available and then choose one based on that information.

KracauerB commented 1 year ago

Hi, thanks for your attention to this. I too have been affected: https://github.com/UnstoppableSwap/unstoppableswap-gui/issues/156

weeb042069 commented 1 year ago

Sorry to bother you but I also am having this issue. I hope you can help me resolve this soon. [Please Help] Swap stuck on redeeming your monero. #158

binarybaron commented 1 year ago

The Wallet already exists error is fixed by #1434 and only occurs when using the GUI.

The no connection to daemon however needs to be investigated further.

We could have a list of possible daemon addresses. Loop through them at startup and send a HTTP address to /get_info to check if they are available and then choose one based on that information.

The GUI now does this with https://github.com/UnstoppableSwap/unstoppableswap-gui/pull/157. However, ideally, this should be handled by swap itself and not by a third party wrapper which is why https://github.com/comit-network/xmr-btc-swap/pull/1441 implements a similar behaviour for swap. On startup we loop through list of public Monero daemons and choose one dynamically based on their response to the get_info RPC call.

binarybaron commented 10 months ago

This is still not fixed it seems... We're still looking for the root cause.