Skip to content

Commit 11df732

Browse files
authored
Rev WebJobs Extension to 2.13.6, Rev DTFx.AS dependency to 1.17.5, make 1ES build deterministic, increase CI Azurite version (#2914)
1 parent d498cbb commit 11df732

File tree

5 files changed

+19
-3
lines changed

5 files changed

+19
-3
lines changed

eng/templates/build.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ jobs:
4646
solution: '**/WebJobs.Extensions.DurableTask.sln'
4747
vsVersion: "16.0"
4848
configuration: Release
49+
msbuildArgs: /p:FileVersionRevision=$(Build.BuildId) /p:ContinuousIntegrationBuild=true # these flags make package build deterministic
4950

5051
- template: ci/sign-files.yml@eng
5152
parameters:

src/WebJobs.Extensions.DurableTask/AzureStorageDurabilityProviderFactory.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,7 @@ internal AzureStorageOrchestrationServiceSettings GetAzureStorageOrchestrationSe
217217
UseSeparateQueueForEntityWorkItems = this.useSeparateQueueForEntityWorkItems,
218218
EntityMessageReorderWindowInMinutes = this.options.EntityMessageReorderWindowInMinutes,
219219
MaxEntityOperationBatchSize = this.options.MaxEntityOperationBatchSize,
220+
AllowReplayingTerminalInstances = this.azureStorageOptions.AllowReplayingTerminalInstances,
220221
};
221222

222223
if (this.inConsumption)

src/WebJobs.Extensions.DurableTask/Options/AzureStorageOptions.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,20 @@ public string TrackingStoreConnectionStringName
179179
/// <value>A boolean indicating whether to use the table partition strategy. Defaults to false.</value>
180180
public bool UseTablePartitionManagement { get; set; } = false;
181181

182+
/// <summary>
183+
/// When false, when an orchestrator is in a terminal state (e.g. Completed, Failed, Terminated), events for that orchestrator are discarded.
184+
/// Otherwise, events for a terminal orchestrator induce a replay. This may be used to recompute the state of the orchestrator in the "Instances Table".
185+
/// </summary>
186+
/// <remarks>
187+
/// Transactions across Azure Tables are not possible, so we independently update the "History table" and then the "Instances table"
188+
/// to set the state of the orchestrator.
189+
/// If a crash were to occur between these two updates, the state of the orchestrator in the "Instances table" would be incorrect.
190+
/// By setting this configuration to true, you can recover from these inconsistencies by forcing a replay of the orchestrator in response
191+
/// to a client event like a termination request or an external event, which gives the framework another opportunity to update the state of
192+
/// the orchestrator in the "Instances table". To force a replay after enabling this configuration, just send any external event to the affected instanceId.
193+
/// </remarks>
194+
public bool AllowReplayingTerminalInstances { get; set; } = false;
195+
182196
/// <summary>
183197
/// Throws an exception if the provided hub name violates any naming conventions for the storage provider.
184198
/// </summary>

src/WebJobs.Extensions.DurableTask/WebJobs.Extensions.DurableTask.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<RootNamespace>Microsoft.Azure.WebJobs.Extensions.DurableTask</RootNamespace>
77
<MajorVersion>2</MajorVersion>
88
<MinorVersion>13</MinorVersion>
9-
<PatchVersion>5</PatchVersion>
9+
<PatchVersion>6</PatchVersion>
1010
<VersionSuffix>$(PackageSuffix)</VersionSuffix>
1111
<FileVersion>$(MajorVersion).$(MinorVersion).$(PatchVersion)</FileVersion>
1212
<AssemblyVersion>$(MajorVersion).0.0.0</AssemblyVersion>
@@ -114,7 +114,7 @@
114114
<!-- Common dependencies across all targets -->
115115
<ItemGroup>
116116
<PackageReference Include="Microsoft.Azure.DurableTask.Core" Version="2.17.1" />
117-
<PackageReference Include="Microsoft.Azure.DurableTask.AzureStorage" Version="1.17.4" />
117+
<PackageReference Include="Microsoft.Azure.DurableTask.AzureStorage" Version="1.17.5" />
118118
<PackageReference Include="Microsoft.Azure.WebJobs.Extensions.DurableTask.Analyzers" Version="0.5.*" />
119119
<!-- Build-time dependencies -->
120120
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.*" PrivateAssets="All" />

test/SmokeTests/e2e-test.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ function Exit-OnError() {
2626
}
2727

2828
$ErrorActionPreference = "Stop"
29-
$AzuriteVersion = "3.26.0"
29+
$AzuriteVersion = "3.32.0"
3030

3131
if ($NoSetup -eq $false) {
3232
# Build the docker image first, since that's the most critical step

0 commit comments

Comments
 (0)