summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYiyang Zhou <yiyangzhou1@xiaohongshu.com>2021-08-13 16:30:58 +0800
committerJens Geyer <Jens-G@users.noreply.github.com>2021-11-14 00:54:12 +0100
commitda1e19b72bceb1c5a094613c286c1331ff1a6c1b (patch)
treef4aa8be8afcddfde605160e8dda7296e759a5d84
parentea39a14a1fbc8a7683e91ab4bdd23f8b207c8d5d (diff)
downloadthrift-da1e19b72bceb1c5a094613c286c1331ff1a6c1b.tar.gz
THRIFT-5454: add __setState__ function to TProcessPoolServer to enable correct multiprocessing behavior related to pickling
Client: Python
-rw-r--r--lib/py/src/server/TProcessPoolServer.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/py/src/server/TProcessPoolServer.py b/lib/py/src/server/TProcessPoolServer.py
index fe6dc8162..d2e97c524 100644
--- a/lib/py/src/server/TProcessPoolServer.py
+++ b/lib/py/src/server/TProcessPoolServer.py
@@ -42,6 +42,11 @@ class TProcessPoolServer(TServer):
self.stopCondition = Condition()
self.postForkCallback = None
+ def __getstate__(self):
+ state=self.__dict__.copy()
+ state['workers'] = None
+ return state
+
def setPostForkCallback(self, callback):
if not callable(callback):
raise TypeError("This is not a callback!")