From 846723cca0afde7e2554182a97e766dc94afa897 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=85ke=20Forslund?= Date: Wed, 24 Jul 2019 12:16:05 +0200 Subject: [PATCH] Limit creation attempts of msm-lock the msm-lock was created in global scope making all mycroft processes trying to create it. This moves init to actual usage of the lock --- mycroft/skills/msm_wrapper.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/mycroft/skills/msm_wrapper.py b/mycroft/skills/msm_wrapper.py index 840f9b9531e3..98453d74dc04 100644 --- a/mycroft/skills/msm_wrapper.py +++ b/mycroft/skills/msm_wrapper.py @@ -17,13 +17,23 @@ from os.path import join, expanduser, exists from msm import MycroftSkillsManager, SkillRepo + from mycroft.util.combo_lock import ComboLock +from mycroft.util.log import LOG -mycroft_msm_lock = ComboLock('/tmp/mycroft-msm.lck') +mycroft_msm_lock = None def create_msm(config): """ Create msm object from config. """ + global mycroft_msm_lock + if mycroft_msm_lock is None: + try: + mycroft_msm_lock = ComboLock('/tmp/mycroft-msm.lck') + LOG.debug('mycroft-msm combo lock created') + except Exception as e: + LOG.error('Failed to create msm lock ({})'.format(repr(e))) + msm_config = config['skills']['msm'] repo_config = msm_config['repo'] data_dir = expanduser(config['data_dir'])