JoinMarket-Org / joinmarket-clientserver

Bitcoin CoinJoin implementation with incentive structure to convince people to take part
GNU General Public License v3.0
731 stars 179 forks source link

Strange hangup of a yield generator in a strange state #505

Closed kristapsk closed 3 years ago

kristapsk commented 4 years ago

My yield generator wasn't giving any output to a log file for a few days. Decided to restart it, just in case, and it turns out it has hanged up in a strange state (potentially sensitive information edited out).

2020-01-18 20:... [MainThread  ] [DEBUG]  Dynamic switch nick: mynick
2020-01-18 20:... [MainThread  ] [DEBUG]  >>privmsg on CgAn: nick=mynick cmd=swreloffer msg=...
2020-01-18 20:... [MainThread  ] [DEBUG]  >>privmsg on DarkScience: nick=mynick cmd=swreloffer msg=...
2020-01-18 20:... [MainThread  ] [DEBUG]  >>privmsg on CgAn: nick=mynick cmd=pubkey msg=...
2020-01-18 20:... [MainThread  ] [DEBUG]  mix depths that have enough = ...

^C2020-01-18 20:... [INFO]  filling offer, mixdepth=1, amount=someamount
2020-01-22 03:... [WARNING]  Connection had broken pipe, attempting reconnect.
2020-01-22 03:... [INFO]  sending output to address=***
2020-01-22 03:... [INFO]  Lost IRC connection to: tor.darkscience.net . Should reconnect automatically soon.
2020-01-22 03:... [INFO]  Lost IRC connection to: cgan.onion.garlic . Should reconnect automatically soon.
done

Notice that few days old log message was printed and written to log only after I hit Ctrl+C today.

Was running commit 35081843cca2290574ae19d1c47a0482bf3b2f18.

AlexCato commented 4 years ago

Just to add here without deeper investigation: that broken pipe was a connection problem to the bitcoind rpc, problem probably in jsonrpc.py

Tracachang commented 4 years ago

Hi,

I am having the same issue since the last version (0.6.2) but what I realized is that after it says "Lost IRC, should reconnect" even if it says "joined" if I check my offer does not appear https://joinmarket.me/ob/.

I think this is the reason why there is less offers than normal.

~/joinmarket-clientserver-0.6.2/scripts $ python yg-privacyenhanced.py wallet.jmdat User data location: /home/bitcoin/.joinmarket/ Enter wallet decryption passphrase: [WARNING] Connection had broken pipe, attempting reconnect. [INFO] offerlist=[{'oid': xxx, 'ordertype': 'xxx', 'minsize': xxx, 'maxsize': xxx, 'txfee': xxx, 'cjfee': 'xxx'}] [INFO] starting yield generator [INFO] Listening on port 27183 [INFO] Starting transaction monitor in walletservice [INFO] joined: #joinmarket-pit guybrush.hackint.org [INFO] Could not connect to *ALL* servers yet, waiting up to 60 more seconds. [INFO] joined: #joinmarket-pit tor.darkscience.net [INFO] All IRC servers connected, starting execution. [INFO] JM daemon setup complete [INFO] Lost IRC connection to: tor.darkscience.net . Should reconnect automatically soon. [INFO] joined: #joinmarket-pit tor.darkscience.net [INFO] Lost IRC connection to: guybrush.hackint.org . Should reconnect automatically soon. [INFO] joined: #joinmarket-pit guybrush.hackint.org

kristapsk commented 4 years ago

@Tracachang , no, that's ok, not related with this issue.

Web orderbook has known bug that it sometimes lose some offers. Should not impact possibility of your yield generator to participate in coinjoin, as taker always issues !orderbook command to ask for orders at startup, it does not rely on third parties.

Also, you can always start fresh copy of web orderbook locally, by running scripts/obwatch/ob-watcher.py.

Tracachang commented 4 years ago

Thanks a lot @kristapsk for the explanation

AdamISZ commented 3 years ago

@kristapsk is there anything actionable here, or reproducible? I'm closing on the assumption, not. The 'attempting reconnect' thing is normal.