forked from CGM_Public/pretix_original
Revert "Make all EventTasks transaction-aware"
This reverts commit 3f7807d242.
This commit is contained in:
@@ -63,17 +63,6 @@ class ProfiledTask(app.Task):
|
|||||||
return super().on_success(retval, task_id, args, kwargs)
|
return super().on_success(retval, task_id, args, kwargs)
|
||||||
|
|
||||||
|
|
||||||
class TransactionAwareTaskMixin:
|
|
||||||
def apply_async(self, *args, **kwargs):
|
|
||||||
"""
|
|
||||||
Unlike the default task in celery, this task does not return an async
|
|
||||||
result
|
|
||||||
"""
|
|
||||||
transaction.on_commit(
|
|
||||||
lambda: super(TransactionAwareTaskMixin, self).apply_async(*args, **kwargs)
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
class EventTask(app.Task):
|
class EventTask(app.Task):
|
||||||
def __call__(self, *args, **kwargs):
|
def __call__(self, *args, **kwargs):
|
||||||
if 'event_id' in kwargs:
|
if 'event_id' in kwargs:
|
||||||
@@ -99,9 +88,21 @@ class EventTask(app.Task):
|
|||||||
return ret
|
return ret
|
||||||
|
|
||||||
|
|
||||||
class ProfiledEventTask(TransactionAwareTaskMixin, ProfiledTask, EventTask):
|
class ProfiledEventTask(ProfiledTask, EventTask):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
class TransactionAwareTask(TransactionAwareTaskMixin, ProfiledTask):
|
class TransactionAwareTask(ProfiledTask):
|
||||||
pass
|
"""
|
||||||
|
Task class which is aware of django db transactions and only executes tasks
|
||||||
|
after transaction has been committed
|
||||||
|
"""
|
||||||
|
|
||||||
|
def apply_async(self, *args, **kwargs):
|
||||||
|
"""
|
||||||
|
Unlike the default task in celery, this task does not return an async
|
||||||
|
result
|
||||||
|
"""
|
||||||
|
transaction.on_commit(
|
||||||
|
lambda: super(TransactionAwareTask, self).apply_async(*args, **kwargs)
|
||||||
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user