Troubleshooting custom models and aspect retrieval using Open API with GMS v0.12.1

Original Slack Thread

Hello, team. I have extended dataset entity by using custom models. I followed the example and added customDataQualityRules successfully. However, when I attempted to retrieve it using the Open API (openapi/entities/v1/latest), the operation was unsuccessful.
We are currently running GMS version v0.12.1 on GKE.Below is the error log.

Hey there! :wave: Make sure your message includes the following information if relevant, so we can help more effectively!

  1. Which DataHub version are you using? (e.g. 0.12.0)
  2. Please post any relevant error logs on the thread!

I suspect the issue lies in GMS’s inability to recognize the custom aspect customDataQualityRules. When I attempted to retrieve a standard dataset entity, the call was successful.

The best support for custom aspects is going to the be| API today. We are working on improving this support for OpenAPI in future releases.

<@U03MF8MU5P0> Thanks for the reply. I encountered another issue when attempting to define a new entity using an existing aspect, which resulted in failure. Here are the details. Appreciate your help.

We support <|Custom Aspects>, not Custom Entities. Do you see a problem adding institutionalMemory to an existing entity?

<@U03MF8MU5P0> I see. For adding a new entity, should I fork the repository, incorporate the entity into the metadata model, and then build and package it as an image? I deploy using Helm and use a custom image for GMS. Am I on the right track? Should I replace the image of mae-consumer and mce-consumer as well?

For adding a new entity, forking is required. The datahub-upgrade and gms images then need to be updated in the helm chart using the image section for GMS. Make sure that if you’re running consumers, that you also build those images and update them in the helm chart.

You only need those consumers if you have enabled them

The important one those is the datahub-upgrade and gms. The datahub-upgrade would create search indices for your new entities assuming you are using searchable annotations, but in general there is an ES index per entity and that upgrade job creates it.

Thank you so much. I will give a try.