NewRelease 0.12.3 is out: Engine v0.12.3, Dashboard 0.5.2, Helm 0.12.3, the four SDKs, CLI 0.8.2 and MCP 0.12.3Release 0.12.3 is outSee what's new →

Troubleshooting

This page is for anyone running a Dakera v0.12.0 server who hits an error, a refused start or unexpected results. Each section names the symptom, the likely cause and the fix. Start with the health endpoint:

curl http://localhost:3000/health
# {"service":"dakera","status":"healthy","version":"0.12.3","unreadable_records":0,"corrupt_records":0,"degraded":[],"config_warnings":[]}

/health lists degraded components and config_warnings, and embed_migration progress while the post-upgrade re-embed runs. Use /health/live for liveness and /health/ready for readiness. Every field is described in Operations.

Server not starting

Check the container logs first: docker logs dakera --tail 50. Common causes:

503 while the server starts

The port answers while models download or load. /health/live returns 200. /health/ready returns 503 with "starting": true, a reason (what is loading) and downloads (per-file progress); /health returns 503 with "status": "starting", reason and downloads. Both carry Retry-After: 5, and every other request gets 503 with Retry-After: 5. Wait for /health/ready. A Docker or Kubernetes liveness probe pointed at /health should move to /health/live, with a start period long enough for a model download.

403, 413, 400 and gRPC errors after upgrading

Error codes and states

Every error body is JSON: {"error", "code", "status"}, plus details where there is more to say and resource on a 404.

Reading /health

Authentication errors (401)

Authenticated requests need Authorization: Bearer <key> or X-API-Key: <key>. The authentication layer answers {"error": "authentication_error", "message", "code", "status"}, and code says why: AUTHENTICATION_REQUIRED (no key), INVALID_API_KEY or API_KEY_EXPIRED. A 403 is INSUFFICIENT_SCOPE (with details such as required: admin, actual: read) or NAMESPACE_ACCESS_DENIED.

No memories returned from recall

Keyword search or short recalls return nothing after upgrading

After upgrading a deployment with data from v0.11.108 to v0.12.0, POST /v1/namespaces/<ns>/fulltext/search returns no hits and short keyword-style recalls return no memories, although the memories are stored. The full-text indexes built by v0.11 without stemming were kept as built, so a query word that differs from a stored one only by inflection (release / released) finds nothing.

From v0.12.1 there is no step. At startup every full-text index built with another analyzer than the configured one is re-analysed in the background, one namespace at a time, while it keeps serving (stem variants of a query term match meanwhile); a restart resumes, and each cluster node does its own. The log says Full-text index re-analysed under the configured analyzer for each one. An index holding documents that exist only in the index, or agent memories that cannot be opened at that moment, keeps its analyzer (logged).

On v0.12.0, rebuild them once with a global admin key (this still works on v0.12.1):

curl -X POST https://<your-dakera>/admin/fulltext/reindex \
  -H "x-api-key: <global admin key>" -H "content-type: application/json" \
  -d '{"rebuild": true}'

Omit namespace to cover every agent memory namespace, or add "namespace": "<ns>" for one. Only derived search indexes are rebuilt; memories are untouched. Afterwards, a keyword search with a common word returns hits. Compose and Kubernetes forms are in Upgrading to v0.12.

Slow requests

Measured figures and a measurement recipe are in Performance.

Connection refused

MCP server not connecting

Embedding and model failures

Docker networking

# Test connectivity between containers
docker exec my-app-container curl -s http://dakera:3000/health

Rate limiting (429 Too Many Requests)

Storage and data issues

# Read a namespace's memory policy (decay, TTL, deduplication, rate limits)
curl http://localhost:3000/v1/namespaces/my-namespace/memory_policy \
  -H "Authorization: Bearer $DAKERA_API_KEY"

API key issues

Cluster issues

Details: High availability.

Knowledge graph has no entities

Backup and restore issues

TLS

Dakera does not terminate TLS, so it has no certificate settings. Certificate errors come from the reverse proxy or load balancer in front of it: check the proxy's certificate, and point clients at the proxy's HTTPS address (Security, Deployment).

Getting help

If these steps do not resolve the issue:

Issue resolved? Check what's next

Once you're running smoothly, read about decay and ranking in the concepts guide, or join the waitlist for Dakera Cloud.

Core Concepts → Join Cloud Waitlist →
Stay sharp on agent memory
Benchmark results, SDK releases, and production patterns. Under 500 words per issue.
✓ You're in. First issue lands soon — watch for Dakera in your inbox.