mirror of
https://github.com/facebook/sapling.git
synced 2024-10-09 08:18:15 +03:00
8b00f799de
because pull might move bookmarks and bookmark are protected by wlock, we have to grab wlock for pull :-( This required a small upgrade of the 'lockdelay' extension used by 'test-clone.t' because the delay must apply to a single lock only.
23 lines
659 B
Python
23 lines
659 B
Python
# Dummy extension that adds a delay after acquiring a lock.
|
|
#
|
|
# This extension can be used to test race conditions between lock acquisition.
|
|
|
|
from __future__ import absolute_import
|
|
|
|
import os
|
|
import time
|
|
|
|
def reposetup(ui, repo):
|
|
|
|
class delayedlockrepo(repo.__class__):
|
|
def lock(self):
|
|
delay = float(os.environ.get('HGPRELOCKDELAY', '0.0'))
|
|
if delay:
|
|
time.sleep(delay)
|
|
res = super(delayedlockrepo, self).lock()
|
|
delay = float(os.environ.get('HGPOSTLOCKDELAY', '0.0'))
|
|
if delay:
|
|
time.sleep(delay)
|
|
return res
|
|
repo.__class__ = delayedlockrepo
|