This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: cygrunsrv - services enters stopped state if underlying program exits or is killed - doesn't auto restart


On Jan 27 15:02, Cary Lewis wrote:
> On Tue, Jan 27, 2015 at 4:09 AM, Corinna Vinschen
> <corinna-cygwin@cygwin.com> wrote:
> > On Jan 26 11:14, Cary Lewis wrote:
> >> I am using cygrunsrv to install a windows service that creates an ssh tunnel.
> >>
> >> I have configured the service to auto-restart on failures using the
> >> windows 7 services.msc tool.
> >>
> >> If the ssh program exists, or is killed, cygrunsrv gracefully exits,
> >> and the windows auto-restart logic is not invoked.
> >>
> >> Is there a way to get the auto-restart logic to work?
> >
> > Try the cygrunsrv option --neverexits.  If this option is set, the
> > service exits without notifying Windows.  SCM thinks the service has
> > exited prematurely and restarts it, if auto-restart has been configured.
> >
> 
> Corinna, thanks for the tip
> 
> --neverexits works, but not if the program that cygrunsrv starts is
> stopped with a kill -9 signal. Perhaps the -9 signal propagates to the
> cygrunsrv.exe program?

Hmm, yes.  Cygrunsrv evaluates how the service process ended, and only
if it exited the neverexits logic comes into play.  If it ended due to
a signal, it does nothing.

This is unfortunate because it diminishes the usefulness of --neverexits.
I could patch cygrunsrv to do this:

  If the service exited due to a signal, and if that signal is not the
  defined termination or shutdown signal (default SIGTERM for both),
  and if --neverexits has been defined, then performas the neverexits
  action.

Does that sound ok?

The patch is simple and I could upload a new cygrunsrv today or tomorrow.


Thanks,
Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Attachment: pgpTZMRjbku7z.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]