mem0ai/mem0 · error · Error

Databricks endpoint status did not report a state during ini

Error message

Databricks endpoint status did not report a state during initialization.

What it means

During initialization the store polls GET /endpoints/{name} until state is ONLINE. The state is read from endpoint_status.state or a top-level state. If the response shape is unrecognized — state is not a string — the store cannot distinguish provisioning from failure and throws rather than looping blindly.

Source

Thrown at mem0-ts/src/oss/src/vector_stores/databricks.ts:1219

    }
  }

  private async waitForEndpointReadiness(): Promise<void> {
    const deadline = Date.now() + this.syncTimeoutMs;

    while (Date.now() <= deadline) {
      const response = await this.httpClient.get(
        `/endpoints/${encodeURIComponent(this.endpointName)}`,
      );
      const state =
        response?.data?.endpoint_status?.state ?? response?.data?.state;

      if (state === "ONLINE") {
        return;
      }

      if (typeof state !== "string") {
        throw new Error(
          "Databricks endpoint status did not report a state during initialization.",
        );
      }

      if (this.syncPollIntervalMs > 0) {
        await new Promise((resolve) =>
          setTimeout(resolve, this.syncPollIntervalMs),
        );
      }
    }

    throw new Error(
      `Timed out waiting for Databricks endpoint ${this.endpointName} to become ready.`,
    );
  }

  private async waitForIndexReadiness(): Promise<void> {
    const deadline = Date.now() + this.syncTimeoutMs;

View on GitHub (pinned to 001c235229)

Solutions

  1. Verify endpointName matches an existing Vector Search endpoint in the workspace UI
  2. Confirm Vector Search is enabled for the workspace/region
  3. Inspect the raw GET /api/2.0/vector-search/endpoints/{name} response to see what shape is actually returned (proxy interference, error envelope)
Defensive patterns

Strategy: retry

Validate before calling

const resp = await httpClient.get(`/api/2.0/vector-search/endpoints/${encodeURIComponent(endpointName)}`);
const state = resp?.data?.endpoint_status?.state ?? resp?.data?.state;
if (typeof state !== 'string') throw new Error('Unexpected endpoint status payload — check endpoint name and workspace');

Try / catch

try { await store.initialize(); } catch (e) { if (e instanceof Error && e.message.includes('did not report a state')) { /* verify endpointName exists and Vector Search is enabled, then retry */ } throw e; }

Prevention

When it happens

Trigger: The Vector Search API returns an unexpected payload: 200 with an error envelope, a truncated body, a proxy/SSO HTML page, or an API version whose response omits endpoint_status.state — during the initial wait for the endpoint to come online.

Common situations: Endpoint name typo so the GET returns a not-found envelope with no state; workspace where Vector Search is disabled; a gateway rewriting responses; the endpoint being deleted while initialize() polls.

Related errors


AI-assisted analysis of mem0ai/mem0@001c235229 (2026-08-15). Data as JSON: /api/errors/b8a1cc49cede6f1b. Report an issue: GitHub.