Mercurial > hg
view tests/test-inotify-issue1208.t @ 16354:9f98fe05ecf1 stable
inotify: catch SignalInterrupt during shutdown (issue3351)
When inotify.repowatcher.shutdown() is called, mercurial.error.SignalInterrupt
exception is thrown by mercurial.dispatch._runcatch.catchterm(), therefore
socketlistener.shutdown() is not called.
Catching this allows cleanup action (removing the socket file) to proceed.
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Wed, 04 Apr 2012 10:57:48 +0200 |
parents | fed4bb2c8def |
children | f2719b387380 |
line wrap: on
line source
$ "$TESTDIR/hghave" inotify || exit 80 $ echo "[extensions]" >> $HGRCPATH $ echo "inotify=" >> $HGRCPATH $ p="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" $ hg init $p $ cd $p fail $ ln -sf doesnotexist .hg/inotify.sock $ hg st abort: inotify-server: cannot start: .hg/inotify.sock is a broken symlink inotify-client: could not start inotify server: child process failed to start $ hg inserve abort: inotify-server: cannot start: .hg/inotify.sock is a broken symlink [255] $ rm .hg/inotify.sock inserve $ hg inserve -d --pid-file=hg.pid $ cat hg.pid >> "$DAEMON_PIDS" status $ hg status ? hg.pid if we try to start twice the server, make sure we get a correct error $ hg inserve -d --pid-file=hg2.pid abort: inotify-server: cannot start: socket is already bound abort: child process failed to start [255] $ kill `cat hg.pid`