Mercurial > hg-stable
annotate mercurial/templates/atom/error.tmpl @ 52154:e4b242f9d4d9 stable tip
streamclone: disable the volatile file open handle optimization on Windows
Leaving files open caused new failures like this, since a47f09da8bd1:
diff --git a/tests/test-persistent-nodemap-stream-clone.t b/tests/test-persistent-nodemap-stream-clone.t
--- a/tests/test-persistent-nodemap-stream-clone.t
+++ b/tests/test-persistent-nodemap-stream-clone.t
@@ -115,7 +115,12 @@ Do a mix of clone and commit at the same
$ (hg clone -U --stream ssh://user@dummy/test-repo stream-clone-race-1 --debug 2>> clone-output | grep -E '00(changelog|manifest)' >> clone-output; touch $HG_TEST_STREAM_WALKED_FILE_3) &
$ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_1
$ hg -R test-repo/ commit -m foo
- created new head
+ transaction abort!
+ failed to recover 00changelog.n ([WinError 32] The process cannot access the file because it is being used by another process: b'$STR_REPR_TESTTMP\\test-repo/.hg/store/00changelog.n' -> b'$STR_REPR_TESTTMP\\test-repo/.hg/store/00changelog.n-f418dcd6')
+ rollback failed - please run hg recover
+ (failure reason: [WinError 32] The process cannot access the file because it is being used by another process: b'$STR_REPR_TESTTMP\\test-repo/.hg/store/00changelog.n' -> b'$STR_REPR_TESTTMP\\test-repo/.hg/store/00changelog.n-f418dcd6')
+ abort: The process cannot access the file because it is being used by another process: '$TESTTMP\test-repo\.hg\store\00changelog.n'
+ [255]
$ touch $HG_TEST_STREAM_WALKED_FILE_2
$ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_3
$ cat clone-output
Since the `VolatileManager` falls back to the old copy method when the open file
threshold is exceeded, this just drops the threshold so that only 1 file is
open. The actual value used (2) is unexpected, and explained inline. I'd like
to have a config option for this so that we can test both ways (in theory, it
could resort to copies on non-Windows systems too), but I don't see a `uimod.ui`
handy.
Alternately, I tried replacing the 3 `open()` calls in the `VolatileManager`
with `util.posixfile()`, but that simply hung the test on Windows for some
reason, I think on the same line that's indicated as failing above. (There was
a `grep` command hanging around, as well as `hg -R test-repo serve --stdio`.)
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Mon, 04 Nov 2024 16:43:05 -0500 |
parents | 4b0fc75f9403 |
children |
rev | line source |
---|---|
7749
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
1 {header} |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
2 <!-- Error --> |
18526
9409aeaafdc1
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names
Thomas Arendsen Hein <thomas@intevation.de>
parents:
9999
diff
changeset
|
3 <id>{urlbase}{url|urlescape}</id> |
9409aeaafdc1
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names
Thomas Arendsen Hein <thomas@intevation.de>
parents:
9999
diff
changeset
|
4 <link rel="self" href="{urlbase}{url|urlescape}atom-log"/> |
9409aeaafdc1
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names
Thomas Arendsen Hein <thomas@intevation.de>
parents:
9999
diff
changeset
|
5 <link rel="alternate" href="{urlbase}{url|urlescape}"/> |
7749
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
6 <title>Error</title> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
7 <updated>1970-01-01T00:00:00+00:00</updated> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
8 <entry> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
9 <title>Error</title> |
26421
4b0fc75f9403
urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents:
18526
diff
changeset
|
10 <id>https://mercurial-scm.org/#error</id> |
7749
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
11 <author> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
12 <name>mercurial</name> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
13 </author> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
14 <updated>1970-01-01T00:00:00+00:00</updated> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
15 <content type="text">{error|escape}</content> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
16 </entry> |
f32af51aaee5
hgweb: add atom error template
Sune Foldager <cryo@cyanite.org>
parents:
diff
changeset
|
17 </feed> |