context: do not cache manifestctx

This will make sure when ctx.repo.manifestlog changes, a correct new
manifestctx is returned. repo.manifestlog takes care of caching so the
manifestctx won't be reconstructed every time.
This commit is contained in:
Jun Wu 2017-05-25 17:20:43 -07:00
parent 716a09c254
commit f7e72658ec
2 changed files with 2 additions and 4 deletions

View File

@ -551,7 +551,7 @@ class changectx(basectx):
def _manifest(self):
return self._manifestctx.read()
@propertycache
@property
def _manifestctx(self):
return self._repo.manifestlog[self._changeset.manifest]
@ -2314,7 +2314,7 @@ class metadataonlyctx(committablectx):
def manifestnode(self):
return self._manifestnode
@propertycache
@property
def _manifestctx(self):
return self._repo.manifestlog[self._manifestnode]

View File

@ -47,6 +47,4 @@ wcctx._status=<status modified=['bar-m'], added=['bar-a'], removed=[], deleted=[
== commit with manifestlog invalidated
commit 1: 2efe531a913fa648867ab8824360371679d05a65
commit 2: 2caca91f6362020334384ebe27bae67315298abf
cannot read data: LookupError('Q\xa3L\xa5Ou\x8f\xce8\xda<Q\x7f\x9f(\xc9;Li/', '00manifest.i', 'no node')
commit 3: abd6b0f49f338be22b094ef2b7425e8048f8337b
cannot read data: LookupError("\x82\x15\xb8\xd3\x85\xf6H'\x9cP'D\x97\x1e\xab\x98O\xbb\x05\x9d", '00manifest.i', 'no node')