Skip to content

Commit

Permalink
expect-continue header compat switch (#43888)
Browse files Browse the repository at this point in the history
  • Loading branch information
jaschrep-msft committed May 9, 2024
1 parent bed3a44 commit 28cd2f8
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 2 deletions.
5 changes: 5 additions & 0 deletions sdk/storage/Azure.Storage.Common/src/Shared/CompatSwitches.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,10 @@ internal static class CompatSwitches

public static bool DisableRequestConditionsValidation => _disableRequestConditionsValidation
??= AppContextSwitchHelper.GetConfigValue(Constants.DisableRequestConditionsValidationSwitchName, Constants.DisableRequestConditionsValidationEnvVar);

private static bool? _disableExpectContinueHeader;

public static bool DisableExpectContinueHeader => _disableExpectContinueHeader
??= AppContextSwitchHelper.GetConfigValue(Constants.DisableExpectContinueHeaderSwitchName, Constants.DisableExpectContinueHeaderEnvVar);
}
}
3 changes: 3 additions & 0 deletions sdk/storage/Azure.Storage.Common/src/Shared/Constants.cs
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,9 @@ internal static class Constants
public const string DisableRequestConditionsValidationSwitchName = "Azure.Storage.DisableRequestConditionsValidation";
public const string DisableRequestConditionsValidationEnvVar = "AZURE_STORAGE_DISABLE_REQUEST_CONDITIONS_VALIDATION";

public const string DisableExpectContinueHeaderSwitchName = "Azure.Storage.DisableExpectContinueHeader";
public const string DisableExpectContinueHeaderEnvVar = "AZURE_STORAGE_DISABLE_EXPECT_CONTINUE_HEADER";

public const string DefaultScope = "/.default";

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ public TimeSpan ThrottleInterval
public override void OnSendingRequest(HttpMessage message)
{
if (message.Request.Content == null ||
(message.Request.Content.TryComputeLength(out long contentLength) && contentLength < ContentLengthThreshold))
(message.Request.Content.TryComputeLength(out long contentLength) && contentLength < ContentLengthThreshold) ||
CompatSwitches.DisableExpectContinueHeader)
{
return;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ internal class ExpectContinuePolicy : HttpPipelineSynchronousPolicy

public override void OnSendingRequest(HttpMessage message)
{
if (message.Request.Content == null)
if (message.Request.Content == null || CompatSwitches.DisableExpectContinueHeader)
{
return;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
<Compile Include="$(AzureStorageSharedSources)BufferExtensions.cs" LinkBase="Shared" />
<Compile Include="$(AzureStorageSharedSources)ChecksumCalculatingStream.cs" LinkBase="Shared" />
<Compile Include="$(AzureStorageSharedSources)ContentHasher.cs" LinkBase="Shared" />
<Compile Include="$(AzureStorageSharedSources)CompatSwitches.cs" LinkBase="Shared" />
<Compile Include="$(AzureStorageSharedSources)DisposableBucket.cs" LinkBase="Shared" />
<Compile Include="$(AzureStorageSharedSources)ExpectContinuePolicy.cs" LinkBase="Shared" />
<Compile Include="$(AzureStorageSharedSources)ExpectContinueOnThrottlePolicy.cs" LinkBase="Shared" />
Expand Down

0 comments on commit 28cd2f8

Please sign in to comment.