I am currently testing 0.12 beta. On my server syncthing terminated this night with exit code 2. syncthing(1) says, that exit code 2 means “Upgrade not available”. Since I am building with -noupgrade there is something wrong I think.
Does -noupgrade work with dev builds?
Is this a bug, or intended behaviour?
$ systemctl status syncthing@stefan.service
● syncthing@stefan.service - Syncthing - Open Source Continuous File Synchronization for stefan
Loaded: loaded (/usr/lib/systemd/system/syncthing@.service; enabled; vendor preset: disabled)
Active: inactive (dead) since Thu 2015-10-01 00:01:38 CEST; 10h ago
Docs: http://docs.syncthing.net/
Process: 11335 ExecStart=/usr/bin/syncthing -no-browser -logflags=0 (code=exited, status=2)
Main PID: 11335 (code=exited, status=2)
I’m guessing it crashed… It looks like an unhandled panic or fatal error gets us an exit 2 from the runtime. If it had, would you have had data from stderr also in that log?
(Perhaps we should redefine our exits based on that… We’ll “leak” that exit code when we’re running with STNOMONITOR, otherwise we handle it internally.)
StandardError=
Controls where file descriptor 2 (STDERR) of the executed processes
is connected to. The available options are identical to those of
StandardOutput=, with one exception: if set to inherit the file
descriptor used for standard output is duplicated for standard
error. This setting defaults to the value set with
DefaultStandardError= in systemd-system.conf(5), which defaults to
inherit.
As it is set to inherit on my box, the logs should be there.