Subject: Re: [PATCH 6/6] remote-curl: ensure last packet is a flush

From: Denton Liu <[email-masked]>
Date: Fri, 15 May 2020 17:02:45 -0400

On Wed, May 13, 2020 at 02:04:58PM -0400, Denton Liu wrote:
> This is not a complete solution to the problem, however. It is possible
> that a flush packet could be sent in the middle of a message and the
> connection could die immediately after. Then, remote-curl would not
> error out and fetch-pack would still be in the middle of a transaction
> and they would enter deadlock. A complete solution would involve
> reframing the stateless-connect protocol, possibly by introducing
> another control packet ("0002"?) as a stateless request separator
> packet which is always sent at the end of post_rpc().
> 
> Although this is not a complete solution, it is better than nothing and
> it resolves the reported issue for now.

I managed to get the implementation of the control packet working. As a
result, I will be dropping this patch in the next reroll and replacing
it with the more complete solution. For anyone reviewing, feel free to
skip this patch.