temporalio / temporalio/temporal
Add query result caching
Nobody has claimed this yet.
- 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.
In some scenarios, many users need frequently query a current workflow state. For example, 100 developers are watching for a CI/CD pipeline status.
Most of the query results are the same, so there is no need to recalculate them unless workflow returns a different value.
Describe the solution you'd like
Add caching of query results. Update the cache only if the query result is updated as part of the last workflow task.
Describe alternatives you've considered
There is a proposal to create a long poll query. But I can see the need for query optimization when a long poll is not possible. I think these features can be implemented or at least designed together.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or entry points. Start by understanding how query results are calculated and how the last workflow task exposes updated state, then compare the proposed cache with the mentioned long-poll alternative. Done would require an agreed design and implementation criteria for updating cached results only when workflow state changes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100