Only use literal strings for process names (#16315)
parent
329597022e
commit
edec0b93ca
|
@ -0,0 +1 @@
|
|||
Only use literal strings for background process names.
|
|
@ -200,9 +200,7 @@ class _ServiceQueuer:
|
|||
if service.id in self.requests_in_flight:
|
||||
return
|
||||
|
||||
run_as_background_process(
|
||||
"as-sender-%s" % (service.id,), self._send_request, service
|
||||
)
|
||||
run_as_background_process("as-sender", self._send_request, service)
|
||||
|
||||
async def _send_request(self, service: ApplicationService) -> None:
|
||||
# sanity-check: we shouldn't get here if this service already has a sender
|
||||
|
@ -478,14 +476,11 @@ class _Recoverer:
|
|||
self.backoff_counter = 1
|
||||
|
||||
def recover(self) -> None:
|
||||
def _retry() -> None:
|
||||
run_as_background_process(
|
||||
"as-recoverer-%s" % (self.service.id,), self.retry
|
||||
)
|
||||
|
||||
delay = 2**self.backoff_counter
|
||||
logger.info("Scheduling retries on %s in %fs", self.service.id, delay)
|
||||
self.clock.call_later(delay, _retry)
|
||||
self.clock.call_later(
|
||||
delay, run_as_background_process, "as-recoverer", self.retry
|
||||
)
|
||||
|
||||
def _backoff(self) -> None:
|
||||
# cap the backoff to be around 8.5min => (2^9) = 512 secs
|
||||
|
|
|
@ -48,6 +48,9 @@ from synapse.metrics._types import Collector
|
|||
if TYPE_CHECKING:
|
||||
import resource
|
||||
|
||||
# Old versions don't have `LiteralString`
|
||||
from typing_extensions import LiteralString
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
@ -191,7 +194,7 @@ R = TypeVar("R")
|
|||
|
||||
|
||||
def run_as_background_process(
|
||||
desc: str,
|
||||
desc: "LiteralString",
|
||||
func: Callable[..., Awaitable[Optional[R]]],
|
||||
*args: Any,
|
||||
bg_start_span: bool = True,
|
||||
|
@ -259,7 +262,7 @@ P = ParamSpec("P")
|
|||
|
||||
|
||||
def wrap_as_background_process(
|
||||
desc: str,
|
||||
desc: "LiteralString",
|
||||
) -> Callable[
|
||||
[Callable[P, Awaitable[Optional[R]]]],
|
||||
Callable[P, "defer.Deferred[Optional[R]]"],
|
||||
|
|
|
@ -84,9 +84,7 @@ class ExpiringCache(Generic[KT, VT]):
|
|||
return
|
||||
|
||||
def f() -> "defer.Deferred[None]":
|
||||
return run_as_background_process(
|
||||
"prune_cache_%s" % self._cache_name, self._prune_cache
|
||||
)
|
||||
return run_as_background_process("prune_cache", self._prune_cache)
|
||||
|
||||
self._clock.looping_call(f, self._expiry_ms / 2)
|
||||
|
||||
|
|
Loading…
Reference in New Issue