OrderReporter produces empty test_order.log in parallel DRb mode
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 50/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- rails, ruby
- Domain
- testing-qa
Research direction
Start by reproducing the empty log with Rails ActiveSupport::Testing::Parallelization using forked workers and DRb, then trace how OrderReporter records test order. The issue is done when parallel DRb runs preserve usable order data, ideally in per-worker files rather than one interleaved log.
Written by the indexing model from the issue text.
Description
Summary
OrderReporter produces an empty log/test_order.log when tests run in parallel using Rails' ActiveSupport::Testing::Parallelization (forked processes with DRb). This makes it impossible to reproduce order-dependent flaky test failures because the test order is never recorded.
Expected behavior
The test order should be recorded even in parallel DRb mode. Ideally as per-worker files, since a single interleaved file doesn't represent any process's actual execution order and can't be used to bisect state pollution between tests.
Environment
- ci-queue 0.85.0
- Rails with parallelize(workers: N, with: :processes)
- minitest 5.27.0
- Dominant language
- Ruby
- Stars
- 240
- Forks
- 36
- Avg merge
- 28m
- Merged PRs (30d)
- 3
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/ci-queue
-
Difficulty 3/5 1-2 days Newbie friendliness 65/100
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 38/100
All issues in Shopify/ci-queue
Similar issues
-
SyncEm always forwards a dummy block, so wrapped methods lose their no-block/Enumerator behavior Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
endoflife-date/endoflife.date#11086 ·
-
internal
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Kong/developer.konghq.com#7322 ·
-
bug P2
Difficulty 2/5 1-3 hours Newbie friendliness 88/100