Sunday, February 4, 2024
1 change · 17.0
Resolved issues and error corrections
This fix prevents unintended scheduled jobs (crons) from being activated during system neutralization due to naming conflicts in external identifiers. Previously, if a custom external identifier happened to match the naming pattern of the autovacuum job, it could cause unwanted system tasks to run. Now only the essential autovacuum job remains active while all other crons are properly deactivated.
Original PR description
### The root of the issue: The external identifiers are not guaranteed to be unique on their `name` alone, the unique constraint is on the `name` and on the `module` fields. ### Before this commit: If a user or third party app were for example to create an external identifier "project.autovacuum_job" and point it to an `ir.cron` record, then that `ir.cron` would also be kept activated, which could cause major issue if it makes calls to external systems, sends mail, etc... ### After this commit: All the crons are deactivated by the neutralisation, except for the autovacuum Forward-Port-Of: odoo/odoo#152145 Forward-Port-Of: odoo/odoo#150212