Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error logger: compressor_operational_time has state class total_increasing, but its state is not strictly increasing. #100

Open
bennybechdk opened this issue Nov 6, 2024 · 2 comments
Labels
question Further information is requested

Comments

@bennybechdk
Copy link

bennybechdk commented Nov 6, 2024

This could be a timing issue.
In ny setup events is "injected" (handled in Node-red) every 2 minutes, and changes the temperature first time after 21:00 (rising the temp after lowering it around 17:00.

So my guess is that it could be a collision of how the state is updated.

From UI:
image
defined as:
image

From log:
Logger: homeassistant.components.sensor.recorder
Kilde: components/sensor/recorder.py:317
integration: Sensor (dokumentation, problemer)
Første forekomst: 21.00.10 (1 forekomster)
Senest logget: 21.00.10

Entity sensor.holmevej_17_compressor_operational_time from integration thermia has state class total_increasing, but its state is not strictly increasing. Triggered by state 14342.0 (14343.0) with last_updated set to 2024-11-04T19:57:43.597756+00:00. Please create a bug report at https://github.com/klejejs/ha-thermia-heat-pump-integration/issues

Other logs that could be interessting:

Logger: homeassistant.components.websocket_api.http.connection
Kilde: components/websocket_api/commands.py:245
integration: Home Assistant WebSocket API (dokumentation, problemer)
Første forekomst: 21.00.18 (1 forekomster)
Senest logget: 21.00.18

[546866610528] Unexpected exception
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 716, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 468, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 463, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 1428, in getresponse
response.begin()
File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 667, in send
resp = conn.urlopen(
^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 802, in urlopen
retries = retries.increment(
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 552, in increment
raise six.reraise(type(error), error, _stacktrace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/packages/six.py", line 769, in reraise
raise value.with_traceback(tb)
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 716, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 468, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 463, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 1428, in getresponse
response.begin()
File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 245, in handle_call_service
response = await hass.services.async_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2761, in async_call
response_data = await coro
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2804, in _execute_service
return await target(service_call)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 996, in entity_service_call
single_response = await _handle_entity_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1068, in _handle_entity_call
result = await task
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/water_heater/init.py", line 439, in async_service_temperature_set
await entity.async_set_temperature(**kwargs)
File "/config/custom_components/thermia/water_heater.py", line 146, in async_set_temperature
await self.hass.async_add_executor_job(
File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/thermia/water_heater.py", line 147, in
lambda: self.coordinator.data.heat_pumps[self.idx].set_temperature(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/ThermiaOnlineAPI/model/HeatPump.py", line 162, in set_temperature
self.__api_interface.set_temperature(self, temperature)
File "/usr/local/lib/python3.12/site-packages/ThermiaOnlineAPI/api/ThermiaAPI.py", line 400, in set_temperature
self.__set_register_value(
File "/usr/local/lib/python3.12/site-packages/ThermiaOnlineAPI/api/ThermiaAPI.py", line 513, in __set_register_value
request = self.__session.post(
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post
return self.request("POST", url, data=data, json=json, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 682, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

4 Nov 21:00:19 - [error] [api-call-service:SkiftRumTemp] HomeAssistantError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

@klejejs
Copy link
Owner

klejejs commented Nov 27, 2024

Hey! Are you sure this is related to the Thermia integration and not to the Node-Red connection with Home Assistant? Do you experience the same behavior using Home Assistant automations/scripts?
As the operational_time sensor and set_temperature action are in no way related, I find it hard to believe the cause of the error is the actual action of setting the temperature for heat pump.

@klejejs klejejs added the question Further information is requested label Dec 5, 2024
@bennybechdk
Copy link
Author

I am not shure to why this happend.
I just think i could be a timing issue (race condition), because the timing of the error at setting the temperature was close (could happen if setting the temp update other state values, but have no knowledge of the code running here)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants