Repository navigation
test_repo_save fails on crippled FS #5462
Copy link
Copy link
Open
Labels
crippled-filesystemsIssue concerned with operation on crippled filesystems, regardless of OSIssue concerned with operation on crippled filesystems, regardless of OStest-failureFor new or recurring failures of tests during CI runsFor new or recurring failures of tests during CI runs
Description
Failure discovered in PR #5440. Windows build only and apparently unrelated to adjusted branches. Might be that there's something wrong with get_convoluted_situation on Windows.
======================================================================
FAIL: datalad.support.tests.test_repo_save.test_gitrepo_save_all
----------------------------------------------------------------------
Traceback (most recent call last):
File "C:\Python39-x64\lib\site-packages\nose\case.py", line 198, in runTest
self.test(*self.arg)
File "C:\Python39-x64\lib\site-packages\datalad\tests\utils.py", line 757, in _wrap_with_tempfile
return t(*(arg + (filename,)), **kw)
File "C:\Python39-x64\lib\site-packages\datalad\support\tests\test_repo_save.py", line 72, in test_gitrepo_save_all
_test_save_all(path, GitRepo)
File "C:\Python39-x64\lib\site-packages\datalad\support\tests\test_repo_save.py", line 64, in _test_save_all
assert f.match('subds_modified'), f
AssertionError: C:\DLTMP\datalad_temp_ui79yjzi\subdir\subds_added
======================================================================
FAIL: datalad.support.tests.test_repo_save.test_annexrepo_save_all
----------------------------------------------------------------------
Traceback (most recent call last):
File "C:\Python39-x64\lib\site-packages\nose\case.py", line 198, in runTest
self.test(*self.arg)
File "C:\Python39-x64\lib\site-packages\datalad\tests\utils.py", line 757, in _wrap_with_tempfile
return t(*(arg + (filename,)), **kw)
File "C:\Python39-x64\lib\site-packages\datalad\support\tests\test_repo_save.py", line 79, in test_annexrepo_save_all
_test_save_all(path, AnnexRepo)
File "C:\Python39-x64\lib\site-packages\datalad\support\tests\test_repo_save.py", line 64, in _test_save_all
assert f.match('subds_modified'), f
AssertionError: C:\DLTMP\datalad_temp_w22aspuy\subdir\subds_added
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
crippled-filesystemsIssue concerned with operation on crippled filesystems, regardless of OSIssue concerned with operation on crippled filesystems, regardless of OStest-failureFor new or recurring failures of tests during CI runsFor new or recurring failures of tests during CI runs
Activity
TST: Skip test on windows
adswa commentedon Oct 26, 2021
I briefly looked into this. Maybe
statusis at fault.The failure arises because the only dataset components that should be modified at this state have
subds_modifiedas a part of their name. On Linux, this is true:On Windows it is not true - it sees quite a bunch of datasets as being modified:
Many of them are not seen as modified by Git:
This does not happen on Linux.
bpoldrack commentedon Oct 26, 2021
I think that difference is intended, as
datalad statusis supposed to give a seemless status across subdatasets (if-dwasn't specified), whereasgit statusdoesn't consider status within a submodule, but the status of it wrt to the superproject.However, this part:
modified: subdir/subds_clean (new commits)ingit statusis interesting. I still think it'sget_convoluted_situationthat at some point doesn't manage to properly account for windows/adjusted branches.To clarify:
What I think is intended is the difference between git and datalad
status, not the difference between linux and windows. Point being, that this doesn't look to me as if it'sstatusreally that's at fault here, but the created situation itself.adswa commentedon Oct 26, 2021
No, this is normal. Its the adjusted branch commit on top of the registered subproject commit that leads Git to regard it as a modification.
statusadjusts for this.[-]test_repo_save fails on windows build[/-][+]`status` broken with Git 2.26.2[/+][-]`status` broken with Git 2.26.2[/-][+]test_repo_save fails on windows build[/+]mih commentedon Jul 24, 2022
This issue is categorized, and the resulting test disabling wrong. The failure can also be triggered when running the test on a crippled FS (
tools/eval_under_testloopfs).Here is the result when running on 0.17.2 and Debian:
Same behavior on
masteras of1c8944cfc9f360057db9c9bc693be7238edfec06Another reasons to pay attention to #6873
[-]test_repo_save fails on windows build[/-][+]test_repo_save fails on crippled FS[/+]Correct test skipping, not at all windows-related