BerriAI/litellm · error · HTTPException
Key already has an active {data.direction} shadow eval job (
Error message
Key already has an active {data.direction} shadow eval job (started concurrently). Stop it first. What it means
Error "Key already has an active {data.direction} shadow eval job (started concurrently). Stop it first." thrown in BerriAI/litellm.
Source
Thrown at litellm/proxy/management_endpoints/auto_router_endpoints.py:710
now: Final = datetime.now(timezone.utc)
try:
job: Final = await prisma_client.db.litellm_shadowevaljob.create(
data={ # mutable-ok: Prisma payload
"api_key_id": data.api_key_id,
"router_name": data.router_name,
"direction": data.direction,
"baseline_model": data.baseline_model,
"judge_model": data.judge_model,
"shadow_percentage": data.shadow_percentage,
"max_turns": data.max_turns,
"created_by": user_api_key_dict.user_id,
"ends_at": now + timedelta(days=data.duration_days),
}
)
except Exception as e:
if not _is_unique_violation(e):
raise
raise HTTPException(
status_code=409,
detail=(
f"Key already has an active {data.direction} shadow eval job (started concurrently). Stop it first."
),
) from e
return ShadowEvalJobResponse.model_validate(job, from_attributes=True).model_copy(
update={"key_alias": key_row.key_alias, "key_name": key_row.key_name} # mutable-ok: pydantic update payload
)
@router.get(
"/auto_router/shadow_eval",
tags=("auto router",),
dependencies=(Depends(user_api_key_auth),),
response_model=list[ShadowEvalJobResponse],
)
async def list_shadow_eval_jobs(
user_api_key_dict: Annotated[UserAPIKeyAuth, Depends(user_api_key_auth)],View on GitHub (pinned to 77b7c6c40c)
Solutions
- Stop the concurrently started shadow eval job first.
- Retry creating the job after the active one is stopped.
When it happens
Trigger: Thrown at litellm/proxy/management_endpoints/auto_router_endpoints.py:710 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/f60b43536a148b42.
Report an issue: GitHub.