WooCommerce è stato spedito versione 5.5.2 come seguito all’aggiornamento di sicurezza forzato che ha corretto una vulnerabilità di SQL Injection la scorsa settimana. La vulnerabilità ha interessato le versioni dalla 3.3 alla 5.5 del WooCommerce plugin, così come le versioni da 2.5 a 5.5 del Blocchi WooCommerce plug-in di funzionalità. Il team ha creato una patch per più di 90 versioni, che è stata inviata come aggiornamento di sicurezza forzato da WordPress.org, a causa della potenziale gravità dell’impatto per milioni di installazioni di WooCommerce.
Poco dopo il lancio dell’aggiornamento automatico, molti proprietari di negozi hanno iniziato a segnalare seri problemi di prestazioni sia su WordPress.org che su GitHub. Alcuni utenti segnalati arresti anomali del database dopo aver ricevuto la patch di sicurezza automatica in 5.5.1. Un utente ha riportato una query dolorosamente lenta e infinita che era “paralizzante per le nostre operazioni”, con rapporti simili su GitHub di questa stessa query “causando l’arresto dell’intero server.”
Quelli con un gran numero di prodotti nei loro database sono stati colpiti più frequentemente. “Eseguiamo un DB abbastanza grande: 17k prodotti”, un utente disse. “Questo è stato un incubo”.
I proprietari di negozi interessati da questo problema hanno fatto ricorso al downgrade alle versioni precedenti su raccomandazione di WooCommerce. Hanno condiviso soluzioni temporanee per disabilitare la query mentre WooCommerce ha esaminato il problema. Il problema è stato segnalato così frequentemente che è diventato una priorità per il team risolverlo.
Una settimana fa, lo sviluppatore WooCommerce Adrian Duffell segnalato indietro che avevano determinato la causa era duplice:
- Una lenta query SQL utilizzata per recuperare i prodotti in esaurimento. Questo SQL è stato in WooCommerce per una serie di versioni.
- Una richiesta API REST, che esegue questa query SQL, viene chiamata più frequentemente in WooCommerce 5.5 rispetto alle versioni precedenti.
Una combinazione di questi fattori causava il peggioramento delle prestazioni del server quando gli utenti eseguivano l’aggiornamento a WooCommerce 5.5. Una correzione è stata rilasciata in WooCommerce Admin 2.4.4 tre giorni fa e la correzione è stata aggiunta anche al core oggi in 5.5.2. Si consiglia agli utenti che hanno messo in atto soluzioni alternative di rimuoverle dopo l’aggiornamento all’ultima versione.