tests: use stop/start over restart for service to improve flaky system test #2415
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Proposed changes
Improving flaky system test:
Suspected root cause:
systemctl restart does not wait for all file descriptors to be flushed before returning which is most likely the reason why some pid information is still being detected via pgrep -f. Using stop/start does not suffer from this problem.
flake-finder was used to run the suite of tests 200 times and all passed:
And a second run of 300 iterations all passed except for 1 unrelated error due to a loss of connectivity during the system test run:
Types of changes
Paste Link to the issue
#2087
Checklist
cargo fmt
as mentioned in CODING_GUIDELINEScargo clippy
as mentioned in CODING_GUIDELINESFurther comments