comparison mercurial/localrepo.py @ 32262:85ef5a073114

transaction: track newly introduced revisions Tracking revisions is not the data that will unlock the most new capability. However, they are the simplest thing to track and still unlock some nice improvements in regard with caching. We plug ourself at the changelog level to make sure we do not miss any revision additions. The 'revs' set is configured at the repository level because the transaction itself does not needs to know that much about the business logic.
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
date Tue, 02 May 2017 18:45:51 +0200
parents 9a9d54ae9963
children 604d65e2c0b2
comparison
equal deleted inserted replaced
32261:976681123416 32262:85ef5a073114
1070 "undo", 1070 "undo",
1071 aftertrans(renames), 1071 aftertrans(renames),
1072 self.store.createmode, 1072 self.store.createmode,
1073 validator=validate, 1073 validator=validate,
1074 releasefn=releasefn) 1074 releasefn=releasefn)
1075 tr.changes['revs'] = set()
1075 1076
1076 tr.hookargs['txnid'] = txnid 1077 tr.hookargs['txnid'] = txnid
1077 # note: writing the fncache only during finalize mean that the file is 1078 # note: writing the fncache only during finalize mean that the file is
1078 # outdated when running hooks. As fncache is used for streaming clone, 1079 # outdated when running hooks. As fncache is used for streaming clone,
1079 # this is not expected to break anything that happen during the hooks. 1080 # this is not expected to break anything that happen during the hooks.