diff options
author | Ben Sturmfels <ben@sturm.com.au> | 2021-08-23 12:26:44 +1000 |
---|---|---|
committer | Ben Sturmfels <ben@sturm.com.au> | 2021-08-23 12:46:40 +1000 |
commit | cfe50e6400faa609deef2a583e830519aac25dcd (patch) | |
tree | 465c1def5ea06094b54df128dd3fb45aa50187ec | |
parent | 5d2eec67af6d6a854d44c6a68fb8e383192d1148 (diff) | |
download | mediagoblin-cfe50e6400faa609deef2a583e830519aac25dcd.tar.lz mediagoblin-cfe50e6400faa609deef2a583e830519aac25dcd.tar.xz mediagoblin-cfe50e6400faa609deef2a583e830519aac25dcd.zip |
Fix images being marked as failed after Celery restart [#5608].
Following the video transcoding work included in v0.10.0, uploading an image and
restarting Celery resulted in the image being marked as failed, even after it
had been initially successfully processed.
The issue was that the initial processing task was not being acknowledged by the task queue following the introduction of the
`CELERY_ACKS_LATE` setting. It's not clear why this is the case, but reverting
the setting fixes this issue and doesn't negatively impact video processing.
-rw-r--r-- | docs/source/siteadmin/relnotes.rst | 1 | ||||
-rw-r--r-- | mediagoblin/config_spec.ini | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/docs/source/siteadmin/relnotes.rst b/docs/source/siteadmin/relnotes.rst index 37fe3f7b..03d8db06 100644 --- a/docs/source/siteadmin/relnotes.rst +++ b/docs/source/siteadmin/relnotes.rst @@ -49,6 +49,7 @@ This chapter has important information about our current and previous releases. - Fix test suite on Debian 11 (Ben Sturmfels) - Remove reference to jsonschema.compat no longer available upstream (Marco Pessotto) +- Fix images being marked as failed after Celery restart [#5608] (Ben Sturmfels) 0.11.0 diff --git a/mediagoblin/config_spec.ini b/mediagoblin/config_spec.ini index 8901cefa..9025a436 100644 --- a/mediagoblin/config_spec.ini +++ b/mediagoblin/config_spec.ini @@ -169,7 +169,6 @@ CELERY_EAGER_PROPAGATES_EXCEPTIONS = boolean() CELERY_IGNORE_RESULT = boolean() CELERY_TRACK_STARTED = boolean() CELERY_DISABLE_RATE_LIMITS = boolean() -CELERY_ACKS_LATE = boolean(default=True) CELERY_STORE_ERRORS_EVEN_IF_IGNORED = boolean() CELERY_SEND_TASK_ERROR_EMAILS = boolean() CELERY_SEND_EVENTS = boolean() @@ -179,6 +178,9 @@ CELERY_REDIRECT_STDOUTS = boolean() # known ints CELERYD_CONCURRENCY = integer(default=1) +# Forces workes to only take one task at a time, rather than the default of +# four. This means that long-running processing tasks like videos will be +# completed sooner if you have multiple workers. CELERYD_PREFETCH_MULTIPLIER = integer(default=1) CELERY_AMQP_TASK_RESULT_EXPIRES = integer() CELERY_AMQP_TASK_RESULT_CONNECTION_MAX = integer() |