TycheSoftwares / custom-order-numbers-for-woocommerce

This repository is for the Custom Order Numbers for WooCommerce- Lite
2 stars 2 forks source link

The site is getting slower when our plugin is activated. #70

Closed Chetna1510 closed 3 years ago

Chetna1510 commented 3 years ago

Describe the bug When the plugin is active the site works multiple times slower. This is what the client is saying: WP Engine called me today to discuss the load spikes we were having on the server until we reverted to the older plugin, so obviously a huge load issue with the plugin itself.

To Reproduce Steps to reproduce the behavior: I can replicate this issue on the client's site only. Follow the steps here - https://screencast-o-matic.com/watch/cri3IFVi4LQ Setup: https://prnt.sc/1enlzi5 Enable order tracking by custom number setting is enabled.

Additional context https://tychesoftwares.freshdesk.com/a/tickets/31120

You can check the query using Query Monitor plugin.

Chetna1510 commented 3 years ago

One more client has reported the site loading issue: https://wordpress.org/support/topic/extremely-slow-admin-dashboard-since-update/

In addition, he informed us that:

Here’s what the query monitor is showing. This process is taking ~6 seconds to happen

SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts LEFT JOIN wp_postmeta ON (wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key = '_alg_wc_custom_order_number' ) LEFT JOIN wp_postmeta AS mt1 ON (wp_posts.ID = mt1.post_id AND mt1.meta_key = '_alg_wc_custom_order_number_meta_key_updated' ) WHERE 1=1 AND ( wp_postmeta.post_id IS NULL AND mt1.post_id IS NULL ) AND wp_posts.post_type = 'shop_order' AND ((wp_posts.post_status <> 'trash' AND wp_posts.post_status <> 'auto-draft' AND wp_posts.post_status <> 'wc-wfocu-pri-order')) GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 0, 1 /* From [sitename.com/wp-admin/plugins.php] in [/nas/content/live/m***g/wp-content/plugins/custom-order-numbers-for-woocommerce/includes/class-alg-wc-custom-order-numbers-core.php:327] */