comparison mercurial/bundle2.py @ 32326:99515353c72a stable

obsolete: invalidate "volatile" set cache after merging marker Adding markers to the repository might affect the set of obsolete changesets. So we most remove the "volatile" set who rely in that data. We add two missing invalidations after merging markers. This was caught by code change in the evolve extensions tests. This issues highlight that the current way to do things is a bit fragile, however we keep things simple for stable.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 17 May 2017 15:39:37 +0200
parents ad41739c6b2b
children 655f1e2cfa5a
comparison
equal deleted inserted replaced
32207:176ed32dc159 32326:99515353c72a
1629 # we want to avoid this if the part is advisory. 1629 # we want to avoid this if the part is advisory.
1630 if not inpart.mandatory and op.repo.obsstore.readonly: 1630 if not inpart.mandatory and op.repo.obsstore.readonly:
1631 op.repo.ui.debug('ignoring obsolescence markers, feature not enabled') 1631 op.repo.ui.debug('ignoring obsolescence markers, feature not enabled')
1632 return 1632 return
1633 new = op.repo.obsstore.mergemarkers(tr, markerdata) 1633 new = op.repo.obsstore.mergemarkers(tr, markerdata)
1634 op.repo.invalidatevolatilesets()
1634 if new: 1635 if new:
1635 op.repo.ui.status(_('%i new obsolescence markers\n') % new) 1636 op.repo.ui.status(_('%i new obsolescence markers\n') % new)
1636 op.records.add('obsmarkers', {'new': new}) 1637 op.records.add('obsmarkers', {'new': new})
1637 if op.reply is not None: 1638 if op.reply is not None:
1638 rpart = op.reply.newpart('reply:obsmarkers') 1639 rpart = op.reply.newpart('reply:obsmarkers')