temporalio / temporalio/features
Document that list workflow/schedule calls are eventually consistent in specs
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 32
- Forks
- 28
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 7
Description
It is expected that the list API calls which make use of visibility are eventually consistent when using advanced (ES) based visibility. This means that calls of the pattern insert/update thing then list that thing may not return results reflecting the change that was just made. Our specs should document this, and our tests should deal with it by retrying the list calls until they match what is expected.
Original issue below
In schedule/basic/feature.go the call to list schedules often fails against Cloud due to not finding the just-created schedule when calling list schedules.
This is temporarily being worked around with a retry loop which should not be necessary.
This could very well be a cloud issue, but this issue serves to track the removal of the retry loop.
Contributor guide
No contributing guide indexed for this repository
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
Start in schedule/basic/feature.go and inspect the list-schedule spec and its existing retry workaround. Update the specs to state eventual consistency and make insert/update-then-list checks retry until the expected results appear; done means the checks pass against Cloud without assuming immediate visibility.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- elasticsearch, go
- Domain
- documentation, testing
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100