annotate tests/test-hup.t @ 14266:89e7d35e0ef0 stable

fix bookmarks rollback behavior Before this patch undo.bookmarks was created on bookmarks write and not with other transaction-related files. There were two issues: first is that if you have changed bookmarks few times after a transaction happened, rollback will give you a state which can point to non-existing revision. Second is that if you have not changed bookmarks after a transaction, rollback will touch your state anyway. This change also adds `localrepo._writejournal` method, which can be used by other extensions to save their transaction-related backup in right time.
author Alexander Solovyov <alexander@solovyov.net>
date Sun, 01 May 2011 13:07:00 +0200
parents f8dc83689f19
children c5c9ca3719f9
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
12413
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
3 $ "$TESTDIR/hghave" fifo || exit 80
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
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
6 $ hg serve --stdio < p &
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
7 $ P=$!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
8 $ (echo lock; echo addchangegroup; sleep 5) > p &
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
9 $ Q=$!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
10 $ sleep 3
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
11 0
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
12 0
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
13 adding changesets
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
14 $ kill -HUP $P
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
15 $ wait
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
16 transaction abort!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
17 rollback completed
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
18 killed!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
19 $ echo .hg/* .hg/store/*
14266
89e7d35e0ef0 fix bookmarks rollback behavior
Alexander Solovyov <alexander@solovyov.net>
parents: 12413
diff changeset
20 .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