aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/tools/python3/src/Lib/multiprocessing/managers.py
diff options
context:
space:
mode:
authorshadchin <shadchin@yandex-team.ru>2022-04-18 12:39:32 +0300
committershadchin <shadchin@yandex-team.ru>2022-04-18 12:39:32 +0300
commitd4be68e361f4258cf0848fc70018dfe37a2acc24 (patch)
tree153e294cd97ac8b5d7a989612704a0c1f58e8ad4 /contrib/tools/python3/src/Lib/multiprocessing/managers.py
parent260c02f5ccf242d9d9b8a873afaf6588c00237d6 (diff)
downloadydb-d4be68e361f4258cf0848fc70018dfe37a2acc24.tar.gz
IGNIETFERRO-1816 Update Python 3 from 3.9.12 to 3.10.4
ref:9f96be6d02ee8044fdd6f124b799b270c20ce641
Diffstat (limited to 'contrib/tools/python3/src/Lib/multiprocessing/managers.py')
-rw-r--r--contrib/tools/python3/src/Lib/multiprocessing/managers.py20
1 files changed, 14 insertions, 6 deletions
diff --git a/contrib/tools/python3/src/Lib/multiprocessing/managers.py b/contrib/tools/python3/src/Lib/multiprocessing/managers.py
index dfa566c6fc3..b6b4cdd9ac1 100644
--- a/contrib/tools/python3/src/Lib/multiprocessing/managers.py
+++ b/contrib/tools/python3/src/Lib/multiprocessing/managers.py
@@ -193,11 +193,8 @@ class Server(object):
t.daemon = True
t.start()
- def handle_request(self, c):
- '''
- Handle a new connection
- '''
- funcname = result = request = None
+ def _handle_request(self, c):
+ request = None
try:
connection.deliver_challenge(c, self.authkey)
connection.answer_challenge(c, self.authkey)
@@ -214,6 +211,7 @@ class Server(object):
msg = ('#TRACEBACK', format_exc())
else:
msg = ('#RETURN', result)
+
try:
c.send(msg)
except Exception as e:
@@ -225,7 +223,17 @@ class Server(object):
util.info(' ... request was %r', request)
util.info(' ... exception was %r', e)
- c.close()
+ def handle_request(self, conn):
+ '''
+ Handle a new connection
+ '''
+ try:
+ self._handle_request(conn)
+ except SystemExit:
+ # Server.serve_client() calls sys.exit(0) on EOF
+ pass
+ finally:
+ conn.close()
def serve_client(self, conn):
'''