Skip to content

Commit

Permalink
removed exclude region from hedging diagnostics
Browse files Browse the repository at this point in the history
  • Loading branch information
NaluTripician committed Aug 2, 2024
1 parent aba2b2c commit ef075ee
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 48 deletions.
15 changes: 8 additions & 7 deletions Microsoft.Azure.Cosmos/src/Handler/RequestInvokerHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,13 @@ public override async Task<ResponseMessage> SendAsync(
cancellationToken);
}

if (request.RequestOptions?.ExcludeRegions != null)
{
ResponseMessage response = await this.BaseSendAsync(request, cancellationToken);
((CosmosTraceDiagnostics)response.Diagnostics).Value.AddOrUpdateDatum("ExcludedRegions", request.RequestOptions.ExcludeRegions);
return response;
}

return await this.BaseSendAsync(request, cancellationToken);
}

Expand All @@ -109,13 +116,7 @@ public virtual async Task<ResponseMessage> BaseSendAsync(
RequestMessage request,
CancellationToken cancellationToken)
{
ResponseMessage response = await base.SendAsync(request, cancellationToken);
if (request.RequestOptions?.ExcludeRegions != null)
{
((CosmosTraceDiagnostics)response.Diagnostics).Value.AddOrUpdateDatum("ExcludedRegions", request.RequestOptions.ExcludeRegions);
}

return response;
return await base.SendAsync(request, cancellationToken);
}

public virtual async Task<T> SendAsync<T>(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ public override async Task<ResponseMessage> ExecuteAvailabilityStrategyAsync(
using (CancellationTokenSource cancellationTokenSource = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken))
{
using (CloneableStream clonedBody = (CloneableStream)(request.Content == null
? null//new CloneableStream(new MemoryStream())
? null
: await StreamExtension.AsClonableStreamAsync(request.Content)))
{
IReadOnlyCollection<string> hedgeRegions = client.DocumentClient.GlobalEndpointManager
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -273,10 +273,6 @@ public async Task AvailabilityStrategyRequestOptionsTriggerTest()
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out object hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsObject);
Assert.IsNotNull(excludeRegionsObject);
List<string> excludeRegionsList = excludeRegionsObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));
faultInjectionClient.Dispose();
}

Expand Down Expand Up @@ -334,7 +330,6 @@ public async Task AvailabilityStrategyDisableOverideTest()

CosmosTraceDiagnostics traceDiagnostic = ir.Diagnostics as CosmosTraceDiagnostics;
Assert.IsNotNull(traceDiagnostic);
Assert.IsFalse(traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out _));

faultInjectionClient.Dispose();
}
Expand Down Expand Up @@ -422,7 +417,7 @@ public async Task AvailabilityStrategyAllFaultsTests(string operation, string co

CosmosTraceDiagnostics traceDiagnostic;
object hedgeContext;
List<string> excludeRegionsList;

switch (operation)
{
case "Read":
Expand All @@ -438,9 +433,6 @@ public async Task AvailabilityStrategyAllFaultsTests(string operation, string co
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsObject);
excludeRegionsList = excludeRegionsObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));

break;

Expand Down Expand Up @@ -468,9 +460,6 @@ public async Task AvailabilityStrategyAllFaultsTests(string operation, string co
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsQueryObject);
excludeRegionsList = excludeRegionsQueryObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));
}

break;
Expand All @@ -492,9 +481,6 @@ public async Task AvailabilityStrategyAllFaultsTests(string operation, string co
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsQueryObject);
excludeRegionsList = excludeRegionsQueryObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));
}

break;
Expand All @@ -517,9 +503,6 @@ public async Task AvailabilityStrategyAllFaultsTests(string operation, string co
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsReadManyObject);
excludeRegionsList = excludeRegionsReadManyObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));

break;

Expand Down Expand Up @@ -612,7 +595,7 @@ public async Task AvailabilityStrategyStepTests(string operation, string condito

CosmosTraceDiagnostics traceDiagnostic;
object hedgeContext;
List<string> excludeRegionsList;

switch (operation)
{
case "Read":
Expand All @@ -628,10 +611,6 @@ public async Task AvailabilityStrategyStepTests(string operation, string condito
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsObject);
excludeRegionsList = excludeRegionsObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));
Assert.IsTrue(excludeRegionsList.Contains("North Central US"));

break;

Expand Down Expand Up @@ -659,9 +638,6 @@ public async Task AvailabilityStrategyStepTests(string operation, string condito
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsQueryObject);
excludeRegionsList = excludeRegionsQueryObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));
}

break;
Expand All @@ -683,9 +659,6 @@ public async Task AvailabilityStrategyStepTests(string operation, string condito
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsQueryObject);
excludeRegionsList = excludeRegionsQueryObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));
}

break;
Expand All @@ -708,10 +681,6 @@ public async Task AvailabilityStrategyStepTests(string operation, string condito
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsReadManyObject);
excludeRegionsList = excludeRegionsReadManyObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));
Assert.IsTrue(excludeRegionsList.Contains("North Central US"));

break;

Expand Down Expand Up @@ -810,9 +779,7 @@ private static async Task HandleChangesAsync(
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out object hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsObject);
List<string> excludeRegionsList = excludeRegionsObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));

await Task.Delay(1);
}

Expand All @@ -831,10 +798,7 @@ private static async Task HandleChangesStepAsync(
traceDiagnostic.Value.Data.TryGetValue("Hedge Context", out object hedgeContext);
Assert.IsNotNull(hedgeContext);
Assert.AreEqual("Hedged Request", (string)hedgeContext);
traceDiagnostic.Value.Data.TryGetValue("ExcludedRegions", out object excludeRegionsObject);
List<string> excludeRegionsList = excludeRegionsObject as List<string>;
Assert.IsTrue(excludeRegionsList.Contains("Central US"));
Assert.IsTrue(excludeRegionsList.Contains("North Central US"));

await Task.Delay(1);
}

Expand Down

0 comments on commit ef075ee

Please sign in to comment.