contrib/asv.conf.json
author Matt Harbison <matt_harbison@yahoo.com>
Tue, 18 Oct 2022 11:54:58 -0400
branchstable
changeset 49541 8251f7cc787d
parent 30406 cff0f5926797
permissions -rw-r--r--
keepalive: ensure `close_all()` actually closes all cached connections While debugging why LFS blob downloads are getting corrupted with workers, I noticed that prior to spinning up the workers, the ConnectionManager has 2 connections to the server and calling `KeepAliveHandler.close_all()` left one behind. The reason is the value component of `self._cm.get_all().items()` is a list, and `self._cm.remove()` modifies said list while the caller is iterating over it. Now `get_all()` is a deep copy of both the dict and lists in all cases.

{
    "version": 1,
    "project": "mercurial",
    "project_url": "https://mercurial-scm.org/",
    "repo": "..",
    "branches": ["default", "stable"],
    "environment_type": "virtualenv",
    "show_commit_url": "https://www.mercurial-scm.org/repo/hg/rev/",
    "benchmark_dir": "benchmarks",
    "env_dir": "../.asv/env",
    "results_dir": "../.asv/results",
    "html_dir": "../.asv/html"
}