1 """Recorder constants."""
3 from __future__
import annotations
5 from enum
import StrEnum
6 from typing
import TYPE_CHECKING
11 ATTR_SUPPORTED_FEATURES,
12 EVENT_RECORDER_5MIN_STATISTICS_GENERATED,
13 EVENT_RECORDER_HOURLY_STATISTICS_GENERATED,
18 from .core
import Recorder
21 SQLITE_URL_PREFIX =
"sqlite://"
22 MARIADB_URL_PREFIX =
"mariadb://"
23 MARIADB_PYMYSQL_URL_PREFIX =
"mariadb+pymysql://"
24 MYSQLDB_URL_PREFIX =
"mysql://"
25 MYSQLDB_PYMYSQL_URL_PREFIX =
"mysql+pymysql://"
28 CONF_DB_INTEGRITY_CHECK =
"db_integrity_check"
30 MAX_QUEUE_BACKLOG_MIN_VALUE = 65000
31 MIN_AVAILABLE_MEMORY_FOR_QUEUE_BACKLOG = 256 * 1024**2
39 SQLITE_MAX_BIND_VARS = 998
43 SQLITE_MODERN_MAX_BIND_VARS = 4000
45 DEFAULT_MAX_BIND_VARS = 4000
47 DB_WORKER_PREFIX =
"DbWorker"
49 ALL_DOMAIN_EXCLUDE_ATTRS = {ATTR_ATTRIBUTION, ATTR_RESTORED, ATTR_SUPPORTED_FEATURES}
51 ATTR_KEEP_DAYS =
"keep_days"
52 ATTR_REPACK =
"repack"
53 ATTR_APPLY_FILTER =
"apply_filter"
57 CONTEXT_ID_AS_BINARY_SCHEMA_VERSION = 36
58 EVENT_TYPE_IDS_SCHEMA_VERSION = 37
59 STATES_META_SCHEMA_VERSION = 38
60 LAST_REPORTED_SCHEMA_VERSION = 43
62 LEGACY_STATES_EVENT_ID_INDEX_SCHEMA_VERSION = 28
64 INTEGRATION_PLATFORM_COMPILE_STATISTICS =
"compile_statistics"
65 INTEGRATION_PLATFORM_LIST_STATISTIC_IDS =
"list_statistic_ids"
66 INTEGRATION_PLATFORM_UPDATE_STATISTICS_ISSUES =
"update_statistics_issues"
67 INTEGRATION_PLATFORM_VALIDATE_STATISTICS =
"validate_statistics"
69 INTEGRATION_PLATFORM_METHODS = {
70 INTEGRATION_PLATFORM_COMPILE_STATISTICS,
71 INTEGRATION_PLATFORM_LIST_STATISTIC_IDS,
72 INTEGRATION_PLATFORM_UPDATE_STATISTICS_ISSUES,
73 INTEGRATION_PLATFORM_VALIDATE_STATISTICS,
78 """Supported dialects."""
82 POSTGRESQL =
"postgresql"