author | Pierre-Yves David <pierre-yves.david@octobus.net> |
Mon, 11 Dec 2023 11:50:55 +0100 | |
changeset 51180 | 2e0b2a387502 |
parent 51179 | cf23a8432f51 |
permissions | -rw-r--r-- |
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' |
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
92 |
> echo x >> of |
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' |
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
104 |
> echo x >> of |
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 |
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
116 |
$ hg -R other-repo debugbuilddag .+500 --overwritten-file |
47236
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 |
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
123 |
$ touch of |
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
124 |
$ hg add of |
47236
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 |
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
131 |
> revlog._maxinline = 3 * 100 |
47236
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
157 |
$ hg debugrevlog of | grep inline |
51180
2e0b2a387502
test-transaction-safety: glog out irrelevant flag
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51179
diff
changeset
|
158 |
flags : inline, * (glob) |
47236
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
169 |
$ hg debugrevlog of | grep inline |
51180
2e0b2a387502
test-transaction-safety: glog out irrelevant flag
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51179
diff
changeset
|
170 |
flags : inline, * (glob) |
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
182 |
$ hg debugrevlog of | grep inline |
51180
2e0b2a387502
test-transaction-safety: glog out irrelevant flag
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51179
diff
changeset
|
183 |
flags : inline, * (glob) |
47236
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
194 |
$ hg debugrevlog of | grep inline |
51180
2e0b2a387502
test-transaction-safety: glog out irrelevant flag
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51179
diff
changeset
|
195 |
flags : inline, * (glob) |
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
208 |
$ hg debugrevlog of | grep inline |
51180
2e0b2a387502
test-transaction-safety: glog out irrelevant flag
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51179
diff
changeset
|
209 |
flags : inline, * (glob) |
47236
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
220 |
$ hg debugrevlog of | grep inline |
51180
2e0b2a387502
test-transaction-safety: glog out irrelevant flag
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51179
diff
changeset
|
221 |
flags : inline, * (glob) |
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
233 |
$ hg debugrevlog of | grep inline |
47236
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
245 |
$ hg debugrevlog of | grep inline |
47236
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
258 |
$ hg debugrevlog of | grep inline |
47236
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
271 |
$ hg debugrevlog of | grep inline |
47236
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 |
|
51179
cf23a8432f51
test-transaction-safety: perform the test on a filelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47782
diff
changeset
|
284 |
$ hg debugrevlog of | grep inline |
47236
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 |