1
0
mirror of https://github.com/home-assistant/core.git synced 2025-08-12 06:50:00 +00:00
Commit Graph

21 Commits

Author SHA1 Message Date
J. Nick Koston
c612a92cfb Use python defaults for comparing State, LazyState, and Event objects ()
* Speed up comparing State and Event objects

Use default python implementation for State and Event __hash__ and __eq__

The default implementation compared based on the id() of the object
which is effectively what we want here anyways. These overrides are
left over from the days when these used to be attrs objects

By avoiding implementing these ourselves all of the equality checks
can happen in native code

* tweak

* adjust tests

* write out some more

* fix test to not compare objects

* more test fixes

* more test fixes

* correct stats tests

* fix more tests

* fix more tests

* update sensor recorder tests
2023-01-29 13:31:43 -05:00
Erik Montnemery
b94e1e9ef8 Fire events when long term statistics is updated ()
* Fire events when long term statistics is updated

* Allow the new events to be subscribed to by anyone

* Address review comments

* Finish renaming events

* Finish renaming events

* Fix do_adhoc_statistics

* Adjust tests

* Adjust tests
2022-11-24 22:01:36 +01:00
Erik Montnemery
607a0e7697 Reduce size of get_statistics_during_period WS API response () 2022-11-16 17:36:30 +01:00
Erik Montnemery
acb1477673 Avoid time traveling in recorder tests () 2022-10-13 11:51:27 +02:00
epenet
019d297ff0 Apply hass-relative-import to recorder tests () 2022-09-19 12:35:03 +02:00
Erik Montnemery
606d544157 Use recorder get_instance function to improve typing () 2022-07-22 11:58:26 +02:00
Erik Montnemery
5f2b4001f3 Separate recorder database schema from other classes ()
* Separate recorder database schema from other classes

* fix logbook imports

* migrate new tests

* few more

* last one

* fix merge

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-06-07 14:41:43 +02:00
J. Nick Koston
9c3f949165 Add live streaming logbook websocket endpoint ()
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-05-22 14:57:54 -05:00
J. Nick Koston
7c9c0e911a Move do_adhoc_statistics to recorder test helpers () 2022-05-08 12:45:57 -07:00
J. Nick Koston
f073f17040 Refactor tracking of the recorder run history ()
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-04-26 09:59:43 -10:00
Erik Montnemery
3016b5fbfc Use recorder fixtures and helpers in tests () 2022-04-26 06:08:00 -10:00
Erik Montnemery
28ebab9c5a Simplify waiting for recorder in tests () 2022-04-25 12:04:47 +02:00
Erik Montnemery
185f7beafc Improve recorder migration tests () 2021-11-04 20:21:38 -07:00
Erik Montnemery
4c5aca93df Add recorder status WS API ()
* Add recorder status WS API

* Rename recorder/status to recorder/info

* Silence pylint

* Improve tests

* Address review comments

* Tweak

* Try to fix tests

* Try to debug flaky tests

* Try to fix tests

* Revert changes to async_migration_in_progress

* Try to fix tests

* Remove debug prints

* Apply suggestions from code review
2021-11-04 16:46:45 +01:00
jan iversen
c351098f04 HomeAssistantType —> HomeAssistant for Integrations p* - s* () 2021-04-22 19:58:02 +02:00
J. Nick Koston
28c80c1133 Ensure recorder purge tests can handle multiple purge cycle ()
Since a purge can generate another purge task, we now wait for
three recorder queue completions by default.
2021-03-15 11:19:19 -07:00
Marc Mueller
10848b9bdf Recorder improvements () 2021-03-11 07:52:07 -10:00
J. Nick Koston
9b69549f73 Recover and restart the recorder if the sqlite database encounters corruption while running () 2021-02-19 21:26:24 -10:00
J. Nick Koston
113d738fa2 Reduce orm overhead by grouping object expiration () 2020-10-07 15:35:48 +02:00
J. Nick Koston
56ddbd87b2 Fix recorder test intermittently failing () 2020-08-30 13:58:00 -05:00
J. Nick Koston
3a680bf7b7 Add a commit interval setting to recorder ()
* Add a commit interval setting to recorder

* Make the default every 1s instead of immediate

* See attached py-spy flamegraphs for why 1s

* This avoids disk thrashing during event storms

* Make Home Assistant significantly more responsive on busy systems

* remove debug

* Add commit forces for tests that expect commits to be immediate

* Add commit forces for tests that expect commits to be immediate

* make sure _trigger_db_commit is in the right place (all effective "wait_recording_done" calls)

* De-duplicate wait_recording_done code
2020-03-09 17:43:26 -07:00