A

Friday, November 4th, 2022 9:07 PM

Relation 'is part of table' could not be made

I am trying to ingest metadata (schemas, tables, columns from SQL Server using SpringBoot. when I execute the code below, for some columns, I get the following error during the Collibra import when trying to create the relation between the column and the table:

"The relation ‘is part of Table’ could not be made to ‘Region’. This asset was not found in the taxonomy of ‘Table’

> CollibraAsset columnAsset =    new CollibraAsset.Builder()
>            .name(columnName)
>            .typeName("Column")
>            .domainNameAndCommunityName(
>            .collibraDomainName,collibraCommunityName)  .addRelation(CollibraConstants.RelationType.COLUMN_ISPARTOF_TABLE,CollibraRelation.Direction.TARGET,
>                           new CollibraRelation.Builder()
>                                 .relatedAssetName(tableName)
>                                 .relatedAssetByDomainNameAndCommunityName
>                                  (collibraDomainName, collibraCommunityName)
>                                  .build())
>                         .status(CollibraConstants.Status.CANDIDATE)
>                     .build();

The tables exist as assets in Collibra. What could be causing this issue?

As a note, I added the batch size parameter to CollibraImportApiHelper and now the import behavior is inconsistent, for some databases, it works fine, for others, it errors with the same message above.

collibraImportApiHelper.importAssets(
(UUID) input[0], codeValueAssets, CollibraImportResponseType.COUNTS,10000);

1.2K Messages

2 years ago

I have always found the “source/target” syntax very confusing. I’m not sure, but I guess the relation direction might be wrong. Have you tried as “SOURCE” instead of “TARGET”?
What are the table name and column names?

If the column name is Region, that means that collibra refuses to recreate a relation [Table] --is part of Table --> [Column]

368 Messages

2 years ago

Hi @aaman.lamba and @arthur.burkhardt,

Can you check whether the ‘Region’ asset is of asset type ‘Table’ on your Collibra instance?

Also, if you want more details about the Asset relations and directions, please check out the section ‘The Asset Relations’ in the Integration library documentation. If you have any additional points or questions you would like to clarify in this section, please reply in this thread, and we will respond and update the documentation accordingly.
Thanks

26 Messages

2 years ago

It seems to have a problem if the Table Name is also a Column Name, but I am checking other scenarios.

368 Messages

2 years ago

Hi @aaman.lamba,

We have more questions that can help us understand the situation better.

Firstly, are you facing this issue for a custom integration you are developing or is this issue occurring for one of our pre-built integrations?

Secondly, are the assets that contain the same full name found in the same domain and community?

We also have some recommendations that can help avoid clashes in the full names of the assets. In most cases, we try to use the following Full Names formats:

  • For Tables: " DATABASENAME > TABLENAME "
  • For columns: " DATABASENAME > TABLENAME > COLUMNNAME"

Using this format will help you avoid clashes between asset names.

Thanks

26 Messages

2 years ago

Yes, this is for a custom integration but following the template provided by Collibra. I will test the integration with the fully qualified name to insert the asset names. Thank you.

26 Messages

2 years ago

Thank you, using fully qualified names worked and I’m able to ingest without any issues.

Loading...