LaravelPackages.net
Acme Inc.
Toggle sidebar
therezor/laravel-transactional-jobs

Submit laravel jobs inside transaction. Cancel job after rollback. Proceed after successful commit.

464.209
45
1.1.6
About therezor/laravel-transactional-jobs

therezor/laravel-transactional-jobs is a Laravel package for submit laravel jobs inside transaction. cancel job after rollback. proceed after successful commit.. It currently has 45 GitHub stars and 464.209 downloads on Packagist (latest version 1.1.6). Install it with composer require therezor/laravel-transactional-jobs. Discover more Laravel packages by therezor or browse all Laravel packages to compare alternatives.

Last updated

Laravel transactional jobs

[!NOTE]
Laravel 10 and newer versions natively support transactional job handling without the need for this package.

Problem:

Solution:

By using this package you easily dispatch jobs inside transactions. Cancel job on transaction rollback. Add to queue on transaction committed.

Installation

This package requires PHP 7.1 and Laravel 5.8 or higher. If you are on a PHP version below 7.1 or a Laravel version below 5.8 just use an older version of this package.

  1. Run composer require therezor/laravel-transactional-jobs in your laravel project root folder

  2. Implement TheRezor\TransactionalJobs\Contracts\RunAfterTransaction to jobs that run in the middle of database transactions

<?php

use TheRezor\TransactionalJobs\Contracts\RunAfterTransaction;

class MySuperJob implements ShouldQueue, RunAfterTransaction
{
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
    
    ...
}
Comments