tests/test-merge10.t
author Gregory Szorc <gregory.szorc@gmail.com>
Sun, 20 Dec 2015 11:56:24 -0800
changeset 27633 37d7cf569cf3
parent 16913 f2719b387380
child 34661 eb586ed5d8ce
permissions -rw-r--r--
wireproto: support disabling bundle1 only if repo is generaldelta I recently implemented the server.bundle1* options to control whether bundle1 exchange is allowed. After thinking about Mozilla's strategy for handling generaldelta rollout a bit more, I think server operators need an additional lever: disable bundle1 if and only if the repo is generaldelta. bundle1 exchange for non-generaldelta repos will not have the potential for CPU explosion that generaldelta repos do. Therefore, it makes sense for server operators to continue to allow bundle1 exchange for non-generaldelta repos without having to set a per-repo hgrc option to change the policy depending on whether the repo is generaldelta. This patch introduces a new set of options to control bundle1 behavior for generaldelta repos. These options enable server operators to limit bundle1 restrictions to the class of repos that can be performance issues. It also allows server operators to tie bundle1 access to store format. In many server environments (including Mozilla's), legacy repos will not be generaldelta and new repos will or might be. New repos often aren't bound by legacy access requirements, so setting a global policy that disallows access to new/generaldelta repos via bundle1 could be a reasonable policy in many server environments. This patch makes this policy very easy to implement (modify global hgrc, add options to existing generaldelta repos to grandfather them in).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     1
Test for changeset 9fe267f77f56ff127cf7e65dc15dd9de71ce8ceb
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     2
(merge correctly when all the files in a directory are moved
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     3
but then local changes are added in the same directory)
4696
59b8f9361545 tests: add merge test for changeset 9fe267f77f56
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     4
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     5
  $ hg init a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     6
  $ cd a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     7
  $ mkdir -p testdir
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     8
  $ echo a > testdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     9
  $ hg add testdir/a
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    10
  $ hg commit -m a
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    11
  $ cd ..
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    12
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    13
  $ hg clone a b
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    14
  updating to branch default
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    15
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    16
  $ cd a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    17
  $ echo alpha > testdir/a
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    18
  $ hg commit -m remote-change
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    19
  $ cd ..
4696
59b8f9361545 tests: add merge test for changeset 9fe267f77f56
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    20
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    21
  $ cd b
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    22
  $ mkdir testdir/subdir
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    23
  $ hg mv testdir/a testdir/subdir/a
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    24
  $ hg commit -m move
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    25
  $ mkdir newdir
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    26
  $ echo beta > newdir/beta
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    27
  $ hg add newdir/beta
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    28
  $ hg commit -m local-addition
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    29
  $ hg pull ../a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    30
  pulling from ../a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    31
  searching for changes
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    32
  adding changesets
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    33
  adding manifests
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    34
  adding file changes
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    35
  added 1 changesets with 1 changes to 1 files (+1 heads)
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    36
  (run 'hg heads' to see heads, 'hg merge' to merge)
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    37
  $ hg up -C 2
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    38
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    39
  $ hg merge
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    40
  merging testdir/subdir/a and testdir/a to testdir/subdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    41
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    42
  (branch merge, don't forget to commit)
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    43
  $ hg stat
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    44
  M testdir/subdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    45
  $ hg diff --nodates
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    46
  diff -r bc21c9773bfa testdir/subdir/a
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    47
  --- a/testdir/subdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    48
  +++ b/testdir/subdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    49
  @@ -1,1 +1,1 @@
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    50
  -a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    51
  +alpha
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12156
diff changeset
    52
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12156
diff changeset
    53
  $ cd ..