From 84441c4ad13df5e8dbf3f5de5ca63e14d5c34d02 Mon Sep 17 00:00:00 2001 From: Mayur Singal <39544459+ulixius9@users.noreply.github.com> Date: Mon, 9 Sep 2024 17:52:51 +0530 Subject: [PATCH] GEN-1251: Fix Expected ColumnLineage but got dict (#17708) --- .../ingestion/ometa/mixins/lineage_mixin.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/ingestion/src/metadata/ingestion/ometa/mixins/lineage_mixin.py b/ingestion/src/metadata/ingestion/ometa/mixins/lineage_mixin.py index a7f097efc33..45769f5935c 100644 --- a/ingestion/src/metadata/ingestion/ometa/mixins/lineage_mixin.py +++ b/ingestion/src/metadata/ingestion/ometa/mixins/lineage_mixin.py @@ -23,7 +23,7 @@ from pydantic import BaseModel from metadata.generated.schema.api.lineage.addLineage import AddLineageRequest from metadata.generated.schema.entity.services.databaseService import DatabaseService from metadata.generated.schema.type.basic import FullyQualifiedEntityName, Uuid -from metadata.generated.schema.type.entityLineage import EntitiesEdge +from metadata.generated.schema.type.entityLineage import ColumnLineage, EntitiesEdge from metadata.generated.schema.type.entityReference import EntityReference from metadata.ingestion.lineage.models import ConnectionTypeDialectMapper from metadata.ingestion.lineage.parser import LINEAGE_PARSING_TIMEOUT @@ -139,6 +139,18 @@ class OMetaLineageMixin(Generic[T]): ) ) + serialized_col_details = [] + for col_lin in data.edge.lineageDetails.columnsLineage or []: + serialized_col_details.append(ColumnLineage(**col_lin)) + data.edge.lineageDetails.columnsLineage = serialized_col_details + + serialized_col_details_og = [] + for col_lin in original.edge.lineageDetails.columnsLineage or []: + serialized_col_details_og.append(ColumnLineage(**col_lin)) + original.edge.lineageDetails.columnsLineage = ( + serialized_col_details_og + ) + # Keep the pipeline information from the original # lineage if available if (