rake kithe:create_derivatives gets some options for creating Background Activejob #166
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We already had a
kithe:create_derivatives
task with many options for different things you'd want to do for creating derivatives -- but it did it all in the foreground, serially, in a single thread.I had need to instead create many small background jobs (which we can then easily handle on heroku by scaling up workers, to get it done quickly!). And realized small changes to the existing CreateDerivativesJob and the rake task would make that possible.
So do so here.
For the thing we want to do in our app, for instance, we can run (on heroku even)
That will create one BG job per Asset (for all assets!), in the ActiveJob queue
special_jobs
. The job will be queued up for every Asset, but since we said "lazy", it will only actually create thegraphiconly_pdf
derivative if one doesn't already exist, otherwise the job will just exit.