Job Queue Batch

Job Queue Batch
Technical Name:
queue_job_batch
Version:
11.0
License:
Author:
Creu Blanca

Job Queue Batch

Beta License: AGPL-3 OCA/queue Translate me on Weblate Try me on Runbot

This addon adds an a grouper for queue jobs.

It allows to show your jobs in a batched form in order to know better the results.

Example:

from odoo import models, fields, api
from odoo.addons.queue_job.job import job

class MyModel(models.Model):
   _name = 'my.model'

   @api.multi
   @job
   def my_method(self, a, k=None):
       _logger.info('executed with a: %s and k: %s', a, k)


class MyOtherModel(models.Model):
    _name = 'my.other.model'

    @api.multi
    def button_do_stuff(self):
        batch = self.env['queue.job.batch'].get_new_batch('Group')
        for i in range(1, 100):
            self.env['my.model'].with_context(
                job_batch=batch
            ).with_delay().my_method('a', k=i)
        batch.enqueue()

In the snippet of code above, when we call button_do_stuff, 100 jobs capturing the method and arguments will be postponed. It will be executed as soon as the Jobrunner has a free bucket, which can be instantaneous if no other job is running.

Once all the jobs have finished, the grouper will be marked as finished.

Table of contents

Usage

You can manage your batch jobs from the Systray. A new button will be shown with your currently executing job batches and the recently finished job groups.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Creu Blanca

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/queue project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.