mirror of
https://github.com/discourse/discourse.git
synced 2024-11-26 23:50:11 +08:00
c69bb5d5be
When jobs are enqueued inside a transaction, it's possible that they will be executed before the necessary data is available in the database. This commit ensures all jobs are enqueued in an ActiveRecord after_commit hook. One potential downside here is if the job fails to enqueue, the transaction will no longer be aborted. However, the chance of that happening is reasonably low, and the impact is significantly lower than the current issue where jobs are scheduled before their data is ready. |
||
---|---|---|
.. | ||
concerns | ||
onceoff | ||
regular | ||
scheduled | ||
base.rb |