Commit Graph

398 Commits (da55c48cce0e9ef4e279a728009e6a37ba2a1edb)

Author SHA1 Message Date
J. Nick Koston ec131d685e
Auto repack the database on the second sunday of the month (#69314) 2022-04-04 21:39:12 -10:00
J. Nick Koston f9a47f0f9e
Bump sqlalchemy to 1.4.34 (#69202)
Changelog: https://github.com/sqlalchemy/sqlalchemy/releases/tag/rel_1_4_34
https://github.com/sqlalchemy/sqlalchemy/releases/tag/rel_1_4_33
2022-04-03 18:39:07 +03:00
J. Nick Koston 522a9bb6b1
Exclude supported features and attribution from being recorded in the database (#69165) 2022-04-03 13:51:42 +02:00
J. Nick Koston 8b04c676ac
Fix typing on recorder.history (#68917) 2022-03-30 09:50:21 -10:00
J. Nick Koston d75f577b88
Additional strict typing for recorder (#68860) 2022-03-30 09:20:44 -07:00
epenet ecd43f391f
Prettify json (manifest.json) (#68886) 2022-03-30 10:56:37 +02:00
J. Nick Koston f5a13fc51b
Add ability to exclude attributes from being recorded by entity domain (#68824) 2022-03-29 20:13:08 -07:00
J. Nick Koston d7634d1cb1
Additional strict typing for additional recorder internals (#68689)
* Strict typing for additional recorder internals

* revert

* fix refactoring error
2022-03-29 09:45:25 +02:00
Marc Mueller 53110f8cb7
Update pylint to 2.13.2 (#68704) 2022-03-27 16:08:24 +02:00
Joakim Sørensen 32b2d1e5c9
Add backup platform to recorder (#68229) 2022-03-25 23:17:11 -07:00
Marc Mueller 911b159281
Cleanup after pylint update (#68657) 2022-03-26 00:34:12 +01:00
Marc Mueller 53245c6523
Update pylint to 2.13.0 (#68656) 2022-03-25 15:14:48 -07:00
J. Nick Koston 225f7a989b
Add strict typing for recorder util (#68681) 2022-03-25 15:03:46 -07:00
J. Nick Koston c5c34bc0d7
Typing and code quality for recorder history (#68647) 2022-03-24 17:58:38 -07:00
J. Nick Koston a566d3943c
Fix history queries while the database migration is in progress (#68598) 2022-03-24 09:49:13 -10:00
J. Nick Koston e911936a0d
Remove direct usage of concurrent.futures from recorder (#68593) 2022-03-24 09:48:49 -10:00
J. Nick Koston 3777fa52f0
Ensure recorder statistics process registry updates in the db executor (#68633) 2022-03-24 09:48:09 -10:00
Erik Montnemery cbf5b5ead5
Use recorder threadpool in WS recorder/get_statistics_metadata (#68615) 2022-03-24 14:15:09 +01:00
Erik Montnemery 61cc8e32f3
Include has_mean + has_sum in statistics metadata WS response (#68546)
* Include has_mean + has_sum in statistics metadata WS response

* Don't include has_mean/has_sum in history/list_statistic_ids

* Adjust tests

* Do include has_mean/has_sum in history/list_statistic_ids
2022-03-24 10:12:01 +01:00
J. Nick Koston 8c10963bc0
Small cleanups for recorder (#68551) 2022-03-23 12:12:37 -10:00
J. Nick Koston 08d6a3d9d4
Cache newly written state attribute ids (#68355) 2022-03-22 21:21:56 -10:00
J. Nick Koston 7deeb92485
Switch sqlalchemy execute to use .all() instead of list() on the iterator (#68540) 2022-03-22 19:24:21 -10:00
Erik Montnemery b5c5da96ac
Add WS API to adjust incorrect energy statistics (#65147)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-03-22 15:18:30 -07:00
Pawel bcb8c7ec3c
Add API endpoint get_statistics_metadata (#68471)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-03-21 21:14:47 -07:00
J. Nick Koston 3c10ac308d
Fix migration to schema v25 with Postgresql (#68426) 2022-03-20 21:49:11 +01:00
J. Nick Koston 6ffef8373b
Add shutdown guard to Recorder pool in case there is no connection (#68407) 2022-03-20 01:28:44 -10:00
J. Nick Koston 3150915cb7
Convert unindexed domain queries to entity_id queries (#68404) 2022-03-20 01:28:17 -10:00
J. Nick Koston 816695cc96
Avoid selecting attributes in the history api when `no_attributes` is passed (#68352) 2022-03-19 23:47:22 -10:00
J. Nick Koston 0c0df07c52
Avoid hashing attributes when they are already in the cache (#68395) 2022-03-19 23:33:37 -07:00
J. Nick Koston 7ee647cc78
Fix FOREIGN KEY constraint failed when removing state_attributes (#68364) 2022-03-19 14:21:28 -07:00
J. Nick Koston 9864090e0b
Cache parsing attr in LazyState (#68232) 2022-03-18 07:44:37 -07:00
J. Nick Koston 9215702388
Separate attrs into another table (reduces database size) (#68224) 2022-03-18 00:23:13 -10:00
J. Nick Koston bc862e97ed
Use a dedicated executor pool for database operations (#68105)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-03-17 23:09:01 -10:00
J. Nick Koston 95f20500ca
Commit any pending changes before running non-EventTasks in the recorder (#68287) 2022-03-17 21:33:22 -07:00
J. Nick Koston b18096fc54
Remove unused columns from states/events tables (#68078) 2022-03-13 23:44:55 -07:00
Franck Nijhof 36acb09cae
Update sqlalchemy to 1.4.32 (#68075) 2022-03-12 22:52:47 -10:00
Marc Mueller 596644d715
Fix typo [recorder] (#66879) 2022-02-19 16:04:20 +01:00
Marc Mueller cb736eaeaf
Add type ignore error codes [recorder] (#66780) 2022-02-18 10:37:38 +01:00
Erik Montnemery 39ed628cca
Suppress unwanted error messages during recorder migration (#66004) 2022-02-07 15:46:40 -08:00
Erik Montnemery 910b1f1ec8
Speed up deletion of duplicated statistics (#66014) 2022-02-07 09:11:52 -08:00
Christopher Masto 6d4df93bc7
Correct description of entity_globs (#65805) 2022-02-06 18:36:38 +01:00
Erik Montnemery 1f8e8926fe
Only remove duplicated statistics on error (#65653) 2022-02-04 11:31:12 -08:00
Erik Montnemery 020953e943
Improve recorder migration for PostgreSQL when columns already exist (#65680) 2022-02-04 10:55:28 -08:00
Erik Montnemery 41ab12cb88
Don't use shared session during recorder migration (#65672) 2022-02-04 09:55:11 -08:00
Erik Montnemery ac7662c82d
Remove limit of amount of duplicated statistics (#65641) 2022-02-04 14:49:45 +01:00
Franck Nijhof 7a2b699371
Update codespell to 2.1.0 (#64661) 2022-01-21 22:05:24 +01:00
Stefan Agner 0a9927d18e
Avoid locking the database for non-SQLite backends (#63847)
* Avoid locking the database for non-SQLite backends

Currently we only have a lock implementation for SQLite. Just return
success for all other databases as they are not expected to store data
in the config directory and the caller can assume that a backup can
be safely taken.

This fixes `RuntimeError: generator didn't yield` errors when creating
a backup with the current Supervisor dev builds.
2022-01-11 16:17:56 +01:00
epenet a19c95e4bd
Ensure service calls are typed [o-r] (#62920)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 13:10:17 +01:00
Erik Montnemery 2f8e65a9b0
Store deleted duplicated statistics in .storage (#62574) 2021-12-22 14:27:56 +01:00
Erik Montnemery 48b3d6e1c0
Save original + duplicate pairs when deleting duplicated statistics (#62498) 2021-12-21 15:24:36 +01:00