Hi everyone!
My problem:
I’ve been trying to download data from my remote repo using datalad get /path/to/file
and obtained the following uninformative output:
get(error): sub-00/ses-post/anat/sub-00_ses-post_T1w.nii.gz (file) [Transfer failed Transfer failed Transfer failed]
where sub-00/ses-post/anat/sub-00_ses-post_T1w.nii.gz
is a file, which I’ve been trying to download.
“Remote” repo is situated on my local machine, and i run datalad get
after connecting to my server through ssh (where i have the reverce access to my local machine).
So at the following this computational server will be mentioned as “client” (machine where I need data from datalad repo), and local machine (where dataset is physically situated) will be mentioned as “server”.
How to reproduce this problem?
On client i’ve run the following commands:
#datalad install -s <username>@<ip>:path/to/repodir
#cd repodir
#datalad get sub-00/ses-post/anat/sub-00_ses-post_T1w.nii.gz
What version of DataLad am I using (run datalad --version
)? On what operating system (consider running datalad wtf
)?
Currently I am using DataLad version 0.15.4, and git-annex version 8.20211118-g23ee48898 on client. The client OS is CentOS 7.9.2009. I’ve also tryied Ubuntu 20.04.2 with the same result.
UPD: On server I have Datalad 0.15.1, git-annex 8.20211028-g581d4e9 and Ubuntu 18.04.6
Current results of my attempts to find the source of the problem
Using flag --log-level debug
I’ve found out that datalad called git annex get
as it should be. Than git-annex have managed with the connection to my server (it asked me password, and accepted it) and then bring back to datalad another useless json with the following content:
{
"command": "get",
"wanted": [],
"note": "from origin...\nUnable to access these remotes: origin",
"success": false,
"input": [
"sub-00/ses-post/anat/sub-00_ses-post_T1w.nii.gz"
],
"key": "MD5E-s9600993--bb02ba4212e654054b53491b77e997ac.nii.gz",
"error-messages": [
" Transfer failed",
" Transfer failed",
" Transfer failed"
],
"file": "sub-00/ses-post/anat/sub-00_ses-post_T1w.nii.gz"
}
After moving further and using git annex get --debug sub-00/ses-post/anat/sub-00_ses-post_T1w.nii.gz
I’ve seen following message about the process (1071278) with the failure return code (the last two lines):
[2022-01-27 23:26:15.27735512] (Utility.Process) process [1071274] read: ssh ["-S",".git/annex/ssh/dmitriy_mikhailov@10.10.10.205","-o","ControlMaster=auto","-o","ControlPersist=yes","-n","-T","dmitriy_mikhailov@10.10.10.205","true"]
dmitriy_mikhailov@10.10.10.205's password:
[2022-01-27 23:26:21.769245319] (Utility.Process) process [1071274] done ExitSuccess
[2022-01-27 23:26:21.770827896] (Utility.Process) process [1071278] chat: ssh ["dmitriy_mikhailov@10.10.10.205","-S",".git/annex/ssh/dmitriy_mikhailov@10.10.10.205","-o","ControlMaster=auto","-o","ControlPersist=yes","-T","git-annex-shell 'p2pstdio' '/home-local/dmitriy_mikhailov/fMRI_data/pirogov_aphazy_data' '--debug' '847f16f5-d7d4-4d17-8323-cf6d72c3102a' --uuid 261a954c-c87f-4f92-9df8-436cc412819f"]
[2022-01-27 23:26:21.801630603] (Utility.Process) process [1071278] done ExitFailure 1
And at this point I’ve got lost. I have no idea where the problem came from. I’am not so experienced ssh user, and I don’t understand the underlying logic of git-annex get working. Could anyone here help me?
P.S. I can send the full versions of datalad get
, git annex get
debug output, and output of datalad wtf
, but I can’t attach these files to this question because neurostars doesn’t allow to do this by newcomer like me.