On Tue, May 25, 2021 at 10:30:27AM +0200, Tim Düsterhus, WoltLab GmbH wrote: > > The 503 is just a byproduct of the aborted connection. That can sound > > strange but what happens here is that the status was set after it was > > noticed the processing ended without being able to connect to any server. > > I agree that a 4xx would be more suitable here, and this problem was > > already raised in the past regarding the fact that *certain* aborts or > > errors need closer inspection to figure where the problem was. > > I believe in some cases a status code of 0 (zero) or -1 is logged, but I'm > not 100% sure there. I would consider such a status to be appropriate as > well, because no HTTP response was actually sent to the client.
You make a good point here. Actually I remember that historically we used to report status -1 when nothing was returned to a client, but it was never officially documented, there used to be only one example in the doc (which is still there by the way). That's probably something we should improve to officially translate a client abort before the server responds. It's still not 100% trivial but should already be easier to deal with than the CD vs SD mess. > > We've already noted that significant improvements in close/abort need to > > be made to 1) process them better and 2) report them more accurately. > > This is a tedious task which *will* inevitably cause regressions, but > > it's the price to pay to improve that. > > Shall I file a feature request on GitHub that the 'CC' case does not result > in a 5xx, but a 4xx or something clearly invalid? Yes, why not. This will save us from forgetting about it. > > > For the time being, status codes are here for a reason and are more > > s/status/termination/? Yes of course :-) Willy

