Race condition in tests causing intermittent failures
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 65/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Stale
- Domain
- testing-qa
Research direction
Start with interrupt_resume_test.rb and the status handler that sends SIGTERM when ROW_COPY_COMPLETED is received. Compare the send_signal call with the mentioned .kill behavior, then run the interrupt/resume test repeatedly; done means Ghostferry has exited before the handler returns and the intermittent extra-batch failure no longer occurs.
Written by the indexing model from the issue text.
Description
In interrupt_resume_test.rb, we send SIGTERM to Ghostferry when ROW_COPY_COMPLETED is sent. However, the status handler doesn't wait until Ghostferry exits before returning. This means that Ghostferry is free to continue executing code, possibly moving an additional batch before quitting. Moving an additional batch results in a failed test occasionally.
To fix this, the send_signal call needs to be changed to something similar to .kill.
- Dominant language
- Go
- Stars
- 855
- Forks
- 74
- PR merge metrics
- No merged PRs in 30d
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.
More from Shopify/ghostferry
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
Shopify/ghostferry#454 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
Shopify/ghostferry#348 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 42/100
Shopify/ghostferry#338 · 7 comments ·
-
Bug can't reproduce
Difficulty 4/5 3-5 days Newbie friendliness 30/100
Shopify/ghostferry#337 ·
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
Shopify/ghostferry#335 ·
All issues in Shopify/ghostferry
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 84/100
-
enhancement needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
kind/cleanup
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
kubernetes-sigs/kueue#15947 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
sympozium-ai/sympozium#627 ·
-
priority: p3
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
googleapis/librarian#7636 ·