tests/test-inotify-issue1208.t
author Bryan O'Sullivan <bryano@fb.com>
Tue, 18 Dec 2012 17:33:32 -0800
changeset 18096 cd53e40ab0e2
parent 16913 f2719b387380
permissions -rw-r--r--
inotify: don't fall over just because of a dangling symlink Previously, the inotify server failed to start if .hg/inotify.sock was a symlink that pointed to a non-existent path. This behaviour does not seem to make any sense. Now, if we encounter a broken symlink, we unlink it and continue.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6996
fecf060f32a1 inotify: deactivate inotify status on failure
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     1
12453
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
     2
  $ "$TESTDIR/hghave" inotify || exit 80
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
     3
  $ echo "[extensions]" >> $HGRCPATH
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
     4
  $ echo "inotify=" >> $HGRCPATH
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
     5
  $ p="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
     6
  $ hg init $p
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
     7
  $ cd $p
6996
fecf060f32a1 inotify: deactivate inotify status on failure
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     8
18096
cd53e40ab0e2 inotify: don't fall over just because of a dangling symlink
Bryan O'Sullivan <bryano@fb.com>
parents: 16913
diff changeset
     9
dangling symlink should be deleted
6996
fecf060f32a1 inotify: deactivate inotify status on failure
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    10
12453
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    11
  $ ln -sf doesnotexist .hg/inotify.sock
18096
cd53e40ab0e2 inotify: don't fall over just because of a dangling symlink
Bryan O'Sullivan <bryano@fb.com>
parents: 16913
diff changeset
    12
  $ hg --config inotify.pidfile=../hg.pid st
cd53e40ab0e2 inotify: don't fall over just because of a dangling symlink
Bryan O'Sullivan <bryano@fb.com>
parents: 16913
diff changeset
    13
  $ kill `cat ../hg.pid`
6997
9c4e488f105e inotify: workaround ENAMETOOLONG by using symlinks
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6996
diff changeset
    14
12453
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    15
inserve
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    16
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    17
  $ hg inserve -d --pid-file=hg.pid
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    18
  $ cat hg.pid >> "$DAEMON_PIDS"
6997
9c4e488f105e inotify: workaround ENAMETOOLONG by using symlinks
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6996
diff changeset
    19
12453
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    20
status
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    21
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    22
  $ hg status
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    23
  ? hg.pid
12650
fed4bb2c8def inotify: raise correct error if server is already started in a deep repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12453
diff changeset
    24
fed4bb2c8def inotify: raise correct error if server is already started in a deep repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12453
diff changeset
    25
if we try to start twice the server, make sure we get a correct error
fed4bb2c8def inotify: raise correct error if server is already started in a deep repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12453
diff changeset
    26
fed4bb2c8def inotify: raise correct error if server is already started in a deep repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12453
diff changeset
    27
  $ hg inserve -d --pid-file=hg2.pid
fed4bb2c8def inotify: raise correct error if server is already started in a deep repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12453
diff changeset
    28
  abort: inotify-server: cannot start: socket is already bound
fed4bb2c8def inotify: raise correct error if server is already started in a deep repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12453
diff changeset
    29
  abort: child process failed to start
fed4bb2c8def inotify: raise correct error if server is already started in a deep repository
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12453
diff changeset
    30
  [255]
12453
b98d931482e6 tests: unify test-inotify-issue1208
Matt Mackall <mpm@selenic.com>
parents: 6997
diff changeset
    31
  $ kill `cat hg.pid`
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12650
diff changeset
    32
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12650
diff changeset
    33
  $ cd ..