Skip to content

Job Editing

Grant Carthew edited this page Sep 19, 2016 · 14 revisions

Description

One of the most powerful and flexible methods within rethinkdb-job-queue is the Job.update method. It allows you, without restriction, to change any value of a job and save those changes back to the queue database.

This document will give you some examples of how you may use the Job.update method to perform advanced changes to jobs in the queue.

Job Reanimation

This example will show how to reanimate or re-run a job that has finished. I job is considered finished if it has either a completed, cancelled, or terminated status. See the Job Status document for more detail.

To start with, here is a JSON object representing a completed job.

{
  q: [Object],
  dateCreated: 2016-09-19T03:07:44.394Z,
  dateEnable: 2016-09-19T03:12:44.451Z,
  dateFinished: 2016-09-19T03:07:44.469Z,
  dateStarted: 2016-09-19T03:07:44.451Z,
  id: '5127d082-fe7e-4e88-b1de-7093029695c3',
  log:
   [ { date: 2016-09-19T03:07:44.421Z,
       message: 'Job added to the queue',
       queueId: 'WebDev::rjqJobQueueTestJobs:1942:ebc89e54-f7d3-40a1-952a-3bb152d154ce',
       retryCount: 0,
       status: 'waiting',
       type: 'information' },
     { date: 2016-09-19T03:07:44.451Z,
       message: 'Job retrieved and active',
       queueId: 'WebDev::rjqJobQueueTestJobs:1942:ebc89e54-f7d3-40a1-952a-3bb152d154ce',
       retryCount: 0,
       status: 'active',
       type: 'information' },
     { date: 2016-09-19T03:07:44.470Z,
       message: 'The quick brown fox jumped over the lazy dog',
       queueId: 'WebDev::rjqJobQueueTestJobs:1942:ebc89e54-f7d3-40a1-952a-3bb152d154ce',
       retryCount: 0,
       status: 'cancelled',
       type: 'information' } ],
  priority: 'normal',
  progress: 0,
  queueId: 'WebDev::rjqJobQueueTestJobs:1942:ebc89e54-f7d3-40a1-952a-3bb152d154ce',
  retryCount: 0,
  retryDelay: 600000,
  retryMax: 3,
  status: 'cancelled',
  timeout: 300000
}

Main

How It Works

Contributing

API

Queue Methods

Queue Properties

Queue Events

Job Methods

Job Properties

Documentation

Clone this wiki locally