diff options
author | Richard van der Hoff <1389908+richvdh@users.noreply.github.com> | 2019-08-20 17:39:38 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-20 17:39:38 +0100 |
commit | baa3f4a80d55615f35e073eecaebd5edd1c86113 (patch) | |
tree | 363cf3f0a4235e6e99a1077f07901cc43f247cef /changelog.d/5885.bugfix | |
parent | Opentracing doc update (#5776) (diff) | |
download | synapse-baa3f4a80d55615f35e073eecaebd5edd1c86113.tar.xz |
Avoid deep recursion in appservice recovery (#5885)
Hopefully, this will fix a stack overflow when recovering an appservice. The recursion here leads to a huge chain of deferred callbacks, which then overflows the stack when the chain completes. `inlineCallbacks` makes a better job of this if we use iteration instead. Clean up the code a bit too, while we're there.
Diffstat (limited to 'changelog.d/5885.bugfix')
-rw-r--r-- | changelog.d/5885.bugfix | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/changelog.d/5885.bugfix b/changelog.d/5885.bugfix new file mode 100644 index 0000000000..411d925fd4 --- /dev/null +++ b/changelog.d/5885.bugfix @@ -0,0 +1 @@ +Fix stack overflow when recovering an appservice which had an outage. |