bd68c6c68a
- Make importing seco.range thread safe (bsc#1211649) - Added: * make-importing-seco.range-thread-safe-bsc-1211649.patch OBS-URL: https://build.opensuse.org/request/show/1155579 OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:saltstack/salt?expand=0&rev=237
64 lines
1.5 KiB
Diff
64 lines
1.5 KiB
Diff
From 0913a58a36ef69d957dd9cc5c95fafe6d56448d5 Mon Sep 17 00:00:00 2001
|
|
From: Marek Czernek <marek.czernek@suse.com>
|
|
Date: Mon, 4 Mar 2024 11:27:35 +0100
|
|
Subject: [PATCH] Make importing seco.range thread safe (bsc#1211649)
|
|
|
|
---
|
|
salt/roster/range.py | 5 +++++
|
|
salt/utils/roster_matcher.py | 5 +++++
|
|
2 files changed, 10 insertions(+)
|
|
|
|
diff --git a/salt/roster/range.py b/salt/roster/range.py
|
|
index 3f039dcef42..1525f70c32b 100644
|
|
--- a/salt/roster/range.py
|
|
+++ b/salt/roster/range.py
|
|
@@ -15,16 +15,21 @@ import copy
|
|
import fnmatch
|
|
import logging
|
|
|
|
+import salt.loader
|
|
+
|
|
log = logging.getLogger(__name__)
|
|
|
|
# Try to import range from https://github.com/ytoolshed/range
|
|
HAS_RANGE = False
|
|
try:
|
|
+ salt.loader.LOAD_LOCK.acquire()
|
|
import seco.range
|
|
|
|
HAS_RANGE = True
|
|
except ImportError:
|
|
log.error("Unable to load range library")
|
|
+finally:
|
|
+ salt.loader.LOAD_LOCK.release()
|
|
# pylint: enable=import-error
|
|
|
|
|
|
diff --git a/salt/utils/roster_matcher.py b/salt/utils/roster_matcher.py
|
|
index db5dfda3e03..5165dc122b7 100644
|
|
--- a/salt/utils/roster_matcher.py
|
|
+++ b/salt/utils/roster_matcher.py
|
|
@@ -8,14 +8,19 @@ import functools
|
|
import logging
|
|
import re
|
|
|
|
+import salt.loader
|
|
+
|
|
# Try to import range from https://github.com/ytoolshed/range
|
|
HAS_RANGE = False
|
|
try:
|
|
+ salt.loader.LOAD_LOCK.acquire()
|
|
import seco.range
|
|
|
|
HAS_RANGE = True
|
|
except ImportError:
|
|
pass
|
|
+finally:
|
|
+ salt.loader.LOAD_LOCK.release()
|
|
# pylint: enable=import-error
|
|
|
|
|
|
--
|
|
2.44.0
|
|
|