From 99bdb46750bc70617fde108083e11b585e2d33ca Mon Sep 17 00:00:00 2001 From: Nicolas Mowen Date: Wed, 18 Feb 2026 09:09:28 -0700 Subject: [PATCH] Revert "Fix saving attributes for object to DB (#22000)" This reverts commit 73c1e12faff13a04cae8cb44ddc356100d63a915. --- frigate/events/maintainer.py | 13 ------------- frigate/track/object_processing.py | 11 +---------- frigate/track/tracked_object.py | 10 +--------- 3 files changed, 2 insertions(+), 32 deletions(-) diff --git a/frigate/events/maintainer.py b/frigate/events/maintainer.py index f6ab777c1..67d8cf2e8 100644 --- a/frigate/events/maintainer.py +++ b/frigate/events/maintainer.py @@ -6,7 +6,6 @@ from typing import Dict from frigate.comms.events_updater import EventEndPublisher, EventUpdateSubscriber from frigate.config import FrigateConfig -from frigate.config.classification import ObjectClassificationType from frigate.events.types import EventStateEnum, EventTypeEnum from frigate.models import Event from frigate.util.builtin import to_relative_box @@ -248,18 +247,6 @@ class EventProcessor(threading.Thread): "recognized_license_plate" ][1] - # only overwrite attribute-type custom model fields in the database if they're set - for name, model_config in self.config.classification.custom.items(): - if ( - model_config.object_config - and model_config.object_config.classification_type - == ObjectClassificationType.attribute - ): - value = event_data.get(name) - if value is not None: - event[Event.data][name] = value[0] - event[Event.data][f"{name}_score"] = value[1] - ( Event.insert(event) .on_conflict( diff --git a/frigate/track/object_processing.py b/frigate/track/object_processing.py index a2638e5a5..e0ee74228 100644 --- a/frigate/track/object_processing.py +++ b/frigate/track/object_processing.py @@ -33,7 +33,6 @@ from frigate.config.camera.updater import ( CameraConfigUpdateEnum, CameraConfigUpdateSubscriber, ) -from frigate.config.classification import ObjectClassificationType from frigate.const import ( FAST_QUEUE_TIMEOUT, UPDATE_CAMERA_ACTIVITY, @@ -760,16 +759,8 @@ class TrackedObjectProcessor(threading.Thread): self.update_mqtt_motion(camera, frame_time, motion_boxes) - attribute_model_names = [ - name - for name, model_config in self.config.classification.custom.items() - if model_config.object_config - and model_config.object_config.classification_type - == ObjectClassificationType.attribute - ] tracked_objects = [ - o.to_dict(attribute_model_names=attribute_model_names) - for o in camera_state.tracked_objects.values() + o.to_dict() for o in camera_state.tracked_objects.values() ] # publish info on this frame diff --git a/frigate/track/tracked_object.py b/frigate/track/tracked_object.py index ffa4f51fb..453798651 100644 --- a/frigate/track/tracked_object.py +++ b/frigate/track/tracked_object.py @@ -376,10 +376,7 @@ class TrackedObject: ) return (thumb_update, significant_change, path_update, autotracker_update) - def to_dict( - self, - attribute_model_names: list[str] | None = None, - ) -> dict[str, Any]: + def to_dict(self) -> dict[str, Any]: event = { "id": self.obj_data["id"], "camera": self.camera_config.name, @@ -414,11 +411,6 @@ class TrackedObject: "path_data": self.path_data.copy(), "recognized_license_plate": self.obj_data.get("recognized_license_plate"), } - if attribute_model_names is not None: - for name in attribute_model_names: - value = self.obj_data.get(name) - if value is not None: - event[name] = value return event