temporalio / temporalio/temporal

Clear signal requestID on workflow close

Open
#4,029 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

discussion enhancement up-for-grabs
Dominant language
Go
Stars
23.2k
Forks
1.9k
Avg merge
2d 8h
Merged PRs (30d)
228

Description

Is your feature request related to a problem? Please describe.
Signal requestID is for dedupping signal request. After workflow close, all signal requests will be rejected, so we don't really need signal requestIDs for dedupping.

Describe the solution you'd like

  • Clear signal requestID on workflow close
  • However, we may need it for https://github.com/temporalio/temporal/issues/4028. If that's the case, we can persist the requestID as part of the signaled event, so that upon reset, the signal requestID map can be rebuilt.

Describe alternatives you've considered

  • We don't have to do it if we believe we won't benefit much from making this change.

Additional context
Add any other context or screenshots about the feature request here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing workflow-close handling and the signal requestID map, then read issue #4028 to determine whether reset requires requestIDs to persist in signaled events. Confirm the expected behavior for closed workflows and whether the map can be cleared safely; done means signal requests remain rejected after close without breaking the reset scenario.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.