invoke-ai/InvokeAI · error · HTTPException

Error retrieving recall parameters

Error message

Error retrieving recall parameters

What it means

A catch-all handler in the recall_parameters router: any exception raised while loading stored graph-recall parameters is logged and re-raised as an HTTPException with a fixed 500 detail string. The library throws it because the endpoint cannot distinguish (or did not bother to distinguish) storage/query failures from other faults, so all failures collapse into one generic 500 response. The original exception message is only visible in server logs, not in the API response.

Source

Thrown at invokeai/app/api/routers/recall_parameters.py:617

    Returns:
        A dictionary containing all stored recall parameters
    """
    logger = ApiDependencies.invoker.services.logger

    try:
        # Retrieve all recall parameters by iterating through expected keys
        # Since client_state_persistence doesn't have a "get_all" method, we'll
        # return an informative response
        return {
            "status": "success",
            "queue_id": queue_id,
            "note": "Use the frontend to access stored recall parameters, or set specific parameters using POST",
        }

    except Exception as e:
        logger.error(f"Error retrieving recall parameters: {e}")
        raise HTTPException(
            status_code=500,
            detail="Error retrieving recall parameters",
        )

View on GitHub (pinned to 0b6a024f2f)

Solutions

  1. Check the server logs for the line 'Error retrieving recall parameters: {e}' to see the real underlying exception
  2. Verify the InvokeAI database (invokeai.db) is intact and current with the running version; run the app's migration/upgrade path if needed
  3. Confirm services are initialized - retry after a full clean app restart
  4. Reproduce the retrieval directly against the DB/service to isolate the failing record and delete or repair it

Example fix

// before: server log shows the real cause only
logger.error(f"Error retrieving recall parameters: {e}")
raise HTTPException(status_code=500, detail="Error retrieving recall parameters")
// after: surface a safer, more actionable detail
logger.exception("Error retrieving recall parameters")
raise HTTPException(status_code=500, detail=f"Error retrieving recall parameters: {type(e).__name__}")
Defensive patterns

Strategy: try-catch

Validate before calling

// client-side precheck: ensure the service is reachable before calling
const health = await fetch('/api/v1/system/health');
if (!health.ok) throw new Error('InvokeAI service unavailable; skip recall-parameters call');

Type guard

function isRecallParamsOk(v) { return v !== null && typeof v === 'object' && !('detail' in v); }

Try / catch

try {
  const res = await fetch('/api/v1/recall_parameters');
  if (res.status === 500) { const {detail} = await res.json(); console.error('recall params unavailable:', detail); return fallbackParams; }
  return await res.json();
} catch (e) { return fallbackParams; }

Prevention

When it happens

Trigger: Calling GET on the recall parameters endpoint when the backing service (ApiDependencies.invoker.services) throws - e.g. the parameters store/graph service is unavailable, a malformed stored record fails to deserialize, or a database/session error occurs during retrieval.

Common situations: Running InvokeAI with a corrupted or migrated-from-an-older-version SQLite database so stored parameter records fail to load; invoking the endpoint before the app's services are fully initialized; a bug in the underlying service surfaced as a generic 500.

Related errors


AI-assisted analysis of invoke-ai/InvokeAI@0b6a024f2f (2026-08-29). Data as JSON: /api/errors/da0cdbfcf1156821. Report an issue: GitHub.