-
Notifications
You must be signed in to change notification settings - Fork 259
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
Processes are killed with segfault on high load #38
Comments
Another case:
|
Thanks for reporting this. The branch you want is 1.0.x-release. Can you also let us know please which APIs you were calling since we (and many of our partners) have done extensive load testing of MultiChain and not seen this phenomenon. It may be a bug caused by the particular APIs you are calling. |
The APIs frequently called in this scenario are:
|
Seems its the |
edit: does not seem to be related, depends on the txid. |
Thanks, that's very helpful. We'll take a look at |
Hi @cebe we believe we've fixed this problem (specifically with https://www.multichain.com/download/multichain-1.0.2.1.tar.gz Thank you in advance. |
Hi @gidgreen, thanks for the update. I have installed your updated version but it still crashes on |
Hi @cebe. The updated branch is 1.0.x-dev (it is not official release). If this happens always on some specific transaction, is there any chance you can share your chain directory with us? |
The 1.0.x branches are updated only 5 month ago: https://github.com/MultiChain/multichain/branches ? The problem happens on the production blockchain, I will try to reproduce this on a dev chain. |
1.0.x-dev is the branch. Simply, last commit is 5-month old (cherry-picked from another branch) Can you confirm that it always happens to specific txid? If yes, can you please check what happens if you call
|
|
While trying to debug the problem, I wanted to compile my own multichain binary, however I am unable to compile multichain on debian stable, which system are you using for compiling the binaries? |
If I create a new node and let it subscribe to the asset, I can get the transaction information (same transaction as in #38 (comment) ) without crashing. |
If you could provide a binary with debugging symbols I could run it in |
Here's a version with debug symbols: https://www.multichain.com/download/multichain-1.0.2.1-wdebug.tar.gz |
Thanks for providing the debug version. Using this binary the nodes get segfaults directly after start:
This seems unrelated to the original problem. I have attached the blockchain where this happens: problem-chain.zip Started the nodes like this:
|
Hi @cebe. Yes, it is completely unrelated. Probably it is related to debug symbols or gdb. We have no problem with these binaries on Ubuntu. Let's try previous approach (calling APIs). The outputs of the APIs you provided earlier significantly narrowed the list of suspects, thanks. The current situation seems very unlikely - it looks like the database on your node is corrupted (may be because of the issue we already fixed). If so, we should decide how to repair it. Can you please send us the output of: getrawtransaction 7c2d46bb91221374b2ae09f565f984b952a2451b1494ec30f86660804bb08632 1 getrawtransaction f28aaacee51237ec1025dd5a875bf649ff9a7fdae34a97ed9c65bf4a1ad38d94 1 getwallettransaction f28aaacee51237ec1025dd5a875bf649ff9a7fdae34a97ed9c65bf4a1ad38d94 true true getassettransaction testcoin f28aaacee51237ec1025dd5a875bf649ff9a7fdae34a97ed9c65bf4a1ad38d94 getblockcount and, if possible listassets * 1 listaddresses 1GToD6orU6gPgPRv9RDuHrQtkPucBzBkPHHVh6,1EaV1JMskeUNv2TPPq7KGxwCeTGrJx1GbDvEeh true Please confirm also that you are able to call getassettransaction for other txids and this asset. |
I can confirm that I have no issues with fresh databases created with version 1.0.2.1. So it is very likely you already fixed the problem. Do you want to reproduce the problem on 1.0.2 to figure out how a broken database could be fixed? For our case it would be enough to recreate database of affected nodes, so there is no need for further debugging. If you want more information I can still provide them, let me know. Thank you for your help! Block count is 19805 btw. |
Thank you for your message. If you can provide the outputs of the APis I asked (before recovery), it would be great. May be we'll be able to guess better what exactly is broken, how and why. As for repairing you node's database. Here is the procedure:
|
When a lot of requests are made against the RPC API, multichain processes regularily fail with segfault.
Here is what I see in the systemd journal:
I am seeing this error regularily coming up in times where a lot of requests are made against the RPC API, when the amount of requests was low it did not happen before.
Multichain Version: 1.0.2, I am using the binaries from the website.
To provide more information about the problem I'd compile multichain myself and run it with gdb, I wonder however, which branch I should use, as this repo does not seem to have any tags?
The text was updated successfully, but these errors were encountered: