Module: Legion::Extensions::Tasker::Runners::TaskManager
- Includes:
- Helpers::Lex, Helpers::Task
- Defined in:
- lib/legion/extensions/tasker/runners/task_manager.rb
Instance Method Summary collapse
-
#expire_queued(age: 1, limit: 10) ⇒ Object
rubocop:disable Lint/UnusedMethodArgument.
- #purge_old(age: 31, limit: 100, status: 'task.completed', **_opts) ⇒ Object
Instance Method Details
#expire_queued(age: 1, limit: 10) ⇒ Object
rubocop:disable Lint/UnusedMethodArgument
16 17 18 19 20 |
# File 'lib/legion/extensions/tasker/runners/task_manager.rb', line 16 def expire_queued(age: 1, limit: 10, **) # rubocop:disable Lint/UnusedMethodArgument dataset = Legion::Data::Model::Task # rubocop:disable Lint/UselessAssignment .where(status: ['conditioner.queued', 'transformer.queued', 'task.queued']) .limit(limit) end |
#purge_old(age: 31, limit: 100, status: 'task.completed', **_opts) ⇒ Object
6 7 8 9 10 11 12 13 14 |
# File 'lib/legion/extensions/tasker/runners/task_manager.rb', line 6 def purge_old(age: 31, limit: 100, status: 'task.completed', **_opts) log.debug("purging old completed tasks with an age > #{age} days, limit: #{limit}") dataset = Legion::Data::Model::Task .where(Sequel.lit("created <= DATE_SUB(SYSDATE(), INTERVAL #{age} DAY)")) .limit(limit) dataset.where(status: status) unless ['*', nil, ''].include? status log.debug "Deleting #{dataset.count} records" if dataset.count.positive? dataset&.delete end |