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.

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