From fac2288f06f1b55d08df5c9800609d1e68401f34 Mon Sep 17 00:00:00 2001 From: Sylvain LE GAL Date: Wed, 27 Oct 2021 10:01:11 +0200 Subject: [PATCH 1/2] [FIX] queue_job : check if queue_job_notify exist in pre-migration script to avoid error when migrating from 10.0 revision --- queue_job/migrations/12.0.1.0.1/post-migration.py | 3 --- queue_job/migrations/12.0.1.0.1/pre-migration.py | 10 ++++++++++ 2 files changed, 10 insertions(+), 3 deletions(-) create mode 100644 queue_job/migrations/12.0.1.0.1/pre-migration.py diff --git a/queue_job/migrations/12.0.1.0.1/post-migration.py b/queue_job/migrations/12.0.1.0.1/post-migration.py index 6781fb563f..01821b55e7 100644 --- a/queue_job/migrations/12.0.1.0.1/post-migration.py +++ b/queue_job/migrations/12.0.1.0.1/post-migration.py @@ -3,7 +3,6 @@ # License LGPL-3 or later (https://www.gnu.org/licenses/lgpl). import odoo -from odoo.addons.queue_job.hooks.post_init_hook import post_init_hook def migrate(cr, version): @@ -17,5 +16,3 @@ def migrate(cr, version): raise_if_not_found=False) if cron_job and cron_job.exists() and cron_job.state != 'code': cron_job.state = 'code' - # Ensure that the queue_job_notify trigger is in place - post_init_hook(cr, None) diff --git a/queue_job/migrations/12.0.1.0.1/pre-migration.py b/queue_job/migrations/12.0.1.0.1/pre-migration.py new file mode 100644 index 0000000000..4d98742340 --- /dev/null +++ b/queue_job/migrations/12.0.1.0.1/pre-migration.py @@ -0,0 +1,10 @@ +# Copyright 2019 Versada UAB +# Copyright 2021 ACSONE SA/NV +# License LGPL-3 or later (https://www.gnu.org/licenses/lgpl). + +from odoo.addons.queue_job.hooks.post_init_hook import post_init_hook + + +def migrate(cr, version): + # Ensure that the queue_job_notify trigger is in place + post_init_hook(cr, None) From 6e162a4f0fdbc0a90ec3be76703ceadb654b4f39 Mon Sep 17 00:00:00 2001 From: Sylvain LE GAL Date: Wed, 27 Oct 2021 16:17:07 +0200 Subject: [PATCH 2/2] [IMP] queue_job : disable triggers before running pre-migration script of 12.0.2.1.0 version --- queue_job/migrations/12.0.2.1.0/pre-migration.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/queue_job/migrations/12.0.2.1.0/pre-migration.py b/queue_job/migrations/12.0.2.1.0/pre-migration.py index 897846fa83..e560d1c29b 100644 --- a/queue_job/migrations/12.0.2.1.0/pre-migration.py +++ b/queue_job/migrations/12.0.2.1.0/pre-migration.py @@ -8,6 +8,12 @@ def migrate(cr, version): + # Disable trigger otherwise the update takes ages. + cr.execute( + """ + ALTER TABLE queue_job DISABLE TRIGGER queue_job_notify; + """ + ) if not column_exists(cr, "queue_job", "records"): cr.execute( """ @@ -26,3 +32,8 @@ def migrate(cr, version): WHERE records IS NULL; """ ) + cr.execute( + """ + ALTER TABLE queue_job ENABLE TRIGGER queue_job_notify; + """ + )