Uh oh!
There was an error while loading. Please reload this page.
Move DurableTaskRegistry to Abstractions - #76
Merged
Conversation
…ls to Worker and Client
Chris Gillum (cgillum)
approved these changes
Nov 10, 2022
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
wangbill (YunchuWang) added a commit
that referenced
this pull request
Aug 18, 2026
The F1 change (a814ffc) made an unowned/unmarked blob report Quarantined instead of Deleted, but several comments and XML docs still described the old Deleted-covers-unowned behavior. Doc/comment only - no product logic or test-logic change. - src/Grpc/orchestrator_service.proto: DELETED now covers two cases (blob deleted, blob already absent), not three; the "left in place because unowned" case is QUARANTINED now. Language-neutral wire semantics only; the same hunk mirrors into microsoft/durabletask-protobuf #76. - src/Client/Core/LargePayloadPurgeDisposition.cs: same two-case fix on the C# mirror of that enum ("all three cases" -> "both cases"). - src/Extensions/AzureBlobPayloads/PayloadStore/PayloadDeleteOutcome.cs: the NotStoreOwned summary no longer claims the reference "is still resolved"; it states the store-layer fact plus a neutral note that the outcome is not proof of deletion and the caller decides how to dispose of the reference. No disposition named - that mapping is the activity's decision. - src/Extensions/AzureBlobPayloads/PayloadStore/BlobPayloadStore.cs: same correction at the HasOwnershipMarker return site. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 6373d1ba-104b-492a-9737-456a26c8ea34
wangbill (YunchuWang) added a commit
that referenced
this pull request
Aug 18, 2026
The user overruled F1. The backend treats a non-empty quarantine set as a poison/investigate signal: it emits an OTel-flagged LargePayloadPurgeQuarantineOutstanding on every GetLargePayloadTombstones poll (once per IdleDelay = 1 minute, forever), quarantine never auto-expires, and there is no operator tool to clear it. Because the managed_by=dts ownership marker is new in this PR, every pre-existing v2 blob would hit NotStoreOwned on upgrade and permanently wedge that alarm. So an unowned/unmarked blob reports Deleted (terminal success) again, as before F1. Reverts F1 only. F2 (the disable path keeps reconciling) and F3 (the two client-facing purge APIs stay removed) are unchanged. - DeleteExternalBlobActivity.cs, Logs.cs, DeleteExternalBlobActivityTests.cs: restored byte-identical to their pre-F1 (0034bb0) state. NotStoreOwned logs BlobPurgeBlobNotStoreOwned (EventId 821 restored in its 820-822 slot) and falls through to Deleted; the test asserts Deleted again. - orchestrator_service.proto, LargePayloadPurgeDisposition.cs, PayloadDeleteOutcome.cs, BlobPayloadStore.cs: the ce3b547 doc sweep only existed to describe the quarantine semantics, so it is reverted too - restored byte-identical to 9be9931, back to the three-case DELETED wording that matches Deleted semantics and the untouched protobuf #76 copy. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 6373d1ba-104b-492a-9737-456a26c8ea34
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
This PR moves
DurableTaskRegistryto Abstractions assembly. The reason for this move is for the code-gen scenario. It is important to have access to the registry from just the abstractions package, so registration methods can be generated.Summary of Changes
DurableTaskRegistrymoved to Abstractions assembly.DurableTaskRegistry.Buildmoved to an extension methodBuildFactoryin worker assembly.IDictionary.