[Bug 4945] New: Stripped amend-ed changesets cannot be re-pulled
mercurial-bugs at selenic.com
mercurial-bugs at selenic.com
Mon Nov 9 00:43:35 UTC 2015
https://bz.mercurial-scm.org/show_bug.cgi?id=4945
Bug ID: 4945
Summary: Stripped amend-ed changesets cannot be re-pulled
Product: Mercurial
Version: 3.6
Hardware: PC
OS: Mac OS
Status: UNCONFIRMED
Severity: feature
Priority: wish
Component: strip
Assignee: bugzilla at selenic.com
Reporter: arai.unmht at gmail.com
CC: mercurial-devel at selenic.com
(maybe similar to bug 4535)
Steps to reproduce:
1. prepare .hgrc for strip and amend command
2. run following commands in some directory
mkdir tmp
cd tmp
hg init .
echo foo > f0
hg add f0
hg ci -m '0' # 0
echo foo > f1
hg add f1
hg ci -m '1' # 0-1
echo foo > f2
hg add f2
hg ci -m '2' # 0-1-2
echo bar > f2
hg amend # 4
# /
# 0-1-2(x)
hg strip -r 1 # 0
hg pull .hg/strip-backup/*
Expected result:
stripped changesets are restored.
Actual result:
|hg pull| fails with following error, there hash is revision 2's one.
abort: 00changelog.i at 74b7f688c17bcb1256602be2fadb4bfa4baff66c: filtered node!
Here's output for |hg pull --traceback .hg/strip-backup/*|
pulling from .hg/strip-backup/25a687638727-9bb7f4b2-backup.hg
searching for changes
Traceback (most recent call last):
File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line
187, in _runcatch
return _dispatch(req)
File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line
920, in _dispatch
cmdpats, cmdoptions)
File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line
679, in runcommand
ret = _runcommand(ui, options, cmd, d)
File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line
1051, in _runcommand
return checkargs()
File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line
1011, in checkargs
return cmdfunc()
File "/usr/local/lib/python2.7/site-packages/mercurial/dispatch.py", line
917, in <lambda>
d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/extensions.py", line
183, in closure
return func(*(args + a), **kw)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File
"/Users/arai/.mozbuild/version-control-tools/hgext/firefoxtree/__init__.py",
line 299, in pullcommand
return orig(ui, repo, source=source, **opts)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/extensions.py", line
183, in closure
return func(*(args + a), **kw)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/hgext/mq.py", line 3525, in
mqcommand
return orig(ui, repo, *args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/extensions.py", line
183, in closure
return func(*(args + a), **kw)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/Users/arai/projects/mutable-history/hgext/evolve.py", line 726, in
warnobserrors
ret = orig(ui, repo, *args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/extensions.py", line
183, in closure
return func(*(args + a), **kw)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/Users/arai/projects/mutable-history/hgext/evolve.py", line 698, in
wrapmayobsoletewc
res = origfn(ui, repo, *args, **opts)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/extensions.py", line
183, in closure
return func(*(args + a), **kw)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/hgext/rebase.py", line 1143, in
pullrebase
orig(ui, repo, *args, **opts)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 801, in
check
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/commands.py", line
5324, in pull
opargs=pullopargs).cgresult
File "/usr/local/lib/python2.7/site-packages/mercurial/extensions.py", line
183, in closure
return func(*(args + a), **kw)
File
"/Users/arai/.mozbuild/version-control-tools/hgext/bundleclone/__init__.py",
line 590, in pull
res = orig(repo, remote, *args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/extensions.py", line
183, in closure
return func(*(args + a), **kw)
File
"/Users/arai/.mozbuild/version-control-tools/hgext/firefoxtree/__init__.py",
line 215, in pull
res = orig(repo, remote, *args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/extensions.py", line
183, in closure
return func(*(args + a), **kw)
File "/Users/arai/.mozbuild/version-control-tools/hgext/mozext/__init__.py",
line 755, in pull
res = orig(repo, remote, *args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/exchange.py", line
1118, in pull
_pullbundle2(pullop)
File "/usr/local/lib/python2.7/site-packages/mercurial/exchange.py", line
1257, in _pullbundle2
bundle = pullop.remote.getbundle('pull', **kwargs)
File "/usr/local/lib/python2.7/site-packages/mercurial/localrepo.py", line
117, in getbundle
cg = bundle2.getunbundler(self.ui, cg)
File "/usr/local/lib/python2.7/site-packages/mercurial/bundle2.py", line 636,
in getunbundler
magicstring = changegroup.readexactly(fp, 4)
File "/usr/local/lib/python2.7/site-packages/mercurial/changegroup.py", line
38, in readexactly
s = stream.read(n)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 1321,
in read
for chunk in self.iter:
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 1293,
in splitbig
for chunk in chunks:
File "/usr/local/lib/python2.7/site-packages/mercurial/bundle2.py", line 552,
in getchunks
for chunk in self._getcorechunk():
File "/usr/local/lib/python2.7/site-packages/mercurial/bundle2.py", line 574,
in _getcorechunk
for chunk in part.getchunks(ui=self.ui):
File "/usr/local/lib/python2.7/site-packages/mercurial/bundle2.py", line 950,
in getchunks
for chunk in self._payloadchunks():
File "/usr/local/lib/python2.7/site-packages/mercurial/bundle2.py", line 989,
in _payloadchunks
chunk = buff.read(preferedchunksize)
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 1321,
in read
for chunk in self.iter:
File "/usr/local/lib/python2.7/site-packages/mercurial/util.py", line 1293,
in splitbig
for chunk in chunks:
File "/usr/local/lib/python2.7/site-packages/mercurial/changegroup.py", line
687, in generate
source):
File "/usr/local/lib/python2.7/site-packages/mercurial/changegroup.py", line
705, in generatefiles
filerevlog = repo.file(fname)
File "/usr/local/lib/python2.7/site-packages/mercurial/bundlerepo.py", line
364, in file
return bundlefilelog(self.svfs, f, self.bundle, self.changelog.rev)
File "/usr/local/lib/python2.7/site-packages/mercurial/bundlerepo.py", line
212, in __init__
linkmapper)
File "/usr/local/lib/python2.7/site-packages/mercurial/bundlerepo.py", line
72, in __init__
link = linkmapper(cs)
File "/usr/local/lib/python2.7/site-packages/mercurial/changelog.py", line
212, in rev
_('filtered node'))
FilteredLookupError: 00changelog.i at 74b7f688c17bcb1256602be2fadb4bfa4baff66c:
filtered node
abort: 00changelog.i at 74b7f688c17bcb1256602be2fadb4bfa4baff66c: filtered node!
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Mercurial-devel
mailing list