Hi,
We are facing an issue with Snowflake ingestion : the urns of foreing keys do not match urn of existing datasets/fields because they are missing platform_instance value.
For instance, our platform_instance param is “my_platform” and the urn of our dataset is : “urn:li:dataset:(urn:li:dataPlatform:snowflake,my_platform.db_dev.test_dlk.dlk_fin_ref_silo,DEV)”
But the value of foreignDataset is : “urn:li:dataset:(urn:li:dataPlatform:snowflake,db_dev.test_dlk.dlk_fin_ref_silo,DEV)”
(Same issue for values of foreignFields : “urn:li:schemaField:(urn:li:dataset:(urn:li:dataPlatform:snowflake,db_dev.test_dlk.dlk_fin_ref_silo,DEV),sub_silo_en)”
This produce an “object not found error” when we click on the foreign key in the UI (which is expected, as urn does not exist.
Please note that the sourceFields values are correct as the URN contains the platform_instance value (“my_platform”), and the ingestion is performed correctly, except for these foreignDataset/foreignFields.
Here is An instance of database value after ingestion for aspect schemaMetadata and the selected urn :
{
“name”: “FKEY_DLK_REF_SILO_SILO_EN”,
“sourceFields”: [
“urn:li:schemaField:(urn:li:dataset:(urn:li:dataPlatform:snowflake,my_platform.db_dev.test_dlk.dlk_fin_silo_user_test,DEV),silo_en)”
],
“foreignFields”: [
“urn:li:schemaField:(urn:li:dataset:(urn:li:dataPlatform:snowflake,db_dev.test_dlk.dlk_fin_ref_silo,DEV),silo_en)”
],
“foreignDataset”: “urn:li:dataset:(urn:li:dataPlatform:snowflake,db_dev.test_dlk.dlk_fin_ref_silo,DEV)”
}
Please find attached the recipe used for ingestion
Is there any way we could add the platform_instance value from recipe to the urn of foreignKeys, so they match the exsiting URNS generated by the snowflake ingestion?
Any help would be grealty appreciated.
Thanks
Antoine