From 686b2c54323407dd3743d3d7b56c6e3b12f52867 Mon Sep 17 00:00:00 2001 From: Alexander Kukushkin Date: Mon, 7 Oct 2019 10:55:26 +0200 Subject: [PATCH] Fix memory leak on python 3.7 (#1200) Close https://github.com/zalando/patroni/issues/1167 --- patroni/api.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/patroni/api.py b/patroni/api.py index 8caec153..60dcb457 100644 --- a/patroni/api.py +++ b/patroni/api.py @@ -492,6 +492,8 @@ class RestApiHandler(BaseHTTPRequestHandler): class RestApiServer(ThreadingMixIn, HTTPServer, Thread): + # On 3.7+ the `ThreadingMixIn` gathers all non-daemon worker threads in order to join on them at server close. + daemon_threads = True # Make worker threads "fire and forget" to prevent a memory leak. def __init__(self, patroni, config): self.patroni = patroni