Why does the execution of jobs in Odoo take longer than expected, causing delays in job processing?

Why does the execution of jobs in Odoo take longer than expected, causing delays in job processing?

Reasons for slow job processing

There are multiple reasons for slow job processing. Often, several factors contribute simultaneously:

1. E-commerce store API limitations

  • Slowness or rate limits: E-commerce APIs may be slow or have rate limits. For example, Shopify imposes API rate limits based on the Shopify Plan (Shopify Rate Limits).

  • Server resource issues: Slow performance can stem from inadequate server resources such as insufficient RAM, outdated CPUs, or network problems.

2. High number of product variants

  • Product templates with many variants require multiple API requests. For instance, to export a template with 20 variants, the connector may send up to 21 API requests depending on mappings and connector settings.

3. Additional entity creation

  • Products export: Exporting products may involve creating additional entities such as attributes, categories, or attribute values. For fully new products, this process may increase the synchronization time.

  • Orders import: Importing orders may require creating additional entities like taxes, products, or delivery methods if these settings are enabled in the connector. This can significantly extend the processing time.

4. Product Fields Mappings

  • If connector configured to synchronize many fields (e.g., custom product fields mappings), it can slow down the import or export process because all fields must be prepared for export/import. Additionally, some fields may require extra API requests, which can further impact job timing.

Recommendations to improve performance

1. Use Odoo as the source of truth.

To optimize synchronization, create and manage records in Odoo and then export them to the e-commerce store. Run initial imports periodically to synchronize newly created records from the store to Odoo.

2. Review connector settings

Review connector settings and adjust them if needed. For instance, real-time stock synchronization may lead to a large number of jobs being created if many products have changes in inventory quantity. Consider optimizing these settings to balance performance and accuracy.

3. Review Odoo logs for errors

Check the Odoo logs for any unusual activity such as excessive API requests, warnings, or errors. If you identify anomalies, report them to our support team.

4. Evaluate store server resources

Consult with your e-commerce store developer to ensure the server has sufficient resources (RAM, CPU). For Shopify users extensively synchronizing data, upgrading the Shopify Plan might be necessary.

Additional considerations

Please note that by default, jobs are executed one-by-one and cannot be processed in parallel. In Odoo.sh projects, it is impossible to change this behavior and run jobs in parallel due to platform limitations. However, on-premise Odoo installations offer options to execute multiple jobs in parallel or split jobs across separate Odoo workers.

Our connectors prioritize jobs to ensure that high-priority tasks are executed as soon as possible. For example, order imports are given higher priority than product exports or imports. This guarantees that critical updates are handled promptly, while background activities like inventory or product data synchronization are executed when no higher-priority tasks are pending.

Contact support

If the above steps do not resolve the issue and job execution speed remains a concern, please contact our support team for further assistance: VentorTech Support.

Related Posts