annotate tests/test-transaction-safety.t @ 50470:814f55775b21

store: no longer explicitly mark the splitted index as ignored Since the fncache is going to automatically recognised it as non "normal" revlog file, we don't need to explicitly make it ignored.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Mon, 15 May 2023 08:56:08 +0200
parents ebfc315c6077
children cf23a8432f51
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
1 Test transaction safety
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
2 =======================
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
3
47263
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
4 #testcases revlogv1 revlogv2 changelogv2
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
5
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
6 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
7
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
8 $ cat << EOF >> $HGRCPATH
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
9 > [experimental]
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
10 > revlogv2=no
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
11 > EOF
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
12
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
13 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
14
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
15 #if revlogv2
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
16
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
17 $ cat << EOF >> $HGRCPATH
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
18 > [experimental]
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
19 > revlogv2=enable-unstable-format-and-corrupt-my-data
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
20 > EOF
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
21
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
22 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
23
47263
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
24 #if changelogv2
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
25
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
26 $ cat << EOF >> $HGRCPATH
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
27 > [format]
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
28 > exp-use-changelog-v2=enable-unstable-format-and-corrupt-my-data
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
29 > EOF
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
30
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
31 #endif
6c84fc9c9a90 changelogv2: introduce a "changelogv2" feature
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47241
diff changeset
32
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
33 This test basic case to make sure external process do not see transaction
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
34 content until it is committed.
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
35
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
36 # TODO: also add an external reader accessing revlog files while they are written
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
37 # (instead of during transaction finalisation)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
38
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
39 # TODO: also add stream clone and hardlink clone happening during these transaction.
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
40
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
41 setup
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
42 -----
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
43
47781
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
44 synchronisation+output script using the following schedule:
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
45
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
46 [A1] "external" is started
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
47 [A2] "external" waits on EXT_UNLOCK
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
48 [A2] "external" + creates EXT_WAITING → unlocks [C1]
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
49 [B1] "hg commit/pull" is started
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
50 [B2] "hg commit/pull" is ready to be committed
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
51 [B3] "hg commit/pull" spawn "internal" using a pretxnclose hook (need [C4])
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
52 [C1] "internal" waits on EXT_WAITING (need [A2])
47782
ebfc315c6077 test-transaction-safety: relax some of the synchronisation schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47781
diff changeset
53 [C2] "internal" creates EXT_UNLOCK → unlocks [A2]
ebfc315c6077 test-transaction-safety: relax some of the synchronisation schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47781
diff changeset
54 [C3] "internal" show the tipmost revision (inside of the transaction)
ebfc315c6077 test-transaction-safety: relax some of the synchronisation schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47781
diff changeset
55 [C4] "internal" waits on EXT_DONE (need [A4])
47781
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
56 [A3] "external" show the tipmost revision (outside of the transaction)
47782
ebfc315c6077 test-transaction-safety: relax some of the synchronisation schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47781
diff changeset
57 [A4] "external" creates EXT_DONE → unlocks [C4]
ebfc315c6077 test-transaction-safety: relax some of the synchronisation schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47781
diff changeset
58 [C5] "internal" end of execution -> unlock [B3]
47781
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
59 [B4] "hg commit/pull" transaction is committed on disk
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
60
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
61
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
62 $ mkdir sync
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
63 $ mkdir output
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
64 $ mkdir script
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
65 $ HG_TEST_FILE_EXT_WAITING=$TESTTMP/sync/ext_waiting
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
66 $ export HG_TEST_FILE_EXT_WAITING
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
67 $ HG_TEST_FILE_EXT_UNLOCK=$TESTTMP/sync/ext_unlock
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
68 $ export HG_TEST_FILE_EXT_UNLOCK
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
69 $ HG_TEST_FILE_EXT_DONE=$TESTTMP/sync/ext_done
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
70 $ export HG_TEST_FILE_EXT_DONE
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
71 $ cat << EOF > script/external.sh
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
72 > #!/bin/sh
47313
b1ce93dcdf3c tests: fix test-transaction-safety.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 47263
diff changeset
73 > "$RUNTESTDIR/testlib/wait-on-file" 5 "$HG_TEST_FILE_EXT_UNLOCK" "$HG_TEST_FILE_EXT_WAITING"
b1ce93dcdf3c tests: fix test-transaction-safety.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 47263
diff changeset
74 > hg log --rev 'tip' -T 'external: {rev} {desc}\n' > "$TESTTMP/output/external.out"
b1ce93dcdf3c tests: fix test-transaction-safety.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 47263
diff changeset
75 > touch "$HG_TEST_FILE_EXT_DONE"
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
76 > EOF
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
77 $ cat << EOF > script/internal.sh
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
78 > #!/bin/sh
47781
4870a8dc24d9 test-transaction-safety: document the test schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47313
diff changeset
79 > "$RUNTESTDIR/testlib/wait-on-file" 5 "$HG_TEST_FILE_EXT_WAITING"
47782
ebfc315c6077 test-transaction-safety: relax some of the synchronisation schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47781
diff changeset
80 > touch "$HG_TEST_FILE_EXT_UNLOCK"
47313
b1ce93dcdf3c tests: fix test-transaction-safety.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 47263
diff changeset
81 > hg log --rev 'tip' -T 'internal: {rev} {desc}\n' > "$TESTTMP/output/internal.out"
47782
ebfc315c6077 test-transaction-safety: relax some of the synchronisation schedule
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47781
diff changeset
82 > "$RUNTESTDIR/testlib/wait-on-file" 5 "$HG_TEST_FILE_EXT_DONE"
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
83 > EOF
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
84
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
85
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
86 Automated commands:
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
87
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
88 $ make_one_commit() {
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
89 > rm -f $TESTTMP/sync/*
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
90 > rm -f $TESTTMP/output/*
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
91 > hg log --rev 'tip' -T 'pre-commit: {rev} {desc}\n'
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
92 > echo x >> a
47313
b1ce93dcdf3c tests: fix test-transaction-safety.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 47263
diff changeset
93 > sh $TESTTMP/script/external.sh & hg commit -m "$1"
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
94 > cat $TESTTMP/output/external.out
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
95 > cat $TESTTMP/output/internal.out
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
96 > hg log --rev 'tip' -T 'post-tr: {rev} {desc}\n'
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
97 > }
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
98
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
99
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
100 $ make_one_pull() {
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
101 > rm -f $TESTTMP/sync/*
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
102 > rm -f $TESTTMP/output/*
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
103 > hg log --rev 'tip' -T 'pre-commit: {rev} {desc}\n'
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
104 > echo x >> a
47313
b1ce93dcdf3c tests: fix test-transaction-safety.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 47263
diff changeset
105 > sh $TESTTMP/script/external.sh & hg pull ../other-repo/ --rev "$1" --force --quiet
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
106 > cat $TESTTMP/output/external.out
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
107 > cat $TESTTMP/output/internal.out
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
108 > hg log --rev 'tip' -T 'post-tr: {rev} {desc}\n'
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
109 > }
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
110
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
111 prepare a large source to which to pull from:
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
112
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
113 The source is large to unsure we don't use inline more after the pull
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
114
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
115 $ hg init other-repo
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
116 $ hg -R other-repo debugbuilddag .+500
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
117
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
118
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
119 prepare an empty repository where to make test:
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
120
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
121 $ hg init repo
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
122 $ cd repo
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
123 $ touch a
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
124 $ hg add a
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
125
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
126 prepare a small extension to controll inline size
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
127
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
128 $ mkdir $TESTTMP/ext
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
129 $ cat << EOF > $TESTTMP/ext/small_inline.py
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
130 > from mercurial import revlog
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
131 > revlog._maxinline = 64 * 100
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
132 > EOF
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
133
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
134
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
135
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
136
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
137 $ cat << EOF >> $HGRCPATH
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
138 > [extensions]
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
139 > small_inline=$TESTTMP/ext/small_inline.py
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
140 > [hooks]
47313
b1ce93dcdf3c tests: fix test-transaction-safety.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 47263
diff changeset
141 > pretxnclose = sh $TESTTMP/script/internal.sh
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
142 > EOF
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
143
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
144 check this is true for the initial commit (inline → inline)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
145 -----------------------------------------------------------
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
146
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
147 the repository should still be inline (for relevant format)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
148
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
149 $ make_one_commit first
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
150 pre-commit: -1
47239
682f09857d69 revlogv2: delay the update of the changelog docket to transaction end
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47237
diff changeset
151 external: -1
47241
2219853a1503 revlogv2: track pending write in the docket and expose it to hooks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47239
diff changeset
152 internal: 0 first
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
153 post-tr: 0 first
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
154
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
155 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
156
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
157 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
158 flags : inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
159
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
160 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
161
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
162 check this is true for extra commit (inline → inline)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
163 -----------------------------------------------------
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
164
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
165 the repository should still be inline (for relevant format)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
166
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
167 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
168
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
169 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
170 flags : inline
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
171
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
172 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
173
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
174 $ make_one_commit second
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
175 pre-commit: 0 first
47239
682f09857d69 revlogv2: delay the update of the changelog docket to transaction end
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47237
diff changeset
176 external: 0 first
47241
2219853a1503 revlogv2: track pending write in the docket and expose it to hooks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47239
diff changeset
177 internal: 1 second
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
178 post-tr: 1 second
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
179
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
180 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
181
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
182 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
183 flags : inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
184
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
185 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
186
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
187 check this is true for a small pull (inline → inline)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
188 -----------------------------------------------------
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
189
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
190 the repository should still be inline (for relevant format)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
191
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
192 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
193
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
194 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
195 flags : inline
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
196
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
197 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
198
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
199 $ make_one_pull 3
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
200 pre-commit: 1 second
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
201 warning: repository is unrelated
47239
682f09857d69 revlogv2: delay the update of the changelog docket to transaction end
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47237
diff changeset
202 external: 1 second
47241
2219853a1503 revlogv2: track pending write in the docket and expose it to hooks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47239
diff changeset
203 internal: 5 r3
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
204 post-tr: 5 r3
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
205
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
206 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
207
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
208 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
209 flags : inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
210
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
211 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
212
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
213 Make a large pull (inline → no-inline)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
214 ---------------------------------------
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
215
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
216 the repository should no longer be inline (for relevant format)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
217
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
218 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
219
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
220 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
221 flags : inline
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
222
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
223 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
224
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
225 $ make_one_pull 400
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
226 pre-commit: 5 r3
47239
682f09857d69 revlogv2: delay the update of the changelog docket to transaction end
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47237
diff changeset
227 external: 5 r3
47241
2219853a1503 revlogv2: track pending write in the docket and expose it to hooks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47239
diff changeset
228 internal: 402 r400
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
229 post-tr: 402 r400
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
230
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
231 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
232
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
233 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
234 [1]
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
235
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
236 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
237
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
238 check this is true for extra commit (no-inline → no-inline)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
239 -----------------------------------------------------------
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
240
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
241 the repository should no longer be inline (for relevant format)
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
242
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
243 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
244
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
245 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
246 [1]
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
247
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
248 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
249
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
250 $ make_one_commit third
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
251 pre-commit: 402 r400
47239
682f09857d69 revlogv2: delay the update of the changelog docket to transaction end
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47237
diff changeset
252 external: 402 r400
47241
2219853a1503 revlogv2: track pending write in the docket and expose it to hooks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47239
diff changeset
253 internal: 403 third
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
254 post-tr: 403 third
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
255
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
256 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
257
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
258 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
259 [1]
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
260
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
261 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
262
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
263
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
264 Make a pull (not-inline → no-inline)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
265 -------------------------------------
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
266
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
267 the repository should no longer be inline (for relevant format)
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
268
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
269 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
270
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
271 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
272 [1]
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
273
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
274 #endif
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
275
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
276 $ make_one_pull tip
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
277 pre-commit: 403 third
47239
682f09857d69 revlogv2: delay the update of the changelog docket to transaction end
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47237
diff changeset
278 external: 403 third
47241
2219853a1503 revlogv2: track pending write in the docket and expose it to hooks
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47239
diff changeset
279 internal: 503 r500
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
280 post-tr: 503 r500
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
281
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
282 #if revlogv1
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
283
47236
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
284 $ hg debugrevlog -c | grep inline
1422eef04309 revlog: add a new test file focussed on testing transactionally issue
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
285 [1]
47237
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
286
864f4ebe6a8d revlogv2: also test transactionality of revlog v2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47236
diff changeset
287 #endif