|
1 $ PYTHONPATH=$TESTDIR/..:$PYTHONPATH |
|
2 $ export PYTHONPATH |
|
3 |
|
4 $ . "$TESTDIR/remotefilelog-library.sh" |
|
5 |
|
6 $ hginit master |
|
7 $ cd master |
|
8 $ cat >> .hg/hgrc <<EOF |
|
9 > [remotefilelog] |
|
10 > server=True |
|
11 > EOF |
|
12 $ echo x > x |
|
13 $ echo y > y |
|
14 $ echo z > z |
|
15 $ hg commit -qAm xy |
|
16 |
|
17 $ cd .. |
|
18 |
|
19 $ hgcloneshallow ssh://user@dummy/master shallow -q |
|
20 3 files fetched over 1 fetches - (3 misses, 0.00% hit ratio) over *s (glob) |
|
21 $ cd shallow |
|
22 |
|
23 Verify corrupt cache handling repairs by default |
|
24 |
|
25 $ hg up -q null |
|
26 $ chmod u+w $CACHEDIR/master/11/f6ad8ec52a2984abaafd7c3b516503785c2072/1406e74118627694268417491f018a4a883152f0 |
|
27 $ echo x > $CACHEDIR/master/11/f6ad8ec52a2984abaafd7c3b516503785c2072/1406e74118627694268417491f018a4a883152f0 |
|
28 $ hg up tip |
|
29 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
30 1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over *s (glob) |
|
31 |
|
32 Verify corrupt cache error message |
|
33 |
|
34 $ hg up -q null |
|
35 $ cat >> .hg/hgrc <<EOF |
|
36 > [remotefilelog] |
|
37 > validatecache=off |
|
38 > EOF |
|
39 $ chmod u+w $CACHEDIR/master/11/f6ad8ec52a2984abaafd7c3b516503785c2072/1406e74118627694268417491f018a4a883152f0 |
|
40 $ echo x > $CACHEDIR/master/11/f6ad8ec52a2984abaafd7c3b516503785c2072/1406e74118627694268417491f018a4a883152f0 |
|
41 $ hg up tip 2>&1 | egrep "^RuntimeError" |
|
42 RuntimeError: unexpected remotefilelog header: illegal format |
|
43 |
|
44 Verify detection and remediation when remotefilelog.validatecachelog is set |
|
45 |
|
46 $ cat >> .hg/hgrc <<EOF |
|
47 > [remotefilelog] |
|
48 > validatecachelog=$PWD/.hg/remotefilelog_cache.log |
|
49 > validatecache=strict |
|
50 > EOF |
|
51 $ chmod u+w $CACHEDIR/master/11/f6ad8ec52a2984abaafd7c3b516503785c2072/1406e74118627694268417491f018a4a883152f0 |
|
52 $ echo x > $CACHEDIR/master/11/f6ad8ec52a2984abaafd7c3b516503785c2072/1406e74118627694268417491f018a4a883152f0 |
|
53 $ hg up tip |
|
54 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
55 1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over *s (glob) |
|
56 $ cat .hg/remotefilelog_cache.log |
|
57 corrupt $TESTTMP/hgcache/master/11/f6ad8ec52a2984abaafd7c3b516503785c2072/1406e74118627694268417491f018a4a883152f0 during contains |
|
58 |
|
59 Verify handling of corrupt server cache |
|
60 |
|
61 $ rm -f ../master/.hg/remotefilelogcache/y/076f5e2225b3ff0400b98c92aa6cdf403ee24cca |
|
62 $ touch ../master/.hg/remotefilelogcache/y/076f5e2225b3ff0400b98c92aa6cdf403ee24cca |
|
63 $ clearcache |
|
64 $ hg prefetch -r . |
|
65 3 files fetched over 1 fetches - (3 misses, 0.00% hit ratio) over *s (glob) |
|
66 $ test -s ../master/.hg/remotefilelogcache/y/076f5e2225b3ff0400b98c92aa6cdf403ee24cca |
|
67 $ hg debugremotefilelog $CACHEDIR/master/95/cb0bfd2977c761298d9624e4b4d4c72a39974a/076f5e2225b3ff0400b98c92aa6cdf403ee24cca |
|
68 size: 2 bytes |
|
69 path: $TESTTMP/hgcache/master/95/cb0bfd2977c761298d9624e4b4d4c72a39974a/076f5e2225b3ff0400b98c92aa6cdf403ee24cca |
|
70 key: 076f5e2225b3 |
|
71 |
|
72 node => p1 p2 linknode copyfrom |
|
73 076f5e2225b3 => 000000000000 000000000000 f3d0bb0d1e48 |