aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-11-06 11:36:27 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-12-06 10:26:33 +0000
commit115919f0c11e22df783348422e06ab95f5c943e1 (patch)
tree7a399fa9bc346a9bcdbba4e13430297cf546288d
parent79d01b9fec99cec19156e0ebe05b4f2040bcef05 (diff)
downloadbitbake-contrib-115919f0c11e22df783348422e06ab95f5c943e1.tar.gz
server/process: Fix unclosed socket warnings upon server connection refused
Extend the server error handling to avoid: Reconnecting to bitbake server... NOTE: Retrying server connection... (Traceback (most recent call last): File "/home/pokybuild/yocto-worker/nightly-oe-selftest/build/bitbake/lib/bb/main.py", line 464, in setup_bitbake server_connection = bb.server.process.connectProcessServer(sockname, featureset) File "/home/pokybuild/yocto-worker/nightly-oe-selftest/build/bitbake/lib/bb/server/process.py", line 457, in connectProcessServer sock.connect(os.path.basename(sockname)) ConnectionRefusedError: [Errno 111] Connection refused ) WARNING: /home/pokybuild/yocto-worker/nightly-oe-selftest/build/bitbake/lib/bb/main.py:481: ResourceWarning: unclosed <socket.socket fd=20, family=AddressFamily.AF_UNIX, type=SocketKind.SOCK_STREAM, proto=0> logger.info("Retrying server connection... (%s)" % traceback.format_exc()) NOTE: Starting bitbake server... Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/server/process.py15
1 files changed, 7 insertions, 8 deletions
diff --git a/lib/bb/server/process.py b/lib/bb/server/process.py
index 828159ed7..2246d954c 100644
--- a/lib/bb/server/process.py
+++ b/lib/bb/server/process.py
@@ -452,15 +452,14 @@ def connectProcessServer(sockname, featureset):
cwd = os.getcwd()
try:
- os.chdir(os.path.dirname(sockname))
- sock.connect(os.path.basename(sockname))
- finally:
- os.chdir(cwd)
-
- readfd = writefd = readfd1 = writefd1 = readfd2 = writefd2 = None
- eq = command_chan_recv = command_chan = None
+ try:
+ os.chdir(os.path.dirname(sockname))
+ sock.connect(os.path.basename(sockname))
+ finally:
+ os.chdir(cwd)
- try:
+ readfd = writefd = readfd1 = writefd1 = readfd2 = writefd2 = None
+ eq = command_chan_recv = command_chan = None
# Send an fd for the remote to write events to
readfd, writefd = os.pipe()