Skip to content

Conversation

@aaxelb
Copy link
Contributor

@aaxelb aaxelb commented Aug 21, 2025

aaxelb and others added 8 commits August 4, 2025 09:33
- use celery's own "retry on result-backend error" logic
    - new env var: `CELERY_RESULT_BACKEND_MAX_RETRIES` (default 17)
    - retry on OperationalError (for connection problems and such)
      and IntegrityError (for conflicting `get_or_create` in overlapping
      transactions, for example)
    - move `die_on_unhandled` decorator to public methods, so it's only
      used after max retries
- port fixes from celery's `BaseKeyValueStoreBackend`:
    - avoid clobbering successes with "worker lost" or other errors
    - avoid error trying to get non-existent task results
- use celery's `BaseBackend` instead of `BaseDictBackend`
  (equivalent for back-compat; let's use the better name)
[ENG-8409] fix: better handle errors in celery result backend
[ENG-8409] fix: use logging config for celery worker, too
@coveralls
Copy link

Coverage Status

coverage: 81.693% (-0.08%) from 81.773%
when pulling 6920e53 on release/25.5.1
into 150997a on main.

@aaxelb
Copy link
Contributor Author

aaxelb commented Oct 30, 2025

closing in favor of #888

@aaxelb aaxelb closed this Oct 30, 2025
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.

3 participants