diff mercurial/localrepo.py @ 35219:9153871d50e0

lock: allow to configure when the lock messages are displayed We add a new 'ui.timeout.warn' config to set a grace period before we display lock related warning: waiting for lock on PATH held by PROCESS The config is based on 'ui.timeout' and expresses a number of seconds before the warning is displayed. Negative values disable the warning altogether. The messages go to the debug output to help people trouble-shooting deadlocks.
author Boris Feld <boris.feld@octobus.net>
date Wed, 29 Nov 2017 20:39:59 -0500
parents 1b758105b5c7
children 9ce4e01f58ee
line wrap: on
line diff
--- a/mercurial/localrepo.py	Wed Nov 29 20:36:29 2017 -0500
+++ b/mercurial/localrepo.py	Wed Nov 29 20:39:59 2017 -0500
@@ -1594,10 +1594,12 @@
             parentlock = encoding.environ.get(parentenvvar)
 
         timeout = 0
+        warntimeout = 0
         if wait:
             timeout = self.ui.configint("ui", "timeout")
+            warntimeout = self.ui.configint("ui", "timeout.warn")
 
-        l = lockmod.trylock(self.ui, vfs, lockname, timeout,
+        l = lockmod.trylock(self.ui, vfs, lockname, timeout, warntimeout,
                             releasefn=releasefn,
                             acquirefn=acquirefn, desc=desc,
                             inheritchecker=inheritchecker,