<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Databricks Model Serving Endpoint Fails: “_USER not found for feature table” in Machine Learning</title>
    <link>https://community.databricks.com/t5/machine-learning/databricks-model-serving-endpoint-fails-user-not-found-for/m-p/139553#M4449</link>
    <description>&lt;H3 class="_7uu25p0 qt3gz9c _7pq7t612 heading3 _7uu25p1"&gt;Root cause in plain English&lt;/H3&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;The lookup client is trying to read SQL-style credentials like PREFIX_USER/PREFIX_PASSWORD for a third‑party online store and the “prefix” is empty, so it searches for “_USER” and fails. That auth scheme applies only to third‑party stores; Databricks Online Feature Store (Lakebase) does not require USER/PASSWORD/HOST env vars for serving.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;H3 class="_7uu25p0 qt3gz9c _7pq7t612 heading3 _7uu25p1"&gt;Resolve in 6 steps&lt;/H3&gt;
&lt;P class="qt3gz91 paragraph"&gt;1) Use the Databricks Online Feature Store path end‑to‑end&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Make sure your feature tables are published to a Databricks Online Feature Store (Lakebase) via FeatureEngineeringClient.publish_table and that the online tables are AVAILABLE in UC. Don’t pass SQL OnlineStoreSpec or secret prefixes; just use DatabricksOnlineStore and let Databricks manage auth.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;2) Confirm platform and client versions&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Use DBR 16.4 LTS ML (or Serverless) for notebooks/jobs that publish tables and log the model, and install databricks-feature-engineering &amp;gt;= 0.13.0 in those workflows. This is the required stack for Online Feature Stores and automatic lookup.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;If your model was logged on older clients/runtimes, re‑log it with the current databricks-feature-engineering so the serving image uses the modern lookup client (databricks-feature-lookup) and understands Lakebase metadata correctly.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;3) Re‑publish feature tables correctly (if in doubt, redo)&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Before publishing: ensure primary key exists, PK columns are NOT NULL, and CDF is enabled on the offline table.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;Publish with DatabricksOnlineStore (no secrets/host/user/password). Wait for the online table status to be AVAILABLE in UC.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;4) Re‑log and redeploy the model for automatic lookup&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Log via FeatureEngineeringClient.log_model with your FeatureLookup definitions. Models logged this way automatically track lineage and perform feature lookups from online stores at inference; no extra credentials are needed for Databricks Online Feature Store.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;5) Remove third‑party store credentials and env vars&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;On the serving endpoint, remove environment variables intended for SQL stores (for example, any PREFIX_USER/PREFIX_PASSWORD, LAKEBASE_USER/LAKEBASE_PASSWORD). These are documented for third‑party stores and will misroute the lookup client; Lakebase uses OAuth transparently and does not need them.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;6) Validate endpoint permissions for the auto service principal&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Model Serving creates its own system service principal to query your online tables. Ensure it has USE CATALOG, USE SCHEMA, and SELECT on the online tables’ catalog/schema. Databricks grants these automatically in most cases; if your governance is stricter, verify and grant them explicitly.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;
&lt;H3 class="_7uu25p0 qt3gz9c _7pq7t612 heading3 _7uu25p1"&gt;Quick diagnostic checklist&lt;/H3&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Online tables show AVAILABLE in UC, created by publish_table to a DatabricksOnlineStore.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;No SQL-store secrets/prefix env vars are present on the endpoint; nothing like PREFIX_USER/PASSWORD or LAKEBASE_USER/PASSWORD is set.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;Model version was logged with FeatureEngineeringClient.log_model on a recent FE client/runtime; not a legacy Workspace Feature Store artifact.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;The endpoint’s auto service principal has catalog/schema/table access needed to read the online tables.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;If you apply the steps above, the “_USER not found” path will no longer be taken and the endpoint will use OAuth-based access to Lakebase online tables automatically.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;# DBR 16.4 LTS ML (or serverless) + databricks-feature-engineering &amp;gt;= 0.13.0
from databricks.feature_engineering import FeatureEngineeringClient, FeatureLookup
from databricks.ml_features.entities.online_store import DatabricksOnlineStore

fe = FeatureEngineeringClient()

# Ensure offline table has PK + CDF, then publish to Lakebase
online_store = fe.get_online_store(name="my-online-store")
fe.publish_table(
    online_store=online_store,
    source_table_name="catalog.schema.nyc_taxi_pickup_features_spn",
    online_table_name="catalog.schema.nyc_taxi_pickup_features_spn_online",
)

# Log model with feature lookups for automatic online serving
feature_lookups = [
    FeatureLookup(
        table_name="catalog.schema.nyc_taxi_pickup_features_spn",
        lookup_key="pickup_location_id",
        feature_names=["avg_wait_time", "pickup_demand_score"],
    )
]
# Train on training_set.load_df(), then:
fe.log_model(
    model=trained_model,
    artifact_path="model",
    registered_model_name="catalog.schema.nyc_taxi_model",
    feature_lookups=feature_lookups,
)&lt;/LI-CODE&gt;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 18 Nov 2025 17:01:24 GMT</pubDate>
    <dc:creator>AbhaySingh</dc:creator>
    <dc:date>2025-11-18T17:01:24Z</dc:date>
    <item>
      <title>Databricks Model Serving Endpoint Fails: “_USER not found for feature table”</title>
      <link>https://community.databricks.com/t5/machine-learning/databricks-model-serving-endpoint-fails-user-not-found-for/m-p/139425#M4445</link>
      <description>&lt;P&gt;Hi Databricks Community,&lt;/P&gt;&lt;P&gt;I’m trying to deploy a model serving endpoint that uses Databricks Feature Store (Unity Catalog, online tables).&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;My offline and online feature tables are created and visible in Databricks.&lt;/LI&gt;&lt;LI&gt;The model is logged with FeatureEngineeringClient.log_model and feature lookups added.&lt;/LI&gt;&lt;LI&gt;Training and batch inference works fine (these are using the offline feature tables).&lt;/LI&gt;&lt;LI&gt;When I deploy the model serving endpoint, it fails with the following error:&lt;/LI&gt;&lt;/UL&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;"Exception: Internal error: _USER not found for feature table catalog.schema.nyc_taxi_pickup_features_spn."&lt;BR /&gt;&lt;BR /&gt;Error logs from Databricks Serving UI (redacted):&lt;BR /&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;ENDPOINT_UPDATE_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;Endpoint update failed for endpoint `featurestores-endpoint-spn`, config version 1.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;SERVED_ENTITY_SERVICE_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;featurestores-model-12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;Served entity creation failed for served entity `featurestores-model-12`, config version 1. Error message: Model server failed to load the model. Please see service logs for more information.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;SERVED_ENTITY_SERVICE_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;Served entity `featurestores-model-12` entered DEPLOYMENT_FAILED state: Failed to load the model. Exit code 1.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;SERVED_ENTITY_SERVICE_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;Served entity `featurestores-model-12` entered DEPLOYMENT_CREATING state: Deploying&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;SERVED_ENTITY_SERVICE_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;Served entity `featurestores-model-12` entered DEPLOYMENT_CREATING state: Provisioning resources&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;SERVED_ENTITY_CREATION_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;featurestores-model-12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;Served entity created for served entity `featurestores-model-12`, config version 1.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;ENDPOINT_UPDATE_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;featurestores-model-12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;System role `***********************` created successfully for Online Feature Store `mlops-feature-store-instance-spn`.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;ENDPOINT_UPDATE_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;featurestores-model-12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;System service principal creation with ID `***************************` succeeded for served entity `featurestores-model-12`, config version 1.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;SERVED_ENTITY_CREATION_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;featurestores-model-12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;Linked with Databricks Online Store table: catalog.schema.nyc_taxi_dropoff_features_spn_online&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;SERVED_ENTITY_CREATION_EVENT&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;featurestores-model-12&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN class=""&gt;Linked with Databricks Online Store table: catalog.schema.int.nyc_taxi_pickup_features_spn_online&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;Full stack trace excerpt:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;BR /&gt;File ".../databricks/feature_store/mlflow_model.py", line 161, in __init__&lt;BR /&gt;self.ft_to_lookup_client = self._create_lookup_clients(self.ft_metadata)&lt;BR /&gt;File ".../databricks/feature_store/online_lookup_client.py", line 207, in _generate_lookup_engine&lt;BR /&gt;creds = load_credentials_from_env(first_online_feature_table)&lt;BR /&gt;File ".../databricks/feature_store/online_lookup_client.py", line 102, in get_env_var&lt;BR /&gt;raise Exception(&lt;BR /&gt;Exception: Internal error: _USER not found for feature table catalog.schema.nyc_taxi_pickup_features_spn.&lt;/DIV&gt;&lt;P&gt;&lt;STRONG&gt;Environment:&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;databricks-sdk==0.62&lt;/LI&gt;&lt;LI&gt;databricks-feature-engineering==0.13&lt;/LI&gt;&lt;LI&gt;mlflow==3.0.1&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;How I logged the model:&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;In my training notebook&amp;nbsp;I used&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;fe.log_model&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;with the correct&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;FeatureLookup&lt;SPAN&gt;&amp;nbsp;to log the model&lt;/SPAN&gt;.&lt;/LI&gt;&lt;LI&gt;The model is registered in Unity Catalog and the feature metadata appears correct.&lt;/LI&gt;&lt;/UL&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;STRONG&gt;What I’ve tried:&lt;/STRONG&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;UL&gt;&lt;LI&gt;I create the online tables in a notebook using&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;FeatureEngineeringClient.publish_table.&lt;/LI&gt;&lt;LI&gt;I deploy the endpoint using the Python SDK (WorkspaceClient).&lt;/LI&gt;&lt;LI&gt;I do not know where to get the required credentials (user, password, host, etc.) for the online feature store, nor how to set them as environment variables for the endpoint. Do I need to do this manually?&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;Questions:&lt;BR /&gt;&lt;/STRONG&gt;How is it possible to use the Online feature tables in a model trained and logged with the FeatureEngineeringClient?&lt;BR /&gt;What is this _USER suffix parameter that is required and why was it not packaged properly be the FeatureEngineeringClient? I'm running the processes from pipeline so the service principal is the creator and thus the owner of both the model, offline and online feature tables, why is the automatic lookup not working?&lt;/P&gt;&lt;P&gt;Any help or guidance would be greatly appreciated!&lt;/P&gt;</description>
      <pubDate>Mon, 17 Nov 2025 18:19:59 GMT</pubDate>
      <guid>https://community.databricks.com/t5/machine-learning/databricks-model-serving-endpoint-fails-user-not-found-for/m-p/139425#M4445</guid>
      <dc:creator>peternagy</dc:creator>
      <dc:date>2025-11-17T18:19:59Z</dc:date>
    </item>
    <item>
      <title>Re: Databricks Model Serving Endpoint Fails: “_USER not found for feature table”</title>
      <link>https://community.databricks.com/t5/machine-learning/databricks-model-serving-endpoint-fails-user-not-found-for/m-p/139553#M4449</link>
      <description>&lt;H3 class="_7uu25p0 qt3gz9c _7pq7t612 heading3 _7uu25p1"&gt;Root cause in plain English&lt;/H3&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;The lookup client is trying to read SQL-style credentials like PREFIX_USER/PREFIX_PASSWORD for a third‑party online store and the “prefix” is empty, so it searches for “_USER” and fails. That auth scheme applies only to third‑party stores; Databricks Online Feature Store (Lakebase) does not require USER/PASSWORD/HOST env vars for serving.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;H3 class="_7uu25p0 qt3gz9c _7pq7t612 heading3 _7uu25p1"&gt;Resolve in 6 steps&lt;/H3&gt;
&lt;P class="qt3gz91 paragraph"&gt;1) Use the Databricks Online Feature Store path end‑to‑end&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Make sure your feature tables are published to a Databricks Online Feature Store (Lakebase) via FeatureEngineeringClient.publish_table and that the online tables are AVAILABLE in UC. Don’t pass SQL OnlineStoreSpec or secret prefixes; just use DatabricksOnlineStore and let Databricks manage auth.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;2) Confirm platform and client versions&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Use DBR 16.4 LTS ML (or Serverless) for notebooks/jobs that publish tables and log the model, and install databricks-feature-engineering &amp;gt;= 0.13.0 in those workflows. This is the required stack for Online Feature Stores and automatic lookup.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;If your model was logged on older clients/runtimes, re‑log it with the current databricks-feature-engineering so the serving image uses the modern lookup client (databricks-feature-lookup) and understands Lakebase metadata correctly.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;3) Re‑publish feature tables correctly (if in doubt, redo)&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Before publishing: ensure primary key exists, PK columns are NOT NULL, and CDF is enabled on the offline table.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;Publish with DatabricksOnlineStore (no secrets/host/user/password). Wait for the online table status to be AVAILABLE in UC.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;4) Re‑log and redeploy the model for automatic lookup&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Log via FeatureEngineeringClient.log_model with your FeatureLookup definitions. Models logged this way automatically track lineage and perform feature lookups from online stores at inference; no extra credentials are needed for Databricks Online Feature Store.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;5) Remove third‑party store credentials and env vars&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;On the serving endpoint, remove environment variables intended for SQL stores (for example, any PREFIX_USER/PREFIX_PASSWORD, LAKEBASE_USER/LAKEBASE_PASSWORD). These are documented for third‑party stores and will misroute the lookup client; Lakebase uses OAuth transparently and does not need them.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;6) Validate endpoint permissions for the auto service principal&lt;/P&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Model Serving creates its own system service principal to query your online tables. Ensure it has USE CATALOG, USE SCHEMA, and SELECT on the online tables’ catalog/schema. Databricks grants these automatically in most cases; if your governance is stricter, verify and grant them explicitly.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;
&lt;H3 class="_7uu25p0 qt3gz9c _7pq7t612 heading3 _7uu25p1"&gt;Quick diagnostic checklist&lt;/H3&gt;
&lt;UL class="qt3gz97 qt3gz92"&gt;
&lt;LI class="qt3gz9a"&gt;Online tables show AVAILABLE in UC, created by publish_table to a DatabricksOnlineStore.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;No SQL-store secrets/prefix env vars are present on the endpoint; nothing like PREFIX_USER/PASSWORD or LAKEBASE_USER/PASSWORD is set.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;Model version was logged with FeatureEngineeringClient.log_model on a recent FE client/runtime; not a legacy Workspace Feature Store artifact.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI class="qt3gz9a"&gt;The endpoint’s auto service principal has catalog/schema/table access needed to read the online tables.
&lt;DIV class="_7pq7t614 _7pq7t6cl wrz27r2 wrz27r0"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="qt3gz91 paragraph"&gt;If you apply the steps above, the “_USER not found” path will no longer be taken and the endpoint will use OAuth-based access to Lakebase online tables automatically.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;# DBR 16.4 LTS ML (or serverless) + databricks-feature-engineering &amp;gt;= 0.13.0
from databricks.feature_engineering import FeatureEngineeringClient, FeatureLookup
from databricks.ml_features.entities.online_store import DatabricksOnlineStore

fe = FeatureEngineeringClient()

# Ensure offline table has PK + CDF, then publish to Lakebase
online_store = fe.get_online_store(name="my-online-store")
fe.publish_table(
    online_store=online_store,
    source_table_name="catalog.schema.nyc_taxi_pickup_features_spn",
    online_table_name="catalog.schema.nyc_taxi_pickup_features_spn_online",
)

# Log model with feature lookups for automatic online serving
feature_lookups = [
    FeatureLookup(
        table_name="catalog.schema.nyc_taxi_pickup_features_spn",
        lookup_key="pickup_location_id",
        feature_names=["avg_wait_time", "pickup_demand_score"],
    )
]
# Train on training_set.load_df(), then:
fe.log_model(
    model=trained_model,
    artifact_path="model",
    registered_model_name="catalog.schema.nyc_taxi_model",
    feature_lookups=feature_lookups,
)&lt;/LI-CODE&gt;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 18 Nov 2025 17:01:24 GMT</pubDate>
      <guid>https://community.databricks.com/t5/machine-learning/databricks-model-serving-endpoint-fails-user-not-found-for/m-p/139553#M4449</guid>
      <dc:creator>AbhaySingh</dc:creator>
      <dc:date>2025-11-18T17:01:24Z</dc:date>
    </item>
    <item>
      <title>Re: Databricks Model Serving Endpoint Fails: “_USER not found for feature table”</title>
      <link>https://community.databricks.com/t5/machine-learning/databricks-model-serving-endpoint-fails-user-not-found-for/m-p/139662#M4450</link>
      <description>&lt;P&gt;Thanks for the reply It is very useful and comprehensive.&lt;BR /&gt;&lt;BR /&gt;I managed to find another solution to the problem so I wanted to share some additional details on this topic:&lt;BR /&gt;I was using 15.4 LTS ML Runtime, this could have caused the problem - I did not switch to 16.4 since that might have other breaking changes on other parts of my project.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;My solution was: I realized that in the container created by Databricks for the serving endpoint behind the scenes it installs a package 'databricks-feature-lookup==1.*' inside the container and for my usecase it defaulted to version 1.4 which is an older version. Instead for the automatic authentication to Online tables to work&amp;nbsp;'databricks-feature-lookup==1.9' is required. -&amp;gt; I have not found any documentation that mentioned this dependency so I wanted to share this - it might be useful to mention this somewhere in the docs as it was a bit hidden and hard to debug.&lt;BR /&gt;&lt;BR /&gt;By packaging the model with this dependency fixed inside the FeatureEngineeringClient.log_model() we can ensure that the right version of this package gets installed inside the serving-endpoint's docker and we won't get the auth error again.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;fe.&lt;/SPAN&gt;&lt;SPAN&gt;log_model&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;model&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;model,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;artifact_path&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;"model_packaged"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;flavor&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;mlflow.lightgbm,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;training_set&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;training_set,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;registered_model_name&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;model_name,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;pip_requirements&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;"databricks-feature-lookup==1.9.0"&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 19 Nov 2025 11:38:11 GMT</pubDate>
      <guid>https://community.databricks.com/t5/machine-learning/databricks-model-serving-endpoint-fails-user-not-found-for/m-p/139662#M4450</guid>
      <dc:creator>peternagy</dc:creator>
      <dc:date>2025-11-19T11:38:11Z</dc:date>
    </item>
  </channel>
</rss>

