Repository navigation
[backport] Lock test_file for all_python.sh - #2466
Merged
Merged
Conversation
The tests of RESOURCE_LOCK test_file_lock create, check and remove ./test_file in the build directory of tests/API/XCCDF/unittests, so ctest runs them one at a time. test_remediate_python.sh and test_remediate_python_subs.sh, which all_python.sh runs, do the same, but all_python.sh is outside the lock. Under ctest -j a locked test can remove the file a python remediation just created, or the reverse, and one of them fails. all_python.sh exists only when CMake finds Python, so it joins the lock in a set_tests_properties of its own under that condition. On Fedora 44, 50 runs of ctest -j8 over the 20 locked tests and all_python.sh failed 3 times on main: test_remediate_simple.sh, which ctest starts beside all_python.sh, failed each time, and all_python.sh once too. With this change the 50 runs passed.
|
matusmarhefka
approved these changes
Oct 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.



This PR is a backport of the PR #2457 to the maint-1.3 branch.
The tests of RESOURCE_LOCK test_file_lock create, check and remove ./test_file in the build directory of tests/API/XCCDF/unittests, so ctest runs them one at a time. test_remediate_python.sh and test_remediate_python_subs.sh, which all_python.sh runs, do the same, but all_python.sh is outside the lock. Under ctest -j a locked test can remove the file a python remediation just created, or the reverse, and one of them fails.
all_python.sh exists only when CMake finds Python, so it joins the lock in a set_tests_properties of its own under that condition.
On Fedora 44, 50 runs of ctest -j8 over the 20 locked tests and all_python.sh failed 3 times on main: test_remediate_simple.sh, which ctest starts beside all_python.sh, failed each time, and all_python.sh once too. With this change the 50 runs passed.