From 9107c41a23193fe93e23e82ff4afbd2b477e1c7a 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 7cfca8c9f87..ad342276ac7 100644 --- a/ingestion/src/metadata/ingestion/ometa/mixins/lineage_mixin.py +++ b/ingestion/src/metadata/ingestion/ometa/mixins/lineage_mixin.py @@ -22,7 +22,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.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 @@ -138,6 +138,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 (