From 03c517b066fce832fd224d228d7ad9268e0c248f Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Tue, 18 Apr 2023 03:26:41 -1000 Subject: [PATCH] Add a guard against selecting all entities in `state_changes_during_period` (#91585) Add a guard against selecting all entities in state_changes_during_period This cannot happen in `dev` because we require entity ids --- homeassistant/components/recorder/history/modern.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/recorder/history/modern.py b/homeassistant/components/recorder/history/modern.py index f7d08c6bba8..44950b8fe71 100644 --- a/homeassistant/components/recorder/history/modern.py +++ b/homeassistant/components/recorder/history/modern.py @@ -374,6 +374,8 @@ def state_changes_during_period( if entity_id: instance = recorder.get_instance(hass) metadata_id = instance.states_meta_manager.get(entity_id, session, False) + if metadata_id is None: + return {} entity_id_to_metadata_id = {entity_id: metadata_id} stmt = _state_changed_during_period_stmt( start_time, @@ -394,7 +396,7 @@ def state_changes_during_period( states, start_time, entity_ids, - entity_id_to_metadata_id, + entity_id_to_metadata_id, # type: ignore[arg-type] include_start_time_state=include_start_time_state, ), )