tests/test-obsolete-changeset-exchange.t
author Gregory Szorc <gregory.szorc@gmail.com>
Sat, 14 Apr 2018 11:50:19 -0700
changeset 37719 a656cba08a04
parent 36968 2090044a288d
child 37841 d618558e4e8b
permissions -rw-r--r--
wireprotov2: move response handling out of httppeer And fix some bugs while we're here. The code for processing response data from the unified framing protocol is mostly peer agnostic. The peer-specific bits are the configuration of the client reactor and how I/O is performed. I initially implemented things in httppeer for expediency. This commit establishes a module for holding the peer API level code for the framing based protocol. Inside this module we have a class to help coordinate higher-level activities, such as managing response object. The client handler bits could be rolled into clientreactor. However, I want clientreactor to be sans I/O and I want it to only be concerned with protocol-level details, not higher-level concepts like how protocol events are converted into peer API concepts. I want clientreactor to receive a frame and then tell the caller what should probably be done about it. If we start putting things like future resolution into clientreactor, we'll constrain how the protocol can be used (e.g. by requiring futures). The new code is loosely based on what was in httppeer before. I changed things a bit around response handling. We now buffer the entire response "body" and then handle it as one atomic unit. This fixed a bug around decoding CBOR data that spanned multiple frames. I also fixed an off-by-one bug where we failed to read a single byte CBOR value at the end of the stream. That's why tests have changed. The new state of httppeer is much cleaner. It is largely agnostic about framing protocol implementation details. That's how it should be: the framing protocol is designed to be largely transport agnostic. We want peers merely putting bytes on the wire and telling the framing protocol where to read response data from. There's still a bit of work to be done here, especially for representing responses. But at least we're a step closer to having a higher-level peer interface that can be plugged into the SSH peer someday. I initially added this class to wireprotoframing. However, we'll eventually need version 2 specific functions to convert CBOR responses into data structures expected by the code calling commands. This needs to live somewhere. Since that code would be shared across peers, we need a common module. We have wireprotov1peer for the equivalent version 1 code. So I decided to establish wireprotov2peer. Differential Revision: https://phab.mercurial-scm.org/D3379
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17248
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     1
Test changesets filtering during exchanges (some tests are still in
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     2
test-obsolete.t)
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     3
22955
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 18499
diff changeset
     4
  $ cat >> $HGRCPATH << EOF
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 18499
diff changeset
     5
  > [experimental]
34866
1644623ab096 config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
     6
  > evolution.createmarkers=True
17296
a1f8869f2eee obsolete: introduce an `_enabled` switch to disable the feature by default
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17248
diff changeset
     7
  > EOF
a1f8869f2eee obsolete: introduce an `_enabled` switch to disable the feature by default
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17248
diff changeset
     8
17327
7f5094bb3f42 test: fix typo in test comment
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17296
diff changeset
     9
Push does not corrupt remote
7f5094bb3f42 test: fix typo in test comment
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17296
diff changeset
    10
----------------------------
17248
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    11
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    12
Create a DAG where a changeset reuses a revision from a file first used in an
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    13
extinct changeset.
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    14
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    15
  $ hg init local
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    16
  $ cd local
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    17
  $ echo 'base' > base
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    18
  $ hg commit -Am base
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    19
  adding base
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    20
  $ echo 'A' > A
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    21
  $ hg commit -Am A
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    22
  adding A
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    23
  $ hg up 0
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    24
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    25
  $ hg revert -ar 1
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    26
  adding A
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    27
  $ hg commit -Am "A'"
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    28
  created new head
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    29
  $ hg log -G --template='{desc} {node}'
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    30
  @  A' f89bcc95eba5174b1ccc3e33a82e84c96e8338ee
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    31
  |
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    32
  | o  A 9d73aac1b2ed7d53835eaeec212ed41ea47da53a
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    33
  |/
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    34
  o  base d20a80d4def38df63a4b330b7fb688f3d4cae1e3
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    35
  
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    36
  $ hg debugobsolete 9d73aac1b2ed7d53835eaeec212ed41ea47da53a f89bcc95eba5174b1ccc3e33a82e84c96e8338ee
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 32712
diff changeset
    37
  obsoleted 1 changesets
17248
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    38
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    39
Push it. The bundle should not refer to the extinct changeset.
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    40
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    41
  $ hg init ../other
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    42
  $ hg push ../other
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    43
  pushing to ../other
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    44
  searching for changes
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    45
  adding changesets
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    46
  adding manifests
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    47
  adding file changes
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    48
  added 2 changesets with 2 changes to 2 files
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    49
  $ hg -R ../other verify
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    50
  checking changesets
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    51
  checking manifests
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    52
  crosschecking files in changesets and manifests
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    53
  checking files
6ffb35b2284c discovery: add extinct changesets to outgoing.excluded
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    54
  2 files, 2 changesets, 2 total revisions
18498
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    55
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    56
Adding a changeset going extinct locally
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    57
------------------------------------------
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    58
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    59
Pull a changeset that will immediatly goes extinct (because you already have a
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    60
marker to obsolete him)
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    61
(test resolution of issue3788)
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    62
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    63
  $ hg phase --draft --force f89bcc95eba5
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    64
  $ hg phase -R ../other --draft --force f89bcc95eba5
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    65
  $ hg commit --amend -m "A''"
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    66
  $ hg --hidden --config extensions.mq= strip  --no-backup f89bcc95eba5
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    67
  $ hg pull ../other
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    68
  pulling from ../other
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    69
  searching for changes
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    70
  adding changesets
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    71
  adding manifests
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    72
  adding file changes
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    73
  added 1 changesets with 0 changes to 1 files (+1 heads)
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
    74
  1 new phase-divergent changesets
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34322
diff changeset
    75
  new changesets f89bcc95eba5
18498
4d9f7dd2ac82 pull: fix crash when pulling changeset that get hidden locally (issue3788)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17327
diff changeset
    76
  (run 'hg heads' to see heads, 'hg merge' to merge)
18499
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    77
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    78
check that bundle is not affected
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    79
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    80
  $ hg bundle --hidden --rev f89bcc95eba5 --base "f89bcc95eba5^" ../f89bcc95eba5.hg
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    81
  1 changesets found
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    82
  $ hg --hidden --config extensions.mq= strip --no-backup f89bcc95eba5
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    83
  $ hg unbundle ../f89bcc95eba5.hg
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    84
  adding changesets
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    85
  adding manifests
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    86
  adding file changes
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    87
  added 1 changesets with 0 changes to 1 files (+1 heads)
d07834e52b4e test-obsolete: validate that bundle is not affected by issue3788
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18498
diff changeset
    88
  (run 'hg heads' to see heads)
32516
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
    89
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
    90
check-that bundle can contain markers:
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
    91
34869
196548113ddd config: rename stabilization.bundle-obsmarker
Boris Feld <boris.feld@octobus.net>
parents: 34866
diff changeset
    92
  $ hg bundle --hidden --rev f89bcc95eba5 --base "f89bcc95eba5^" ../f89bcc95eba5-obs.hg --config experimental.evolution.bundle-obsmarker=1
32516
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
    93
  1 changesets found
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
    94
  $ hg debugbundle ../f89bcc95eba5.hg
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 33773
diff changeset
    95
  Stream params: {Compression: BZ}
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 33773
diff changeset
    96
  changegroup -- {nbchanges: 1, version: 02}
32516
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
    97
      f89bcc95eba5174b1ccc3e33a82e84c96e8338ee
36965
b89a7ef29013 bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents: 35749
diff changeset
    98
  cache:rev-branch-cache -- {}
32516
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
    99
  $ hg debugbundle ../f89bcc95eba5-obs.hg
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 33773
diff changeset
   100
  Stream params: {Compression: BZ}
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 33773
diff changeset
   101
  changegroup -- {nbchanges: 1, version: 02}
32516
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
   102
      f89bcc95eba5174b1ccc3e33a82e84c96e8338ee
36965
b89a7ef29013 bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents: 35749
diff changeset
   103
  cache:rev-branch-cache -- {}
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 33773
diff changeset
   104
  obsmarkers -- {}
32517
b62b2b373bce debugbundle: display the content of obsmarkers parts
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32516
diff changeset
   105
      version: 1 (70 bytes)
b62b2b373bce debugbundle: display the content of obsmarkers parts
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32516
diff changeset
   106
      9d73aac1b2ed7d53835eaeec212ed41ea47da53a f89bcc95eba5174b1ccc3e33a82e84c96e8338ee 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
32516
37d70ba1d9d1 bundle: add an experimental knob to include obsmarkers in bundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32267
diff changeset
   107
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   108
  $ cd ..
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   109
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   110
pull does not fetch excessive changesets when common node is hidden (issue4982)
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   111
-------------------------------------------------------------------------------
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   112
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   113
initial repo with server and client matching
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   114
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   115
  $ hg init pull-hidden-common
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   116
  $ cd pull-hidden-common
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   117
  $ touch foo
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   118
  $ hg -q commit -A -m initial
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   119
  $ echo 1 > foo
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   120
  $ hg commit -m 1
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   121
  $ echo 2a > foo
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   122
  $ hg commit -m 2a
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   123
  $ cd ..
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   124
  $ hg clone --pull pull-hidden-common pull-hidden-common-client
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   125
  requesting all changes
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   126
  adding changesets
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   127
  adding manifests
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   128
  adding file changes
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   129
  added 3 changesets with 3 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34322
diff changeset
   130
  new changesets 96ee1d7354c4:6a29ed9c68de
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   131
  updating to branch default
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   132
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   133
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   134
server obsoletes the old head
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   135
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   136
  $ cd pull-hidden-common
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   137
  $ hg -q up -r 1
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   138
  $ echo 2b > foo
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   139
  $ hg -q commit -m 2b
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   140
  $ hg debugobsolete 6a29ed9c68defff1a139e5c6fa9696fb1a75783d bec0734cd68e84477ba7fc1d13e6cff53ab70129
33542
b11e8c67fb0f debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents: 32712
diff changeset
   141
  obsoleted 1 changesets
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   142
  $ cd ..
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   143
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   144
client only pulls down 1 changeset
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   145
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   146
  $ cd pull-hidden-common-client
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   147
  $ hg pull --debug
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34869
diff changeset
   148
  pulling from $TESTTMP/pull-hidden-common
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   149
  query 1; heads
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   150
  searching for changes
27319
b64b6fdc5c9b discovery: properly filter changeset in 'peer.known' (issue4982)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27227
diff changeset
   151
  taking quick initial sample
b64b6fdc5c9b discovery: properly filter changeset in 'peer.known' (issue4982)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27227
diff changeset
   152
  query 2; still undecided: 2, sample size is: 2
32712
43bda143e3b2 discovery: include timing in the debug output
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 32517
diff changeset
   153
  2 total queries in *.????s (glob)
27319
b64b6fdc5c9b discovery: properly filter changeset in 'peer.known' (issue4982)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27227
diff changeset
   154
  1 changesets found
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   155
  list of changesets:
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   156
  bec0734cd68e84477ba7fc1d13e6cff53ab70129
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   157
  listing keys for "bookmarks"
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36965
diff changeset
   158
  bundle2-output-bundle: "HG20", 4 parts total
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   159
  bundle2-output-part: "changegroup" (params: 1 mandatory 1 advisory) streamed payload
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   160
  bundle2-output-part: "listkeys" (params: 1 mandatory) empty payload
34322
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 34025
diff changeset
   161
  bundle2-output-part: "phase-heads" 24 bytes payload
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36965
diff changeset
   162
  bundle2-output-part: "cache:rev-branch-cache" streamed payload
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   163
  bundle2-input-bundle: with-transaction
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   164
  bundle2-input-part: "changegroup" (params: 1 mandatory 1 advisory) supported
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   165
  adding changesets
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   166
  add changeset bec0734cd68e
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   167
  adding manifests
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   168
  adding file changes
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   169
  adding foo revisions
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   170
  added 1 changesets with 1 changes to 1 files (+1 heads)
30211
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29757
diff changeset
   171
  bundle2-input-part: total payload size 476
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   172
  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
34322
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 34025
diff changeset
   173
  bundle2-input-part: "phase-heads" supported
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 34025
diff changeset
   174
  bundle2-input-part: total payload size 24
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36965
diff changeset
   175
  bundle2-input-part: "cache:rev-branch-cache" supported
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36965
diff changeset
   176
  bundle2-input-part: total payload size 39
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 36965
diff changeset
   177
  bundle2-input-bundle: 3 parts total
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   178
  checking for updated bookmarks
35749
3a3b59bbe7ce localrepo: run cache-warming transaction callback before report callback
Martin von Zweigbergk <martinvonz@google.com>
parents: 35709
diff changeset
   179
  updating the branch cache
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34322
diff changeset
   180
  new changesets bec0734cd68e
27227
f20533623833 tests: test changegroup generation for filtered changesets (issue4982)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22955
diff changeset
   181
  (run 'hg heads' to see heads, 'hg merge' to merge)