Comments
Patch
@@ -367,6 +367,38 @@ check that local configs for the cached
*** runcommand status -i -u
I ignored-file
+BROKEN: cache of non-public revisions must be invalidated if repository is
+stripped by another process:
+
+ >>> import os
+ >>> from hgclient import readchannel, runcommand, check
+ >>> @check
+ ... def phasesetscacheafterstrip(server):
+ ... readchannel(server)
+ ... # create draft commits that will be stripped later
+ ... for i in xrange(5, 7):
+ ... f = open('a', 'ab')
+ ... f.write('a\n')
+ ... f.close()
+ ... runcommand(server, ['commit', '-Aqm%d' % i])
+ ... # load _phasecache._phaserevs and _phasesets
+ ... runcommand(server, ['log', '-Gqr', 'draft()'])
+ ... # strip cached revisions by another process
+ ... os.system('hg --config extensions.strip= strip -q 5')
+ ... # shouldn't abort by "unknown revision '6'"
+ ... runcommand(server, ['log', '-qr', 'draft()'])
+ *** runcommand commit -Aqm5
+ *** runcommand commit -Aqm6
+ *** runcommand log -Gqr draft()
+ @ 6:10501e202c35
+ |
+ o 5:41f6602d1c4f
+ |
+ o 4:7966c8e3734d
+ |
+ *** runcommand log -qr draft()
+ 4:7966c8e3734d
+
>>> import os
>>> from hgclient import readchannel, sep, runcommand, check
>>> @check
Test result on 3.5.1:
@@ -398,6 +398,9 @@
|
*** runcommand log -qr draft()
4:7966c8e3734d
+ 5:000000000000
+ abort: unknown revision '6'!
+ [255]
--
You are receiving this mail because:
You are on the CC list for the bug.