Hi @Karthik_Karanm 

The Model Serving environment runs in an isolated, production-grade context (different compute plane than your interactive workspace).
Even though you own the objects, the serving runtime executes as a system service principal or service identity that:
-- May not inherit your personal workspace permissions
-- Needs explicit permissions granted to access Unity Catalog tables and Vector Search inde

1. Grant Permissions to the Model Serving Identity
You need to manually grant SELECT privileges to the serving identity on:
-- The Vector Search index-backed tables
-- Optionally, the schemas and catalogs themselves if using fine-grained access control

First, identify the serving identity (it might be something like databricks-model-serving)

2. Enable Table ACLs in Unity Catalog (if not already)
Ensure that Table Access Control (Table ACLs) is enabled in the workspace and catalog. You can check this under:
Admin Console → Data → Unity Catalog → Permissions → Table Access Control =On

3. Re-deploy or Rebuild Model After Permissions Update
Sometimes permissions don't take immediate effect for a running model. You may need to:
-- Rebuild and log the MLflow model (if UC tags changed)
-- Delete and redeploy the endpoint
-- Or at minimum, restart the endpoint to clear cached permission
4. Use catalog.table Syntax Explicitly in Model Code
Sometimes, serving context is sensitive to fully qualified names:

Extra Debugging Tip
To simulate the serving context, create a service principal and attach it to a job cluster or notebook using impersonation mode.
If that principal fails with the same error, you've validated the access mismatch.

 

LR