Mercurial > hg
annotate tests/test-largefiles-wireproto.t @ 23923:ab6fd3205dad stable
largefiles: fix commit of a directory with no largefile changes (issue4330)
When a directory is named in the commit file list, the previous behavior was to
walk the list, and if no normal files in the directory were also named, add the
corresponding standin for each largefile in that directory. The directory is
then dropped from the list, so that committing a directory with no normal file
changes works. It then added the corresponding standin directory for the first
largefile seen, by prefixing it with '.hglf/'.
The latter is unnecessary since each affected largefile is explicitly referenced
by its standin in the list. It also caused an abort if there were no changed
largefiles in the directory, because none of its standins changed:
abort: .hglf/foo/bar: no match under directory!
This list of files is used to tweak a matcher in lfutil.updatestandinsbymatch(),
which is what is passed to commit().
The status() call that is ultimately done in the commit code with this matcher
seems to have some OS specific differences. It is not necessary to append '.'
for Windows to run the largefiles tests cleanly. But if '.' is not added to the
list, the match function isn't called on Linux, so status() would miss any
normal files that were also in a named directory. The commit then proceeds
without those normal files, or says "nothing changed" if there were no changed
largefiles in the directory. This is not filesystem specific, as VFAT on Linux
had the same behavior as when run on ext4. It is also not an issue with
lfilesrepo.status(), since that only calls the overridden implementation when
paths are passed to commit. I dont have access to an OS X machine ATM to test
there.
Maybe there's a better way to do this. But since the standin directory for the
first largefile was previously being added, and that caused the same walk in
status(), there's no preformance change to this. There is no danger of
erroneously committing files in '.', because the original match function is
called, and if it fails, the lfutil.updatestandinsbymatch() tweaked matcher only
indicates a match if the file is in the list of standins- and '.' never is. The
added tests confirm this.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sun, 18 Jan 2015 15:15:40 -0500 |
parents | e53f6b72a0e4 |
children | bd625cd4e5e7 |
rev | line source |
---|---|
23139
e53f6b72a0e4
spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents:
21424
diff
changeset
|
1 This file contains testcases that tend to be related to the wire protocol part |
e53f6b72a0e4
spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents:
21424
diff
changeset
|
2 of largefiles. |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
3 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
4 $ USERCACHE="$TESTTMP/cache"; export USERCACHE |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
5 $ mkdir "${USERCACHE}" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
6 $ cat >> $HGRCPATH <<EOF |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
7 > [extensions] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
8 > largefiles= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
9 > purge= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
10 > rebase= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
11 > transplant= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
12 > [phases] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
13 > publish=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
14 > [largefiles] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
15 > minsize=2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
16 > patterns=glob:**.dat |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
17 > usercache=${USERCACHE} |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
18 > [hooks] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
19 > precommit=sh -c "echo \\"Invoking status precommit hook\\"; hg status" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
20 > EOF |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
21 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
22 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
23 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
24 vanilla clients not locked out from largefiles servers on vanilla repos |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
25 $ mkdir r1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
26 $ cd r1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
27 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
28 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
29 $ hg add f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
30 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
31 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
32 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
33 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
34 $ hg serve -R r1 -d -p $HGPORT --pid-file hg.pid |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
35 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
36 $ hg --config extensions.largefiles=! clone http://localhost:$HGPORT r2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
37 requesting all changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
38 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
39 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
40 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
41 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
42 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
43 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
44 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
45 largefiles clients still work with vanilla servers |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
46 $ hg --config extensions.largefiles=! serve -R r1 -d -p $HGPORT1 --pid-file hg.pid |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
47 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
48 $ hg clone http://localhost:$HGPORT1 r3 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
49 requesting all changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
50 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
51 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
52 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
53 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
54 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
55 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
56 #endif |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
57 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
58 vanilla clients locked out from largefiles http repos |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
59 $ mkdir r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
60 $ cd r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
61 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
62 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
63 $ hg add --large f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
64 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
65 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
66 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
67 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
68 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
69 largefiles can be pushed locally (issue3583) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
70 $ hg init dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
71 $ cd r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
72 $ hg outgoing ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
73 comparing with ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
74 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
75 changeset: 0:639881c12b4c |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
76 tag: tip |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
77 user: test |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
78 date: Thu Jan 01 00:00:00 1970 +0000 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
79 summary: m1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
80 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
81 $ hg push ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
82 pushing to ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
83 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
84 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
85 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
86 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
87 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
88 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
89 exit code with nothing outgoing (issue3611) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
90 $ hg outgoing ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
91 comparing with ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
92 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
93 no changes found |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
94 [1] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
95 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
96 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
97 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
98 $ hg serve -R r4 -d -p $HGPORT2 --pid-file hg.pid |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
99 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
100 $ hg --config extensions.largefiles=! clone http://localhost:$HGPORT2 r5 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
101 abort: remote error: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
102 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
103 This repository uses the largefiles extension. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
104 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
105 Please enable it in your Mercurial config file. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
106 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
107 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
108 used all HGPORTs, kill all daemons |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
109 $ "$TESTDIR/killdaemons.py" $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
110 #endif |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
111 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
112 vanilla clients locked out from largefiles ssh repos |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
113 $ hg --config extensions.largefiles=! clone -e "python \"$TESTDIR/dummyssh\"" ssh://user@dummy/r4 r5 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
114 abort: remote error: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
115 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
116 This repository uses the largefiles extension. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
117 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
118 Please enable it in your Mercurial config file. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
119 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
120 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
121 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
122 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
123 largefiles clients refuse to push largefiles repos to vanilla servers |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
124 $ mkdir r6 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
125 $ cd r6 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
126 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
127 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
128 $ hg add f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
129 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
130 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
131 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
132 $ cat >> .hg/hgrc <<! |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
133 > [web] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
134 > push_ssl = false |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
135 > allow_push = * |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
136 > ! |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
137 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
138 $ hg clone r6 r7 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
139 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
140 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
141 $ cd r7 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
142 $ echo c2 > f2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
143 $ hg add --large f2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
144 $ hg commit -m "m2" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
145 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
146 A f2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
147 $ hg --config extensions.largefiles=! -R ../r6 serve -d -p $HGPORT --pid-file ../hg.pid |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
148 $ cat ../hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
149 $ hg push http://localhost:$HGPORT |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
150 pushing to http://localhost:$HGPORT/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
151 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
152 abort: http://localhost:$HGPORT/ does not appear to be a largefile store |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
153 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
154 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
155 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
156 putlfile errors are shown (issue3123) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
157 Corrupt the cached largefile in r7 and move it out of the servers usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
158 $ mv r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
159 $ echo 'client side corruption' > r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
160 $ rm "$USERCACHE/4cdac4d8b084d0b599525cf732437fb337d422a8" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
161 $ hg init empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
162 $ hg serve -R empty -d -p $HGPORT1 --pid-file hg.pid \ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
163 > --config 'web.allow_push=*' --config web.push_ssl=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
164 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
165 $ hg push -R r7 http://localhost:$HGPORT1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
166 pushing to http://localhost:$HGPORT1/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
167 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
168 remote: largefiles: failed to put 4cdac4d8b084d0b599525cf732437fb337d422a8 into store: largefile contents do not match hash |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
169 abort: remotestore: could not put $TESTTMP/r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 to remote store http://localhost:$HGPORT1/ (glob) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
170 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
171 $ mv 4cdac4d8b084d0b599525cf732437fb337d422a8 r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
172 Push of file that exists on server but is corrupted - magic healing would be nice ... but too magic |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
173 $ echo "server side corruption" > empty/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
174 $ hg push -R r7 http://localhost:$HGPORT1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
175 pushing to http://localhost:$HGPORT1/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
176 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
177 remote: adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
178 remote: adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
179 remote: adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
180 remote: added 2 changesets with 2 changes to 2 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
181 $ cat empty/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
182 server side corruption |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
183 $ rm -rf empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
184 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
185 Push a largefiles repository to a served empty repository |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
186 $ hg init r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
187 $ echo c3 > r8/f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
188 $ hg add --large r8/f1 -R r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
189 $ hg commit -m "m1" -R r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
190 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
191 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
192 $ hg init empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
193 $ hg serve -R empty -d -p $HGPORT2 --pid-file hg.pid \ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
194 > --config 'web.allow_push=*' --config web.push_ssl=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
195 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
196 $ rm "${USERCACHE}"/* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
197 $ hg push -R r8 http://localhost:$HGPORT2/#default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
198 pushing to http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
199 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
200 remote: adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
201 remote: adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
202 remote: adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
203 remote: added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
204 $ [ -f "${USERCACHE}"/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
205 $ [ -f empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
206 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
207 Clone over http, no largefiles pulled on clone. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
208 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
209 $ hg clone http://localhost:$HGPORT2/#default http-clone -U |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
210 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
211 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
212 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
213 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
214 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
215 test 'verify' with remotestore: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
216 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
217 $ rm "${USERCACHE}"/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
218 $ mv empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
219 $ hg -R http-clone verify --large --lfa |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
220 checking changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
221 checking manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
222 crosschecking files in changesets and manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
223 checking files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
224 1 files, 1 changesets, 1 total revisions |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
225 searching 1 changesets for largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
226 changeset 0:cf03e5bb9936: f1 missing |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
227 verified existence of 1 revisions of 1 largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
228 [1] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
229 $ mv 02a439e5c31c526465ab1a0ca1f431f76b827b90 empty/.hg/largefiles/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
230 $ hg -R http-clone -q verify --large --lfa |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
231 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
232 largefiles pulled on update - a largefile missing on the server: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
233 $ mv empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
234 $ hg -R http-clone up --config largefiles.usercache=http-clone-usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
235 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
236 f1: largefile 02a439e5c31c526465ab1a0ca1f431f76b827b90 not available from http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
237 0 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
238 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
239 $ hg -R http-clone st |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
240 ! f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
241 $ hg -R http-clone up -Cqr null |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
242 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
243 largefiles pulled on update - a largefile corrupted on the server: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
244 $ echo corruption > empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
245 $ hg -R http-clone up --config largefiles.usercache=http-clone-usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
246 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
247 f1: data corruption (expected 02a439e5c31c526465ab1a0ca1f431f76b827b90, got 6a7bb2556144babe3899b25e5428123735bb1e27) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
248 0 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
249 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
250 $ hg -R http-clone st |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
251 ! f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
252 $ [ ! -f http-clone/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
253 $ [ ! -f http-clone/f1 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
254 $ [ ! -f http-clone-usercache ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
255 $ hg -R http-clone verify --large --lfc |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
256 checking changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
257 checking manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
258 crosschecking files in changesets and manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
259 checking files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
260 1 files, 1 changesets, 1 total revisions |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
261 searching 1 changesets for largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
262 verified contents of 1 revisions of 1 largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
263 $ hg -R http-clone up -Cqr null |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
264 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
265 largefiles pulled on update - no server side problems: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
266 $ mv 02a439e5c31c526465ab1a0ca1f431f76b827b90 empty/.hg/largefiles/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
267 $ hg -R http-clone --debug up --config largefiles.usercache=http-clone-usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
268 resolving manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
269 branchmerge: False, force: False, partial: False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
270 ancestor: 000000000000, local: 000000000000+, remote: cf03e5bb9936 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
271 .hglf/f1: remote created -> g |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
272 getting .hglf/f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
273 updating: .hglf/f1 1/1 files (100.00%) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
274 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
275 using http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
276 sending capabilities command |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
277 sending batch command |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
278 getting largefiles: 0/1 lfile (0.00%) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
279 getting f1:02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
280 sending getlfile command |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
281 found 02a439e5c31c526465ab1a0ca1f431f76b827b90 in store |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
282 1 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
283 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
284 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
285 $ ls http-clone-usercache/* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
286 http-clone-usercache/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
287 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
288 $ rm -rf empty http-clone* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
289 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
290 used all HGPORTs, kill all daemons |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
291 $ "$TESTDIR/killdaemons.py" $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
292 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
293 #endif |