Mercurial > hg
annotate tests/test-archive-symlinks.t @ 34107:4f60720cf0df
blackbox: fix rotation with chg
The added test will show:
$ $PYTHON showsize.py .hg/blackbox*
.hg/blackbox.log: < 500
.hg/blackbox.log.1: < 500
.hg/blackbox.log.2: < 500
.hg/blackbox.log.3: < 500
.hg/blackbox.log.4: < 500
.hg/blackbox.log.5: >= 500
with previous code.
The issue is caused by blackbox caching file objects *by path*, and the
rotation size check could run on a wrong file object (i.e. it should check
"blackbox.log", but `filehandles["blackbox.log"]` contains a file object
that has been renamed to "blackbox.log.5").
This patch removes the "filehandlers" global cache added by 45313f5a3a8c to
solve the issue.
I think the original patch was trying to make different ui objects use a same
file object if their blackbox.log path is the same. In theory it could also
be problematic in the rotation case. Anyway, that should become unnecessary
after D650.
Differential Revision: https://phab.mercurial-scm.org/D648
author | Jun Wu <quark@fb.com> |
---|---|
date | Wed, 06 Sep 2017 19:27:30 -0700 |
parents | c4d03b6d9576 |
children |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
21216
diff
changeset
|
1 #require symlink |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
2 |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
3 $ origdir=`pwd` |
4831
6f08bc1bd00b
archive: add symlink support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
4 |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
5 $ hg init repo |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
6 $ cd repo |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
7 $ ln -s nothing dangling |
4831
6f08bc1bd00b
archive: add symlink support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
8 |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
9 avoid tar warnings about old timestamp |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
10 |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
11 $ hg ci -d '2000-01-01 00:00:00 +0000' -qAm 'add symlink' |
4831
6f08bc1bd00b
archive: add symlink support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
12 |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
13 $ hg archive -t files ../archive |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
14 $ hg archive -t tar -p tar ../archive.tar |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
15 $ hg archive -t zip -p zip ../archive.zip |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
16 |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
17 files |
4831
6f08bc1bd00b
archive: add symlink support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
18 |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
19 $ cd "$origdir" |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
20 $ cd archive |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
22046
diff
changeset
|
21 $ readlink.py dangling |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
22 dangling -> nothing |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
23 |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
24 tar |
4831
6f08bc1bd00b
archive: add symlink support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
25 |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
26 $ cd "$origdir" |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
27 $ tar xf archive.tar |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
28 $ cd tar |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
22046
diff
changeset
|
29 $ readlink.py dangling |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
30 dangling -> nothing |
4831
6f08bc1bd00b
archive: add symlink support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
31 |
29844
c4d03b6d9576
tests: guard test-archive-symlink with unziplinks check
Augie Fackler <augie@google.com>
parents:
25472
diff
changeset
|
32 #if unziplinks |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
33 zip |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
34 |
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
35 $ cd "$origdir" |
21216
6d632cf8a811
tests: suppress spurious lchmod error from unzip (issue4088)
Matt Mackall <mpm@selenic.com>
parents:
16913
diff
changeset
|
36 $ unzip archive.zip > /dev/null 2>&1 |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
37 $ cd zip |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
22046
diff
changeset
|
38 $ readlink.py dangling |
11854
aa2abde72da1
tests: unify test-archive-symlinks
Martin Geisler <mg@lazybytes.net>
parents:
5683
diff
changeset
|
39 dangling -> nothing |
29844
c4d03b6d9576
tests: guard test-archive-symlink with unziplinks check
Augie Fackler <augie@google.com>
parents:
25472
diff
changeset
|
40 #endif |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
41 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
42 $ cd .. |