annotate tests/test-hup.t @ 18307:0eed2546118a

branchmap: Save changectx creation during update The newly introduced `branchmap` function allows us to skip the creation of changectx objects. This speeds up the construction of the branchmap. On the mozilla repository (117293 changesets, 15490 mutable) Before: ! impactable 19.9 ! mutable 0.576 ! unserved 3.16 After: ! impactable 7.03 (2.8x faster) ! mutable 0.352 (1.6x) ! unserved 1.15 (2.7x) On the cpython repository (81418 changesets, 6418 mutable) Before: ! impactable 15.9 ! mutable 0.451 ! unserved 0.861 After: ! impactable 6.55 (2.4x faster) ! mutable 0.170 (2.6x faster) ! unserved 0.289 (2.9x faster) On the pypy repository (58852 changesets) Before: ! impactable 13.6 After: ! impactable 6.17 (2.2x faster) On my Mercurial repository (18295 changesets, 2210 mutable) Before: ! impactable 23.9 ! mutable 0.368 ! unserved 0.057 After: ! impactable 1.31 (18x faster) ! mutable 0.042 (8.7x) ! unserved 0.025 (2.2x)
author Pierre-Yves David <pierre-yves.david@logilab.fr>
date Fri, 11 Jan 2013 18:47:42 +0100
parents f64b25f147d7
children 9fae01831dea
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12413
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
1 Test hangup signal in the middle of transaction
642
5d6177b72fcc Update tests
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
2
15446
c5c9ca3719f9 tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents: 14266
diff changeset
3 $ "$TESTDIR/hghave" serve fifo || exit 80
12413
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
4 $ hg init
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
5 $ mkfifo p
16342
7e24d34837a9 tests: make test-hup more race-proof
Matt Mackall <mpm@selenic.com>
parents: 16299
diff changeset
6 $ hg serve --stdio < p 1>out 2>&1 &
12413
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
7 $ P=$!
16299
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
8
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
9 Do test while holding fifo open
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
10
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
11 $ (
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
12 > echo lock
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
13 > echo addchangegroup
16364
f64b25f147d7 tests: avoid test-hup hanging on AIX
Jim Hague <jim.hague@acm.org>
parents: 16344
diff changeset
14 > while [ ! -s .hg/store/journal ]; do sleep 0; done
16299
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
15 > kill -HUP $P
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
16 > ) > p
16342
7e24d34837a9 tests: make test-hup more race-proof
Matt Mackall <mpm@selenic.com>
parents: 16299
diff changeset
17
16344
fb765286f2f9 tests: avoid zombie lockup with test-hup
Matt Mackall <mpm@selenic.com>
parents: 16342
diff changeset
18 $ wait
16342
7e24d34837a9 tests: make test-hup more race-proof
Matt Mackall <mpm@selenic.com>
parents: 16299
diff changeset
19 $ cat out
12413
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
20 0
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
21 0
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
22 adding changesets
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
23 transaction abort!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
24 rollback completed
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
25 killed!
16299
853ffcafecfa tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents: 15455
diff changeset
26
12413
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
27 $ echo .hg/* .hg/store/*
15455
c6f87bdab2a1 phases: add rollback support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15446
diff changeset
28 .hg/00changelog.i .hg/journal.bookmarks .hg/journal.branch .hg/journal.desc .hg/journal.dirstate .hg/requires .hg/store .hg/store/00changelog.i .hg/store/00changelog.i.a .hg/store/journal.phaseroots