changeset 8a5a0a781dc6 in trytond:default
details: https://hg.tryton.org/trytond?cmd=changeset;node=8a5a0a781dc6
description:
        Queue trigger action only when there are records

        issue9579
        review315901002
diffstat:

 trytond/ir/trigger.py         |  5 +++--
 trytond/tests/test_trigger.py |  1 -
 2 files changed, 3 insertions(+), 3 deletions(-)

diffs (26 lines):

diff -r 8a292d374daf -r 8a5a0a781dc6 trytond/ir/trigger.py
--- a/trytond/ir/trigger.py     Sat Sep 12 18:26:41 2020 +0200
+++ b/trytond/ir/trigger.py     Sat Sep 12 18:33:30 2020 +0200
@@ -190,8 +190,9 @@
     def queue_trigger_action(self, records):
         trigger_records = Transaction().trigger_records[self.id]
         ids = set(map(int, records)) - trigger_records
-        self.__class__.__queue__.trigger_action(self, list(ids))
-        trigger_records.update(ids)
+        if ids:
+            self.__class__.__queue__.trigger_action(self, list(ids))
+            trigger_records.update(ids)
 
     def trigger_action(self, ids):
         """
diff -r 8a292d374daf -r 8a5a0a781dc6 trytond/tests/test_trigger.py
--- a/trytond/tests/test_trigger.py     Sat Sep 12 18:26:41 2020 +0200
+++ b/trytond/tests/test_trigger.py     Sat Sep 12 18:33:30 2020 +0200
@@ -29,7 +29,6 @@
         pool = Pool()
         Queue = pool.get('ir.queue')
         transaction = Transaction()
-        self.assertTrue(transaction.tasks)
         while transaction.tasks:
             task = Queue(transaction.tasks.pop())
             task.run()

Reply via email to