aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/mathutil.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2019-12-17 09:51:45 -0500
committerKevin O'Connor <kevin@koconnor.net>2019-12-17 09:51:45 -0500
commitabf493496c5857cb504c69fe771801781865e5db (patch)
tree13a1ff3056b904cf811fe7423c774ea9b7dd0be1 /klippy/mathutil.py
parentd9cd524aec5c9d88de35e0c4b33de2fbd10a12a8 (diff)
downloadkutter-abf493496c5857cb504c69fe771801781865e5db.tar.gz
kutter-abf493496c5857cb504c69fe771801781865e5db.tar.xz
kutter-abf493496c5857cb504c69fe771801781865e5db.zip
mathutil: Disable queuelogger in background_coordinate_descent()
If the queuelogger was holding the lock when the process is forked then any attempt to log from the background process would result in a deadlock. Attempt a workaround by disabling the queuelogger at the start of the background process. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/mathutil.py')
-rw-r--r--klippy/mathutil.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/klippy/mathutil.py b/klippy/mathutil.py
index 82f12b9c..a6ab50d2 100644
--- a/klippy/mathutil.py
+++ b/klippy/mathutil.py
@@ -1,9 +1,10 @@
# Simple math helper functions
#
-# Copyright (C) 2018 Kevin O'Connor <kevin@koconnor.net>
+# Copyright (C) 2018-2019 Kevin O'Connor <kevin@koconnor.net>
#
# This file may be distributed under the terms of the GNU GPLv3 license.
import math, logging, multiprocessing, traceback
+import queuelogger
######################################################################
@@ -51,6 +52,7 @@ def coordinate_descent(adj_params, params, error_func):
def background_coordinate_descent(printer, adj_params, params, error_func):
parent_conn, child_conn = multiprocessing.Pipe()
def wrapper():
+ queuelogger.clear_bg_logging()
try:
res = coordinate_descent(adj_params, params, error_func)
except: