equal
deleted
inserted
replaced
1 #require serve fifo |
|
2 |
|
3 Test hangup signal in the middle of transaction |
|
4 |
|
5 $ hg init |
|
6 $ mkfifo p |
|
7 $ hg serve --stdio < p 1>out 2>&1 & |
|
8 $ P=$! |
|
9 |
|
10 Do test while holding fifo open |
|
11 |
|
12 $ ( |
|
13 > echo lock |
|
14 > echo addchangegroup |
|
15 > start=`date +%s` |
|
16 > # 10 second seems much enough to let the server catch up |
|
17 > deadline=`expr $start + 10` |
|
18 > while [ ! -s .hg/store/journal ]; do |
|
19 > sleep 0; |
|
20 > if [ `date +%s` -gt $deadline ]; then |
|
21 > echo "transaction did not start after 10 seconds" >&2; |
|
22 > exit 1; |
|
23 > fi |
|
24 > done |
|
25 > kill -HUP $P |
|
26 > ) > p |
|
27 |
|
28 $ wait |
|
29 $ cat out |
|
30 0 |
|
31 0 |
|
32 adding changesets |
|
33 transaction abort! |
|
34 rollback completed |
|
35 killed! |
|
36 |
|
37 $ ls -1d .hg/* .hg/store/* |
|
38 .hg/00changelog.i |
|
39 .hg/journal.bookmarks |
|
40 .hg/journal.branch |
|
41 .hg/journal.desc |
|
42 .hg/journal.dirstate |
|
43 .hg/requires |
|
44 .hg/store |
|
45 .hg/store/00changelog.i |
|
46 .hg/store/00changelog.i.a |
|
47 .hg/store/journal.phaseroots |
|