Fix ModuleApi.looping_background_call for non-async functions (#11524)

After #10847, `looping_background_call` would print an error in the logs
every time a non-async function was called. Since the error would be
caught and ignored immediately, there were no other side effects.
This commit is contained in:
Sean Quah 2021-12-07 11:41:31 +00:00 committed by GitHub
parent b1ecd19c5d
commit eccc49d755
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 3 deletions

1
changelog.d/11524.bugfix Normal file
View File

@ -0,0 +1 @@
Fix a regression in Synapse 1.48.0 where the module API's `looping_background_call` method would spam errors to the logs when given a non-async function.

View File

@ -108,6 +108,7 @@ from synapse.types import (
create_requester, create_requester,
) )
from synapse.util import Clock from synapse.util import Clock
from synapse.util.async_helpers import maybe_awaitable
from synapse.util.caches.descriptors import cached from synapse.util.caches.descriptors import cached
if TYPE_CHECKING: if TYPE_CHECKING:
@ -1014,9 +1015,7 @@ class ModuleApi:
run_as_background_process, run_as_background_process,
msec, msec,
desc, desc,
f, lambda: maybe_awaitable(f(*args, **kwargs)),
*args,
**kwargs,
) )
else: else:
logger.warning( logger.warning(