Skip to content

Async Activity Completion detail #4096

@mnichols

Description

@mnichols

Temporal Affiliation

* [x] I am a Temporal employee

Content Suggestion

The document here on {{Task Token}} https://docs.temporal.io/activity-execution#task-token explains that {{Async Activity Completion}} can accept an ActivityID _or_ a TaskToken, but doesn't clarify the distinction or risk.

Since TaskToken is actually unique for the _execution_, retries can actually cause a downstream caller that would use the {{task token}} handed to it to be no longer valid. For example, if an activity fails before returning the "complete async error" but after it has told the downstream/remote service to use the current task token to heartbeat or complete.

If you are concerned about this risk, prefer providing ActivityID+WorkflowID to that remote so that you don't have to worry about it. This discussion might be better in a different part of https://docs.temporal.io/activity-execution#asynchronous-activity-completion but I'll leave that to the experts 😀 .

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions