Skip to content

Commit 104fecc

Browse files
committed
Modify the test code to use single-threaded checkout
This moves setting `thread_limit: Some(1)` out of being a step done with `sed` in the `test-ext4-casefold` jobs, and into being an actual change to the source code of the `checkout.rs` test module. This change is intended to be temporary. The goal is the same as before, but to observe the effect outside `text-ext4-casefold`. That is, the goal here is to temporarily see if there is a change in results in the other jobs where failure almost always occurs due to GitoxideLabs#2006, i.e., the `test-fast` jobs on `macos-latest` and `windows-latest`, and the `test-fixtures-windows` job. Note that, as of this change, the `gix-features/parallel` feature is only turned off in the `test-ext4-casefold` jobs. In others, that feature is still turned on, just a parallelism of 1, i.e., a single thread, is used for the checkout. But a parallelism of 1 seems usually to be special-cased to not use facilities related to multithreading. (This `thread_limit` argument change, as well as the immediately preceding change of disabling the `parallel` feature flag in the `test-ext4-casefold` test jobs, are entirely separate from how many writes_through_symlinks_are_prevented_even_if_overwriting_is_allowed duplicated test cases there are, and also entirely separate from the operand to `--test-threads`, which actually controls the number of test *processes* `cargo nextest` creates to run the tests.)
1 parent 1c15cd6 commit 104fecc

File tree

2 files changed

+2
-6
lines changed

2 files changed

+2
-6
lines changed

.github/workflows/ci.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -247,11 +247,6 @@ jobs:
247247
# Prepend leading digits "24" to the upper bound of the label range.
248248
sed -Ei 's/^(#\[test_matrix\(0\.\.=)([[:digit:]]+\)])$/\124\2/' \
249249
gix-worktree-state/tests/state/checkout.rs
250-
- name: Modify the test code to use single-threaded checkout
251-
run: |
252-
# Replace the usual `thread_limit` argument with `Some(1)`.
253-
sed -i 's/gix_features::parallel::num_threads(None).into()/Some(1)/' \
254-
gix-worktree-state/tests/state/checkout.rs
255250
- name: Display the changes made for this test
256251
run: git diff
257252
- name: Test writes_through_symlinks_are_prevented_even_if_overwriting_is_allowed (nextest)

gix-worktree-state/tests/state/checkout.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -689,10 +689,11 @@ fn probe_gitoxide_dir() -> crate::Result<gix_fs::Capabilities> {
689689
fn opts_from_probe() -> gix_worktree_state::checkout::Options {
690690
static CAPABILITIES: Lazy<gix_fs::Capabilities> = Lazy::new(|| probe_gitoxide_dir().unwrap());
691691

692+
// FIXME(integration): Restore multithreaded `thread_limit` prior to merging #2008.
692693
gix_worktree_state::checkout::Options {
693694
fs: *CAPABILITIES,
694695
destination_is_initially_empty: true,
695-
thread_limit: gix_features::parallel::num_threads(None).into(),
696+
thread_limit: Some(1), // gix_features::parallel::num_threads(None).into(),
696697
..Default::default()
697698
}
698699
}

0 commit comments

Comments
 (0)