Welcome the channel on the development of Cro, a set of libraries for building reactive distributed systems, lovingly crafted to take advantage of all the Raku Programming Language has to offer (cro.services). This channel is being logged for historical purposes.
Set by lizmat on 24 May 2021.
06:08 xinming left 07:48 xinming joined 09:52 xinming left, xinming joined 10:14 sena_kun joined 11:32 sena_kun left 11:34 sena_kun joined 12:23 sena_kun left
patrickb I'm looking at another HTTP2 misbehavior of Cro. From the packet dump it looks as if Cro::Client ignores GoAway packets (and thus happily tries to reuse a closed connection). Looking at github.com/croservices/cro-http/bl...r.pm6#L169 it seems GoAway handling isn't implemented at all. Am I missing something and the logic is in some other place? 12:33
jnthn patrickb: Probably not, it's probably just unimplemented 13:30
patrickb OK. I'm working on it. 13:40
I'm a bit stumped on how to implement this though. A GoAway means that some (existing) streams are kept alive and may still return and receive, new streams are forbidden though. Practically the connection is dead. But how can I communicate this outwards from the ResponseParser? It currently only returns responses or closes the supply. 13:43
Closing the supply mostly achieves the goal of making sure the connection isn't used again: github.com/croservices/cro-http/bl...t.pm6#L182 13:45
But then I also prevent existing streams from finishing up.
lizmat feels like it needs some "global" flag not to accept any new connections, and carry on as usual otherwise ? 13:46
patrickb Usually the GoAway is the end of the communication, not followed up with more data from the server, but the spec is clear, that certain streams are allowed to finish up.
I'm AFK for an hour or so, but I'll backlog then and have a few more hours of time to spend on this later today. 13:47
lizmat also afk&
patrickb I'm back. 14:50
15:19 sena_kun joined 17:20 Altai-man joined 17:23 sena_kun left
Geth cro-http: patrickbkr++ created pull request #180:
HTTP2: Implement GoAway handling for the non-error case
21:53 Altai-man left