2025-03-27 02:26:40 +01:00

23 lines
897 B
Diff

diff --git a/lib/carbon/routers.py b/lib/carbon/routers.py
index d1c47b7..1a70d7e 100644
--- a/lib/carbon/routers.py
+++ b/lib/carbon/routers.py
@@ -1,4 +1,4 @@
-import imp
+import importlib.util
from carbon.hashing import ConsistentHashRing, carbonHash
from carbon.util import PluginRegistrar
from six import with_metaclass
@@ -130,9 +130,8 @@ class ConsistentHashingRouter(DatapointRouter):
def setKeyFunctionFromModule(self, keyfunc_spec):
module_path, func_name = keyfunc_spec.rsplit(':', 1)
- module_file = open(module_path, 'U')
- description = ('.py', 'U', imp.PY_SOURCE)
- module = imp.load_module('keyfunc_module', module_file, module_path, description)
+ spec = importlib.util.spec_from_file_location("keyfunc_module", module_path)
+ module = importlib.util.module_from_spec(spec)
keyfunc = getattr(module, func_name)
self.setKeyFunction(keyfunc)