I’ve been using HA for a year or two and just recently I’ve started to see errors where it appears some of my entities are not saving correctly and when I reboot/restart HA, I have to go into Devices & services and re-add/reconfigure a number of integrations. I’m able to go through that setup/configuration option without any issue, but when I reboot/restart HA, I have to go through the whole process again.
I notice the following error in the logs every time I try and save/edit/delete any settings but am not sure what this means or where to start to troubleshoot:
2024-12-26 12:17:15.059 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved (None)
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/storage.py", line 516, in _async_callback_delayed_write
await self._async_handle_write_data()
File "/usr/src/homeassistant/homeassistant/helpers/storage.py", line 541, in _async_handle_write_data
await self._async_write_data(self.path, data)
File "/usr/src/homeassistant/homeassistant/helpers/storage.py", line 546, in _async_write_data
await self.hass.async_add_executor_job(self._write_data, self.path, data)
File "/usr/local/lib/python3.13/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/src/homeassistant/homeassistant/helpers/storage.py", line 553, in _write_data
data["data"] = data.pop("data_func")()
~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 2432, in _data_to_save
"entries": [entry.as_storage_fragment for entry in self._entries.values()] # type: ignore[misc]
^^^^^^^^^^^^^^^^^^^^^^^^^
File "src/propcache/_helpers_c.pyx", line 80, in propcache._helpers_c.cached_property.__get__
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 537, in as_storage_fragment
return json_fragment(json_bytes_sorted(self.as_dict()))
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
TypeError: Recursion limit reached
My OS version is 14.1
Core version is 2024.12.5
It’s almost as though the changes I make are saved in some sort of cache but aren’t able to be correctly written to the database.
When I check the configuration under Development Tools, I get no errors.
I’m happy to provide additional details - just not sure where to start. Appreciate any advice anyone may have on where to go from here
I have the exact same issue, I can’t add devices anymore, it’s temporary, every reboot resets and I have to re-add them. Settings (like the refresh token for the Tesla Custom integration) are also lost. Error in the logs is the same, Recursion limit reached related to storage.py and config_entries.py. Running 2024.12.5, no errors under Developer Tools.
@mkeppler@fingmongoose so now it’s the three of us. Have you folks had any success troubleshooting this? This issue persists for me. I’ve resorted to editing homeassistant/.storage/core.config_entries manually once. But adding new devices is impossible, they don’t survive a restart or a reboot.
This is what the entry in the logs look like.
Logger: homeassistant
Source: config_entries.py:537
First occurred: December 28, 2024 at 05:03:20 (129 occurrences)
Last logged: 22:00:01
Error doing job: Task exception was never retrieved (None)
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/storage.py", line 516, in _async_callback_delayed_write
await self._async_handle_write_data()
File "/usr/src/homeassistant/homeassistant/helpers/storage.py", line 541, in _async_handle_write_data
await self._async_write_data(self.path, data)
File "/usr/src/homeassistant/homeassistant/helpers/storage.py", line 546, in _async_write_data
await self.hass.async_add_executor_job(self._write_data, self.path, data)
File "/usr/local/lib/python3.13/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/src/homeassistant/homeassistant/helpers/storage.py", line 553, in _write_data
data["data"] = data.pop("data_func")()
~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 2432, in _data_to_save
"entries": [entry.as_storage_fragment for entry in self._entries.values()] # type: ignore[misc]
^^^^^^^^^^^^^^^^^^^^^^^^^
File "src/propcache/_helpers_c.pyx", line 80, in propcache._helpers_c.cached_property.__get__
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 537, in as_storage_fragment
return json_fragment(json_bytes_sorted(self.as_dict()))
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
TypeError: Recursion limit reached
The problem srtarted around 2024.11 for me as well.
I don’t know where to go from here further honestly.
Same problem for me.
Also helpers are not saved, which is quite annoying.
I tried to set up a new system and restored my backup: problem still there. So it seems that some kind of config is the cause of the problem, but I changed nothing…
I had the same problem. it didn’t occur to me that Meross Cloud integration was the culprit. Uninstalling Meross Cloud integration and rebooting fixed the problem.