Skip to content

Add 30-minute timeout for MSA server PENDING state - #5

Merged
Jacoberts merged 3 commits into
mainfrom
claude/debug-error-message-5ijkC
Dec 27, 2025
Merged

Add 30-minute timeout for MSA server PENDING state#5
Jacoberts merged 3 commits into
mainfrom
claude/debug-error-message-5ijkC

Conversation

@Jacoberts

Copy link
Copy Markdown
Collaborator

The ColabFold MSA server (api.colabfold.com) can rate-limit or drop jobs,
causing them to stay in PENDING state forever. Previously, jobs would wait
12+ hours before the RQ job timeout killed them.

This change:

  • Detects when MSA jobs are stuck in PENDING state
  • Fails fast after 30 minutes with a clear error message
  • Advises users to retry (which typically resolves the issue)

Root cause: The MSA server appears to expire/deprioritize old job IDs
rather than processing them when rate limits free up. Fresh job
submissions (from restart) get new IDs that work.

See: sokrypton/ColabFold#606

The ColabFold MSA server (api.colabfold.com) can rate-limit or drop jobs,
causing them to stay in PENDING state forever. Previously, jobs would wait
12+ hours before the RQ job timeout killed them.

This change:
- Detects when MSA jobs are stuck in PENDING state
- Fails fast after 30 minutes with a clear error message
- Advises users to retry (which typically resolves the issue)

Root cause: The MSA server appears to expire/deprioritize old job IDs
rather than processing them when rate limits free up. Fresh job
submissions (from restart) get new IDs that work.

See: sokrypton/ColabFold#606
Problem: MSA server jobs can get stuck in PENDING state forever when
the ColabFold server drops or deprioritizes jobs. The client keeps
polling the same dead job ID indefinitely (PENDING is a "sink" - it
never triggers resubmission like RATELIMIT does).

Solution:
1. Detect PENDING state stuck for >10 minutes and fail fast with
   TimeoutError instead of waiting 12+ hours for RQ job timeout
2. Configure RQ to retry boltz jobs up to 3 times (1min, 2min, 5min
   intervals) - each retry gets a fresh MSA job ID
3. Upgrade Boltz from 2.1.1 to 2.2.1 (adds auth support, bug fixes)

This allows automatic recovery from dropped MSA jobs without manual
intervention.

See: sokrypton/ColabFold#606
@Jacoberts
Jacoberts force-pushed the claude/debug-error-message-5ijkC branch from 8cab7d2 to 95e1b9c Compare December 27, 2025 18:42
@Jacoberts
Jacoberts merged commit 6f04559 into main Dec 27, 2025
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants