From dd05e29dedff48843bb5ec42254ca0a612523c07 Mon Sep 17 00:00:00 2001 From: Kahbazi Date: Thu, 31 Oct 2019 14:02:06 +0330 Subject: [PATCH 1/3] Suppress log when request is cancelled --- src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs b/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs index 8f6341db63ce..97ec2e418953 100644 --- a/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs +++ b/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs @@ -127,8 +127,11 @@ public override void Flush() if (endOfRequest && _leftToWrite > 0) { _requestContext.Abort(); - // This is logged rather than thrown because it is too late for an exception to be visible in user code. - LogHelper.LogError(Logger, "ResponseStream::Dispose", "Fewer bytes were written than were specified in the Content-Length."); + if(!RequestContext.DisconnectToken.IsCancellationRequested) + { + // This is logged rather than thrown because it is too late for an exception to be visible in user code. + LogHelper.LogError(Logger, "ResponseStream::Dispose", "Fewer bytes were written than were specified in the Content-Length."); + } return; } From 320c4b055656b88240cd198b2f40f1f5f0f4ccb3 Mon Sep 17 00:00:00 2001 From: Kahbazi Date: Thu, 31 Oct 2019 14:04:09 +0330 Subject: [PATCH 2/3] Formatting --- src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs b/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs index 97ec2e418953..1c7af8f69360 100644 --- a/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs +++ b/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs @@ -127,7 +127,7 @@ public override void Flush() if (endOfRequest && _leftToWrite > 0) { _requestContext.Abort(); - if(!RequestContext.DisconnectToken.IsCancellationRequested) + if (!RequestContext.DisconnectToken.IsCancellationRequested) { // This is logged rather than thrown because it is too late for an exception to be visible in user code. LogHelper.LogError(Logger, "ResponseStream::Dispose", "Fewer bytes were written than were specified in the Content-Length."); From 52ba6131796711a45bfa27f190e8b232566bdb39 Mon Sep 17 00:00:00 2001 From: Kahbazi Date: Mon, 4 Nov 2019 22:28:03 +0330 Subject: [PATCH 3/3] Set _dispose=true after FlushInternal --- src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs b/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs index 1c7af8f69360..ba14d5ca7cf9 100644 --- a/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs +++ b/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs @@ -126,12 +126,12 @@ public override void Flush() var flags = ComputeLeftToWrite(data.Count, endOfRequest); if (endOfRequest && _leftToWrite > 0) { - _requestContext.Abort(); if (!RequestContext.DisconnectToken.IsCancellationRequested) { // This is logged rather than thrown because it is too late for an exception to be visible in user code. LogHelper.LogError(Logger, "ResponseStream::Dispose", "Fewer bytes were written than were specified in the Content-Length."); } + _requestContext.Abort(); return; } @@ -669,8 +669,8 @@ protected override unsafe void Dispose(bool disposing) { return; } - _disposed = true; FlushInternal(endOfRequest: true); + _disposed = true; } } finally