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
LockedTransfer is not being sent #4383
Comments
@offerm , the logs are normal for the node
|
from sender:
|
Looks like this is where retry gave up (sender):
|
@offerm I looked through the logs and think I know what happened. (I'm calling the node of the first log Processed log files, interesting records are highlighted with a green border: Timeline from Node A's perspective:
Timeline from Node B's perspective:
Particularly interesting are Node A lines 110 and 169. There are almost exactly 30s between those two events. Combined with the fact that there are no Matrix related log entries from Node B after Is there any output on stdout/stderr for Node B? |
@ulope I spend some time on this problem over the weekend. I haven't seen any indication of a crash. However, I believe I found the reason for it. Looks like node B is blocked (forever) at raiden/network/transport/matrix/transport.py:184 on
There is a race with This flags forces global messages to have priority (one time, at start) . After sending the queued global messages the flag is set to False. The scenario is that there are a few global messages (PFS) in the queue when join() is called. When these messages are being sent there is only one call to The problem is in these lines:
While there are several messages in _global_send_queue (all for the same room), only one call to I changed the flag to be False and the problem gone. |
If multiple global messages were to be sent to a single recipient during startup the `_global_send_queue.join()` call would block forever since the number of calls to `task_done()` was unbalanced with the number of items in the queue. Thanks @offerm for the bug report and investigation. Fixes: raiden-network#4383
I'm sure you have a Happy to help. |
If multiple global messages were to be sent to a single recipient during startup the `_global_send_queue.join()` call would block forever since the number of calls to `task_done()` was unbalanced with the number of items in the queue. Thanks @offerm for the bug report and investigation. Fixes: #4383
Have a raiden server with about 24 channels.
I'm trying to make a payment to a peer which is available.
The payment is not arraving.
Actually, I don't even see a send_raw log entry.
Can you please have a look and let me know the reason and best way to get out of it?
Thanks
raiden-debug_2019-07-12T13_50_58.575034.log
The text was updated successfully, but these errors were encountered: