-
Notifications
You must be signed in to change notification settings - Fork 227
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Latest mm builds crash when sending messages over the socket #742
Comments
And to clarify, by crash I mean the entire process dies, it doesn't just hang for a while. |
backtrace? does the fasttest script work? it seems the GUI might be invoking different timings that I missed |
Where is the fasttest script? Will try get a backtrace to you. |
~/SuperNET/iguana/exchanges/fasttest |
Yeah,
|
Oh, wait, sorry, that was with an old working mm, testing on latest now. |
you should see the commands complete out of order |
Yeah, it still passes on the current version. |
It seems to be the
#!/bin/bash
source userpass
curl 'http://127.0.0.1:7783/' --data "{\"userpass\":\"$userpass\",\"queueid\":1,\"method\":\"electrum\",\"coin\":\"KMD\",\"ipaddr\":\"electrum1.cipig.net\",\"port\":10001}" This consistently kills mm every time for me: $ pgrep marketmaker | wc -l
1
$ ./fasttestfail
{"result":"success","status":"queued"}
$ pgrep marketmaker | wc -l
0 |
from a fresh ./client, you are saying just running that will kill things? i cant reproduce any crash, it works fine for me. not sure why your system is having problems, it is happening on multiple different nodes? |
if it is crashing, i need a backtrace to get any idea of what is going wrong |
Will get a backtrace to you now. |
Sorry, that wasn't a good reproduction, I was spawning mm from my GUI so there was some other stuff going on. I have now managed to make a pure cli repro. It appears to just be too many things in the queue simultaneously causing the crash. Try this:
#!/bin/bash
./marketmaker '{"client":1,"passphrase":"passphrase","coins":[],"rpcport":63434}' &
sleep 5
echo
echo "maketmaker processes running: $(pgrep marketmaker | wc -l)"
curl 'http://127.0.0.1:63434/' --data '{"method":"getendpoint","port":63481,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":1,"method":"electrum","coin":"KMD","ipaddr":"electrum1.cipig.net","port":10001,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":2,"method":"electrum","coin":"KMD","ipaddr":"electrum2.cipig.net","port":10001,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":3,"method":"electrum","coin":"REVS","ipaddr":"electrum1.cipig.net","port":10003,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":4,"method":"electrum","coin":"REVS","ipaddr":"electrum2.cipig.net","port":10003,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":5,"method":"electrum","coin":"SUPERNET","ipaddr":"electrum1.cipig.net","port":10005,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":6,"method":"electrum","coin":"SUPERNET","ipaddr":"electrum2.cipig.net","port":10005,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":7,"method":"electrum","coin":"CHIPS","ipaddr":"electrum1.cipig.net","port":10053,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":8,"method":"electrum","coin":"CHIPS","ipaddr":"electrum2.cipig.net","port":10053,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":9,"method":"electrum","coin":"BTC","ipaddr":"electrum.hsmiths.com","port":50001,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":10,"method":"electrum","coin":"BTC","ipaddr":"helicarrier.bauerj.eu","port":50001,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":11,"method":"electrum","coin":"VTC","ipaddr":"173.212.225.176","port":50088,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":12,"method":"electrum","coin":"VTC","ipaddr":"136.243.45.140","port":50088,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":13,"method":"electrum","coin":"LTC","ipaddr":"173.212.225.176","port":50012,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
curl 'http://127.0.0.1:63434/' --data '{"queueid":14,"method":"electrum","coin":"LTC","ipaddr":"136.243.45.140","port":50012,"userpass":"1e089e3c5323ad80a90767bdd5907297b4138163f027097fd3bdbeab528d2d68"}'
sleep 0.5
echo "maketmaker processes running: $(pgrep marketmaker | wc -l)" Run it in
|
I'm having issues creating backtrace because gdb won't run on the latest osx versions because it's not codesigned. Working on this for you. |
I added IGUANA_MAXRPCTHREADS to ~/SuperNET/iguana/exchanges/stats.c at the top of the file |
The backtrace reported here: #668 (comment) Is likely related to this issue. |
I reverted the orderbook/portfolio change. Lets hope things stabilize. in jl777 branch |
* WIP. * WIP. Compilation fails. * Remove some unused fields from ordermatching structs. Code compiles. * WIP. Compilation fails. * WIP. Playing with Patricia tries. * WIP major refactoring. Commented out the code that fails to compile. Many ordermatching tests fail as of now. * WIP. Code does not compile. * WIP. Playing with tries. * WIP. Test that sync works properly when new orders are created. * WIP. Fixing alice_can_see_the_active_order_after_connection. * WIP. Almost all tests pass. * Save history diffs when order is removed. * Do not remove own pubkey state by timeout. * Ensure that kick started maker order is added to orderbook. * Remove some unused fns. * Do not add root hash of pairs we are not subscribed to. * Prevent cycles in TrieDiffHistory. * Refactor. Remove unwraps wherever possible. * Fixes for review.
The latest builds of mm on both the
jl777
anddev
branch crash when I issue commands over the socket.If I just remove the non zero
queueid
to make the requests normal HTTP requests it works fine.Possibly caused from the changes in #740 #668?
The text was updated successfully, but these errors were encountered: