Skip to content

fast loop lock #42

@disruptivepatternmaterial

Description

Sometime last night this code went into a crazy loop that locked up ha for me and I had to remove it. I am not sure what the issue it as there is nothing in the log other than the normal errors that have been occurring since the modes changed and no one fixed.


Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/mila/entities/appliance/smart_mode_switch.py", line 37, in is_on
  File "/config/custom_components/mila/devices/device.py", line 85, in get_value
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/__init__.py", line 54, in __getitem__
    super(benedict, self).__getitem__(key))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keypath/keypath_dict.py", line 36, in __getitem__
    return super(KeypathDict, self).__getitem__(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/keylist/keylist_dict.py", line 43, in __getitem__
    return super(KeylistDict, self).__getitem__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/benedict/dicts/base/base_dict.py", line 43, in __getitem__
    return self._dict[key]
           ~~~~~~~~~~^^^^^
KeyError: 'smartModes'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions