@@ -265,9 +265,13 @@ def apply_entity(self, entity: Entity, project: str, commit: bool = True):
265265 existing_entity_proto .spec .name == entity_proto .spec .name
266266 and existing_entity_proto .spec .project == project
267267 ):
268+ entity .created_timestamp = (
269+ existing_entity_proto .meta .created_timestamp .ToDatetime ()
270+ )
271+ entity_proto = entity .to_proto ()
272+ entity_proto .spec .project = project
268273 del self .cached_registry_proto .entities [idx ]
269274 break
270-
271275 self .cached_registry_proto .entities .append (entity_proto )
272276 if commit :
273277 self .commit ()
@@ -338,6 +342,11 @@ def apply_feature_service(
338342 == feature_service_proto .spec .name
339343 and existing_feature_service_proto .spec .project == project
340344 ):
345+ feature_service .created_timestamp = (
346+ existing_feature_service_proto .meta .created_timestamp .ToDatetime ()
347+ )
348+ feature_service_proto = feature_service .to_proto ()
349+ feature_service_proto .spec .project = project
341350 del registry .feature_services [idx ]
342351 registry .feature_services .append (feature_service_proto )
343352 if commit :
@@ -410,6 +419,18 @@ def apply_feature_view(
410419 ):
411420 return
412421 else :
422+ existing_feature_view = type (feature_view ).from_proto (
423+ existing_feature_view_proto
424+ )
425+ feature_view .created_timestamp = (
426+ existing_feature_view .created_timestamp .replace (tzinfo = None )
427+ )
428+ if isinstance (feature_view , (FeatureView , StreamFeatureView )):
429+ feature_view .update_materialization_intervals (
430+ existing_feature_view_proto .meta .materialization_intervals
431+ )
432+ feature_view_proto = feature_view .to_proto ()
433+ feature_view_proto .spec .project = project
413434 del existing_feature_views_of_same_type [idx ]
414435 break
415436
@@ -638,6 +659,17 @@ def apply_saved_dataset(
638659 existing_saved_dataset_proto .spec .name == saved_dataset_proto .spec .name
639660 and existing_saved_dataset_proto .spec .project == project
640661 ):
662+ saved_dataset .created_timestamp = (
663+ existing_saved_dataset_proto .meta .created_timestamp .ToDatetime ()
664+ )
665+ saved_dataset .min_event_timestamp = (
666+ existing_saved_dataset_proto .meta .min_event_timestamp .ToDatetime ()
667+ )
668+ saved_dataset .max_event_timestamp = (
669+ existing_saved_dataset_proto .meta .max_event_timestamp .ToDatetime ()
670+ )
671+ saved_dataset_proto = saved_dataset .to_proto ()
672+ saved_dataset_proto .spec .project = project
641673 del self .cached_registry_proto .saved_datasets [idx ]
642674 break
643675
0 commit comments