Mercurial > hg-stable
changeset 15585:a348739da8f0
addchangegroup: remove the lock argument on the addchangegroup methods
This argument is no longer require. post lock release code is now handled with
dedicated post release callback code in lock itself.
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Mon, 28 Nov 2011 01:32:13 +0100 |
parents | 9df9444e96ec |
children | 98ec09582f72 |
files | mercurial/commands.py mercurial/localrepo.py mercurial/sshserver.py mercurial/wireproto.py |
diffstat | 4 files changed, 7 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/commands.py Mon Nov 28 01:18:15 2011 +0100 +++ b/mercurial/commands.py Mon Nov 28 01:32:13 2011 +0100 @@ -5575,8 +5575,7 @@ for fname in fnames: f = url.open(ui, fname) gen = changegroup.readbundle(f, fname) - modheads = repo.addchangegroup(gen, 'unbundle', 'bundle:' + fname, - lock=lock) + modheads = repo.addchangegroup(gen, 'unbundle', 'bundle:' + fname) bookmarks.updatecurrentbookmark(repo, wc.node(), wc.branch()) finally: lock.release()
--- a/mercurial/localrepo.py Mon Nov 28 01:18:15 2011 +0100 +++ b/mercurial/localrepo.py Mon Nov 28 01:32:13 2011 +0100 @@ -1527,8 +1527,7 @@ "changegroupsubset.")) else: cg = remote.changegroupsubset(fetch, heads, 'pull') - result = self.addchangegroup(cg, 'pull', remote.url(), - lock=lock) + result = self.addchangegroup(cg, 'pull', remote.url()) phases.advanceboundary(self, 0, common) finally: lock.release() @@ -1583,8 +1582,7 @@ ret = remote.unbundle(cg, remote_heads, 'push') else: # we return an integer indicating remote head count change - ret = remote.addchangegroup(cg, 'push', self.url(), - lock=lock) + ret = remote.addchangegroup(cg, 'push', self.url()) # if we don't push, the common data is already useful # everything exchange is public for now phases.advanceboundary(self, 0, fut) @@ -1849,12 +1847,10 @@ return changegroup.unbundle10(util.chunkbuffer(gengroup()), 'UN') - def addchangegroup(self, source, srctype, url, emptyok=False, lock=None): + def addchangegroup(self, source, srctype, url, emptyok=False): """Add the changegroup returned by source.read() to this repo. srctype is a string like 'push', 'pull', or 'unbundle'. url is the URL of the repo where this changegroup is coming from. - If lock is not None, the function takes ownership of the lock - and releases it after the changegroup is added. Return an integer summarizing the change to this repo: - nothing changed or no source: 0 @@ -2019,8 +2015,6 @@ finally: tr.release() - if lock: - lock.release() # never return 0 here: if dh < 0: return dh - 1
--- a/mercurial/sshserver.py Mon Nov 28 01:18:15 2011 +0100 +++ b/mercurial/sshserver.py Mon Nov 28 01:32:13 2011 +0100 @@ -142,8 +142,8 @@ self.sendresponse("") cg = changegroup.unbundle10(self.fin, "UN") - r = self.repo.addchangegroup(cg, 'serve', self._client(), - lock=self.lock) + r = self.repo.addchangegroup(cg, 'serve', self._client()) + self.lock.release() return str(r) def _client(self):
--- a/mercurial/wireproto.py Mon Nov 28 01:18:15 2011 +0100 +++ b/mercurial/wireproto.py Mon Nov 28 01:32:13 2011 +0100 @@ -574,8 +574,7 @@ gen = changegroupmod.readbundle(fp, None) try: - r = repo.addchangegroup(gen, 'serve', proto._client(), - lock=lock) + r = repo.addchangegroup(gen, 'serve', proto._client()) except util.Abort, inst: sys.stderr.write("abort: %s\n" % inst) finally: