Mercurial > hg
annotate tests/test-unrelated-pull.t @ 33755:cde4cfeb6e3e stable
ui: restore behavior to ignore some I/O errors (issue5658)
e9646ff34d55 and 1bfb9a63b98e refactored ui methods to no longer
silently swallow some IOError instances. This is arguably the
correct thing to do. However, it had the unfortunate side-effect
of causing StdioError to bubble up to sensitive code like
transaction aborts, leading to an uncaught exceptions and failures
to e.g. roll back a transaction. This could occur when a remote
HTTP or SSH client connection dropped. The new behavior is
resulting in semi-frequent "abandonded transaction" errors on
multiple high-volume repositories at Mozilla.
This commit effectively reverts e9646ff34d55 and 1bfb9a63b98e to
restore the old behavior.
I agree with the principle that I/O errors shouldn't be ignored.
That makes this change... unfortunate. However, our hands are tied
for what to do on stable. I think the proper solution is for the
ui's behavior to be configurable (possibly via a context manager).
During critical sections like transaction rollback and abort, it
should be possible to suppress errors. But this feature would not
be appropriate on stable.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Tue, 15 Aug 2017 13:04:31 -0700 |
parents | f2719b387380 |
children | eb586ed5d8ce |
rev | line source |
---|---|
13956
ffb5c09ba822
tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents:
13742
diff
changeset
|
1 $ hg init a |
12279 | 2 $ cd a |
3 $ echo 123 > a | |
4 $ hg add a | |
5 $ hg commit -m "a" -u a | |
749
7e4843b7efd2
Update tests to use commit -m and default -u
mpm@selenic.com
parents:
579
diff
changeset
|
6 |
12279 | 7 $ cd .. |
13956
ffb5c09ba822
tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents:
13742
diff
changeset
|
8 $ hg init b |
12279 | 9 $ cd b |
10 $ echo 321 > b | |
11 $ hg add b | |
12 $ hg commit -m "b" -u b | |
13 | |
14 $ hg pull ../a | |
15 pulling from ../a | |
16 searching for changes | |
17 abort: repository is unrelated | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
18 [255] |
579
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
19 |
12279 | 20 $ hg pull -f ../a |
21 pulling from ../a | |
22 searching for changes | |
23 warning: repository is unrelated | |
13742
7abab875e647
discovery: avoid discovery when local graph is a subset of remote
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12316
diff
changeset
|
24 requesting all changes |
12279 | 25 adding changesets |
26 adding manifests | |
27 adding file changes | |
28 added 1 changesets with 1 changes to 1 files (+1 heads) | |
29 (run 'hg heads' to see heads, 'hg merge' to merge) | |
579
ffeb2c3a1966
Actually warn on pulling from an unrelated repository
mpm@selenic.com
parents:
diff
changeset
|
30 |
12279 | 31 $ hg heads |
32 changeset: 1:9a79c33a9db3 | |
33 tag: tip | |
34 parent: -1:000000000000 | |
35 user: a | |
36 date: Thu Jan 01 00:00:00 1970 +0000 | |
37 summary: a | |
38 | |
39 changeset: 0:01f8062b2de5 | |
40 user: b | |
41 date: Thu Jan 01 00:00:00 1970 +0000 | |
42 summary: b | |
43 | |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13956
diff
changeset
|
44 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13956
diff
changeset
|
45 $ cd .. |