git-annex/doc/bugs/Windows_daemon_silently_dies.mdwn
Joey Hess aacd5c6994 Windows: fix crash after 10 minutes
getLine in waitForTermination doesn't work when stdin is closed..
Just loop forever, there was no reason to getLine here I think.
2014-07-16 15:42:12 -04:00

132 lines
5.9 KiB
Markdown

### Please describe the problem.
Using the latest build, when the agent is started, it works ... and works ... and works ... until it silently dies at some point.
### What steps will reproduce the problem?
I hope this will reproduce:
* Create a remote with an invalid host which is not reachable
* Start git-annex-autostart.vbs
* Wait 5-30 minutes until no git.exe/git-annex.exe are visible any more in task manager (for my current test it took 10 minutes)
* Inspect the logs
### What version of git-annex are you using? On what operating system?
$ git annex version
git-annex version: 5.20140715-g622a376
build flags: Assistant Webapp Webapp-secure Pairing Testsuite S3 WebDAV DNS Feeds Quvi TDFA CryptoHash
key/value backends: SHA256E SHA1E SHA512E SHA224E SHA384E SKEIN256E SKEIN512E SHA256 SHA1 SHA512 SHA224 SHA384 SKEIN256 SKEIN512 WORM URL
remote types: git gcrypt S3 bup directory rsync web webdav tahoe glacier ddar hook external
local repository version: 5
supported repository version: 5
upgrade supported from repository versions: 2 3 4
### Please provide any additional information below.
I hope/think that this is also related to what I wrote in:
https://git-annex.branchable.com/forum/Restricting_SSH_+_supply_key
Here the assistant apparently takes the wrong ssh.exe (from bin/ instead than cmd/ directory). This results in the fact that for some reason .ssh/config is not used.
In any case, the host alias can not be resolved.
At some point git annex assistant seems to die because of that, but I am not sure.
In any case, a non-reachable server should not be the cause that the assistant dies.
The last entries of daemon.log are always:
git-annex: <stdin>: hGetLine: invalid argument (Bad file descriptor)
failed
git-annex: assistant: 1 failed
So I think this is the cause.
[[!format sh """
[2014-07-14 21:21:19 Pacific Daylight Time] main: starting assistant version 5.20140715-g622a376
[2014-07-14 21:21:19 Pacific Daylight Time] Cronner: You should enable consistency checking to protect your data.
[2014-07-14 21:21:24 Pacific Daylight Time] TransferScanner: Syncing with 192.168.200.121
(scanning...) [2014-07-14 21:21:25 Pacific Daylight Time] Watcher: Performing startup scan
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
sssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
sssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
(started...) [2014-07-14 21:21:43 Pacific Daylight Time] Committer: Committing changes to git
[2014-07-14 21:21:43 Pacific Daylight Time] Pusher: Syncing with 192.168.200.121
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ssh: Could notssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
[2014-07-14 21:22:03 Pacific Daylight Time] Committer: Committing changes to git
fatal: Unable to create 'c:\data\annex\.git/index.lock': File exists.
If no other git process is currently running, this probably means a
git process crashed in this repository earlier. Make sure no other git
process is running and remove the file manually to continue.
fatal: Unable to create 'c:\data\annex\.git/index.lock': File exists.
If no other git process is currently running, this probably means a
git process crashed in this repository earlier. Make sure no other git
process is running and remove the file manually to continue.
Committer crashed: failed to read sha from git write-tree
[2014-07-14 21:22:03 Pacific Daylight Time] Committer: warning Committer crashed: failed to read sha from git write-tree
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
ssh: Could not resolve hostname annex: hostname nor servname provided, or not known
Network.Socket.ByteString.send: does not exist (No such file or directory)
Network.Socket.ByteString.send: does not exist (No such file or directory)
(Recording state in git...)
(Recording state in git...)
git-annex: <stdin>: hGetLine: invalid argument (Bad file descriptor)
failed
git-annex: assistant: 1 failed
"""]]
[[!tag confirmed]]
> [[fixed|done]] --[[Joey]]