cancel
Showing results for 
Search instead for 
Did you mean: 
Data Engineering
Join discussions on data engineering best practices, architectures, and optimization strategies within the Databricks Community. Exchange insights and solutions with fellow data engineers.
cancel
Showing results for 
Search instead for 
Did you mean: 

Table shared via Delta sharingschema not shown in Unity-Catalog

Maaax
New Contributor

Hello dear community,

I use the following command to register the provider including shares to unity-catalog:

databricks unity-catalog create-provider --name company --recipient-profile-json-file ~/Develop/profile.json

Once it is registered, I could see the provider and shares in the unity-catalog delta sharing panel. On each of the share I could click on "create catalog" to import the schema to unity-catalog.

I could see the created catalog, schema and table in unity-catalog. But when I click on the table to see its schema, I see the following error:

Failed to request /ajax-api/2.1/unity-catalog/tables/company.patient_schema2.patient_table2?include_browse=true: 404 Not Found Schema 'company.patient_schema2' does not exist.

I have not seen similar error before. Anyone has an idea where could potentially cause the error? Thanks.

1 REPLY 1

steyler-db
Databricks Employee
Databricks Employee

Hello Maaax, thanks for pointing this issue you are facing, let's recap this issue in sections:

Error description:
The error you are encountering, "Failed to request /ajax-api/2.1/unity-catalog/tables/company.patient_schema2.patient_table2?include_browse=true: 404 Not Found Schema 'company.patient_schema2' does not exist," suggests that the schema company.patient_schema2 does not exist in Unity Catalog

What actions you can perform:

1- Ensure that the schema company.patient_schema2 was correctly registered in Unity Catalog. You can verify this by listing all schemas in the catalog and checking if company.patient_schema2 appears in the list. 

2- Double-check the configuration of the provider and the shares. Ensure that the provider was created successfully and that the shares were correctly imported into Unity Catalog. Any misconfiguration here could lead to the schema not being recognized.

3- Permissions: Verify that you have the necessary permissions to access the schema and the table. Lack of appropriate permissions can sometimes result in such errors.

 

If the issue persists we can try recreating the schema, it might be that the schema was deleted and recreated with the same name and the problem might be that the GetTableMetadata is using a different shared table ID from ListAllTables and ListTables which is causing the table to not be found and getting this 400 errors.

 

Another point to add is, you can follow the following github repo that give some recommendations for this listing tables and schemas:

-Verify if the implemented of all the endpoints was with these protocols:

https://github.com/delta-io/delta-sharing/blob/main/PROTOCOL.md

Specifically:
List all tables in a share
https://github.com/delta-io/delta-sharing/blob/main/PROTOCOL.md#list-all-tables-in-a-share
List tables in a schema
https://github.com/delta-io/delta-sharing/blob/main/PROTOCOL.md#list-tables-in-a-schema
Query table metadata
https://github.com/delta-io/delta-sharing/blob/main/PROTOCOL.md#query-table-metadata
 

I hope this clears your issue.

 

Connect with Databricks Users in Your Area

Join a Regional User Group to connect with local Databricks users. Events will be happening in your city, and you won’t want to miss the chance to attend and share knowledge.

If there isn’t a group near you, start one and help create a community that brings people together.

Request a New Group