BerriAI/litellm · error · RuntimeError
Failed to mark migration {name} as applied after idempotent
Error message
Failed to mark migration {name} as applied after idempotent recovery. Manual intervention may be required.
Detail: {resolve_err} What it means
RuntimeError raised after an idempotent migration was re-resolved successfully but marking it as applied in the _prisma_migrations ledger failed ('prisma migrate resolve' errored). The migration system state is now inconsistent and needs manual fixing.
Source
Thrown at litellm-proxy-extras/litellm_proxy_extras/utils.py:616
try:
ProxyExtrasDBManager._roll_back_migration(name)
except (
subprocess.CalledProcessError,
subprocess.TimeoutExpired,
):
pass # may already be rolled-back
try:
ProxyExtrasDBManager._resolve_specific_migration(name)
except (
subprocess.CalledProcessError,
subprocess.TimeoutExpired,
) as resolve_err:
# We're already inside the outer
# `except CalledProcessError` handler —
# re-raising CalledProcessError from here
# would escape as itself, bypassing
# proxy_cli.py's `except RuntimeError`.
raise RuntimeError(
f"Failed to mark migration {name} as applied "
f"after idempotent recovery. Manual "
f"intervention may be required.\n\n"
f"Detail: {resolve_err}"
) from resolve_err
continue
raise RuntimeError(
"Database migration failed and cannot be auto-recovered. "
f"Manual intervention required.\n\nPrisma error:\n{stderr}"
) from e
if "P3018" in stderr:
if ProxyExtrasDBManager._is_permission_error(stderr):
raise RuntimeError(
"Database migration failed due to insufficient "
"permissions. Please grant the required privileges "
f"and retry.\n\nPrisma error:\n{stderr}"
) from eView on GitHub (pinned to 77b7c6c40c)
Solutions
- Manually run 'prisma migrate resolve --applied {name}' against the database to fix the migrations ledger.
- Inspect {resolve_err} for why the ledger update failed.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at litellm-proxy-extras/litellm_proxy_extras/utils.py:616 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18).
Data as JSON: /api/errors/dceec433bf192792.
Report an issue: GitHub.