-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Substrate sometimes sends back an empty response to light client requests #12727
Comments
I have no idea how this could happen. Here are the relevant pieces of code:
|
Could be caused by #12372, as it was released 4 days before I've noticed the errors happening. But looking at the changes I don't see how |
What I suspect happens is: This still raises a question, however: why would Substrate fail to answer these requests? The requests that lead to the problem are at the end of the warp syncing, in other words targeting the currently finalized block, and thus the block isn't supposed to be pruned. |
The answer to that is very simple: smoldot sends storage queries during the warp syncing as well, for reasons that are a bit complicated to explain and off-topic here. |
Is there an existing issue?
Experiencing problems? Have you tried our Stack Exchange first?
Description of bug
cc paritytech/smoldot#2975
I don't know under which condition (I don't know if it's a new version or if the node is overwhelmed or something), but Substrate sometimes sends back an empty response to light client requests. By "empty response" I mean that it sends back a
0
byte indicating that the response is empty, then closes the substream as if the response had finished being sent back.It's really not supposed to do that. In case where the node is overwhelmed, Substrate is supposed to close the substream without sending any response at all without even any length (as otherwise sending back an empty response would be problem in case the response is legitimately empty).
Steps to reproduce
I don't know, unfortunately
The text was updated successfully, but these errors were encountered: