Mercurial > hg
view tests/lockdelay.py @ 47294:93a0abe098e7
revlog: avoid raising no-arg RevlogError for internal flow control
I'm about to make RevlogError require a `message` argument and this
code was failing. This patch refactors it to not raise an exception
for intra-function flow control.
Differential Revision: https://phab.mercurial-scm.org/D10740
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 18 May 2021 19:33:09 -0700 |
parents | f6c67bb4ca03 |
children | 6000f5b25c9b |
line wrap: on
line source
# 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, wait=True): delay = float(os.environ.get('HGPRELOCKDELAY', '0.0')) if delay: time.sleep(delay) res = super(delayedlockrepo, self).lock(wait=wait) delay = float(os.environ.get('HGPOSTLOCKDELAY', '0.0')) if delay: time.sleep(delay) return res repo.__class__ = delayedlockrepo