Mercurial > public > mercurial-scm > hg
diff hgext/convert/hg.py @ 5014:914054ca532e
convert: acquire/release locks periodically
author | Bryan O'Sullivan <bos@serpentine.com> |
---|---|
date | Thu, 26 Jul 2007 13:34:36 -0700 |
parents | 6c1029aacc9a |
children | 4ebc8693ce72 |
line wrap: on
line diff
--- a/hgext/convert/hg.py Thu Jul 26 13:34:36 2007 -0700 +++ b/hgext/convert/hg.py Thu Jul 26 13:34:36 2007 -0700 @@ -8,8 +8,9 @@ import os, time +from mercurial.i18n import _ from mercurial.node import * -from mercurial import hg, revlog, util +from mercurial import hg, lock, revlog, util from common import NoRepo, commit, converter_source, converter_sink @@ -21,6 +22,16 @@ self.repo = hg.repository(self.ui, path) except: raise NoRepo("could not open hg repo %s as sink" % path) + self.lock = None + self.wlock = None + + def before(self): + self.lock = self.repo.lock() + self.wlock = self.repo.wlock() + + def after(self): + self.lock = None + self.wlock = None def revmapfile(self): return os.path.join(self.path, ".hg", "shamap") @@ -72,6 +83,7 @@ p2 = parents.pop(0) a = self.repo.rawcommit(files, text, commit.author, commit.date, hg.bin(p1), hg.bin(p2), extra=extra) + self.repo.dirstate.invalidate() text = "(octopus merge fixup)\n" p2 = hg.hex(self.repo.changelog.tip())