mirror of
https://github.com/home-assistant/core.git
synced 2025-05-01 04:37:52 +00:00

This was causing the wheels to fail to build. We need to workout why when we don't have release pressure This reverts commit d9d22a95563c745ce6a50095f7de902eb078805d.
50 lines
1.3 KiB
Python
50 lines
1.3 KiB
Python
"""Recorder constants."""
|
|
|
|
from functools import partial
|
|
import json
|
|
from typing import Final
|
|
|
|
from homeassistant.backports.enum import StrEnum
|
|
from homeassistant.const import ATTR_ATTRIBUTION, ATTR_RESTORED, ATTR_SUPPORTED_FEATURES
|
|
from homeassistant.helpers.json import JSONEncoder
|
|
|
|
DATA_INSTANCE = "recorder_instance"
|
|
SQLITE_URL_PREFIX = "sqlite://"
|
|
MYSQLDB_URL_PREFIX = "mysql://"
|
|
DOMAIN = "recorder"
|
|
|
|
CONF_DB_INTEGRITY_CHECK = "db_integrity_check"
|
|
|
|
MAX_QUEUE_BACKLOG = 40000
|
|
|
|
# The maximum number of rows (events) we purge in one delete statement
|
|
|
|
# sqlite3 has a limit of 999 until version 3.32.0
|
|
# in https://github.com/sqlite/sqlite/commit/efdba1a8b3c6c967e7fae9c1989c40d420ce64cc
|
|
# We can increase this back to 1000 once most
|
|
# have upgraded their sqlite version
|
|
MAX_ROWS_TO_PURGE = 998
|
|
|
|
DB_WORKER_PREFIX = "DbWorker"
|
|
|
|
JSON_DUMP: Final = partial(json.dumps, cls=JSONEncoder, separators=(",", ":"))
|
|
|
|
ALL_DOMAIN_EXCLUDE_ATTRS = {ATTR_ATTRIBUTION, ATTR_RESTORED, ATTR_SUPPORTED_FEATURES}
|
|
|
|
ATTR_KEEP_DAYS = "keep_days"
|
|
ATTR_REPACK = "repack"
|
|
ATTR_APPLY_FILTER = "apply_filter"
|
|
|
|
KEEPALIVE_TIME = 30
|
|
|
|
|
|
EXCLUDE_ATTRIBUTES = f"{DOMAIN}_exclude_attributes_by_domain"
|
|
|
|
|
|
class SupportedDialect(StrEnum):
|
|
"""Supported dialects."""
|
|
|
|
SQLITE = "sqlite"
|
|
MYSQL = "mysql"
|
|
POSTGRESQL = "postgresql"
|