Skip to content

Tutto per WordPress, lo sviluppo web — e non solo

🔧 Come risolvere l'errore "Another update in progress" in WordPress

🔧 Come risolvere l'errore "Another update in progress" in WordPress

Vai al pannello di amministrazione per aggiornare WordPress all'ultima versione e ti trovi davanti un muro: «Another update is currently in progress». I pulsanti di aggiornamento sono bloccati, nessun timer è in esecuzione e non sai se aspettare o risolvere da solo.

Questo problema è molto diffuso. Il meccanismo integrato di WordPress imposta un core_updater.lock durante gli aggiornamenti automatici del core per evitare che due aggiornamenti si sovrappongano. Il blocco dovrebbe essere rimosso automaticamente dopo 15 minuti. Ma non sempre accade: il database «ricorda» il blocco e lo mantiene per ore o addirittura giorni.

Ecco tre modi per rimuovere il blocco: dal più semplice (un clic) al più veloce (un comando da terminale). Scegli quello più adatto al tuo livello di accesso al sito.

💡 Panoramica rapida:

  • Installa il plugin gratuito Fix Another Update In Progress e premi un pulsante; funziona se hai accesso come amministratore.
  • Trova ed elimina la riga core_updater.lock nella tabella wp_options tramite phpMyAdmin; questo metodo è per chi non riesce ad accedere al pannello di amministrazione.
  • Esegui wp option delete core_updater.lock via WP-CLI; un'opzione immediata per sviluppatori e per chi ha dimestichezza con il terminale.

Perché compare l'errore «Another update is currently in progress»

WordPress si protegge da aggiornamenti paralleli del core. Quando un aggiornamento automatico parte, il sistema crea un record temporaneo con la chiave core_updater.lock nella tabella wp_options. Finché questa chiave esiste, avviare un altro aggiornamento è impossibile e vedi il messaggio «Another update is currently in progress».

Per come è progettato, il blocco si rimuove automaticamente dopo 15 minuti. In pratica, spesso questo non accade. Le cause più comuni includono l'interruzione del processo di aggiornamento in background per memoria insufficiente sull'hosting, un conflitto con un plugin di caching o la chiusura prematura della scheda del browser durante l'aggiornamento.

Il risultato: il blocco persiste, il pannello aggiornamenti è bloccato. Puoi forzarne il reset in tre modi.

Metodo 1: plugin Fix Another Update In Progress

La strada più sicura è evitare di toccare il database manualmente e lasciare che un plugin affidabile faccia tutto il lavoro per te.

Installa Fix Another Update In Progress dalla directory di WordPress.org. Il plugin è gratuito e fa esattamente una cosa: cerca la chiave core_updater.lock in wp_options e la elimina con un clic su un pulsante.

Dopo l'attivazione, vai su Impostazioni → Fix Another Update In Progress. Se il blocco è attivo, vedrai un avviso e un pulsante:

Pagina delle impostazioni del plugin Fix Another Update In Progress

Clicca «Fix WordPress Update Lock». Il plugin rimuove immediatamente il record dal database e vedrai una conferma:

Messaggio di conferma rimozione blocco aggiornamento

Ora torna su Bacheca → Aggiornamenti; la pagina è di nuovo attiva e WordPress è pronto per l'aggiornamento. Puoi tenere il plugin (non appesantisce il sito) o rimuoverlo fino alla prossima volta.

Un paio di note. Il plugin non viene aggiornato dal 2023 e non è ufficialmente testato con versioni di WordPress successive alla 6.2. In pratica, tuttavia, funziona correttamente fino a WordPress 6.7 perché la struttura della tabella wp_options non è cambiata e la voce core_updater.lock è ancora un semplice record che può essere rimosso con una chiamata standard delete_option. Se preferisci non installare un plugin «con storia», passa ai metodi 2 e 3.

Metodo 2: rimozione manuale del blocco via phpMyAdmin

Quando il pannello di amministrazione non è disponibile (schermata bianca, errore critico) o semplicemente non vuoi installare un plugin aggiuntivo, puoi resettare il blocco direttamente nel database. Ti servirà l'accesso a phpMyAdmin, disponibile in qualsiasi pannello di controllo hosting (cPanel, ISPmanager, Plesk).

Accedi al pannello del tuo hosting, trova la sezione «Database» e apri phpMyAdmin:

Icona di phpMyAdmin nella sezione database del cPanel

Nella colonna di sinistra, seleziona il database del tuo sito WordPress. Trova la tabella wp_options (il prefisso potrebbe essere diverso se lo hai cambiato durante l'installazione) e clicca il pulsante «Sfoglia»:

Pulsante Sfoglia per la tabella wp_options in phpMyAdmin

Apparirà un elenco di righe. Trova la riga con il nome opzione core_updater.lock e clicca il pulsante rosso «Elimina» accanto ad essa:

Eliminazione della riga core_updater.lock dalla tabella wp_options

phpMyAdmin eliminerà la riga. Ora torna al pannello di amministrazione di WordPress; la pagina degli aggiornamenti è sbloccata.

Se la tabella contiene troppe righe per trovare core_updater.lock a vista, usa la funzione di ricerca: clicca la scheda «Cerca» in phpMyAdmin, inserisci core_updater.lock nel campo option_name, clicca «OK» e la riga in questione apparirà.

⚠️ Prima di eliminare qualsiasi cosa in phpMyAdmin, assicurati che l'aggiornamento in background sia effettivamente terminato o fermato. Se il processo è ancora in esecuzione, la rimozione forzata del blocco può causare una sostituzione incompleta dei file del core. Lascia passare 5-10 minuti dopo la comparsa dell'errore, poi procedi.

Metodo 3: reset immediato via WP-CLI

Per chi lavora con il sito tramite terminale, il metodo più veloce è un singolo comando WP-CLI. Apri una console SSH sul server, naviga nella cartella root di WordPress ed esegui:

1wp option delete core_updater.lock

Se il blocco era attivo, vedrai il messaggio Success: Deleted 'core_updater.lock' option.. Fatto; ora puoi avviare l'aggiornamento del core:

1wp core update

Tra l'altro, il comando wp core update ti avviserà autonomamente di un blocco non più valido e ti suggerirà di eliminare prima core_updater.lock. Questo è un comportamento di WP-CLI ufficialmente documentato, non un espediente.

Questo metodo è comodo anche perché può essere automatizzato: aggiungi la pulizia del blocco al tuo script di deploy o a un Cron job per la manutenzione regolare. Ma se non hai mai lavorato con WP-CLI prima d'ora, i metodi 1 e 2 sono sufficienti; risolvono completamente il problema.

Video: tre metodi in 3 minuti

Un breve video mostra tutti e tre i metodi su un sito reale, dalla scoperta dell'errore al clic sul pulsante «Aggiorna»:

⁉️🤔 Domande frequenti

Perché l'errore non scompare dopo 15 minuti come promesso?

Il reset automatico del blocco è pensato per il completamento normale del processo in background. Se l'aggiornamento è stato interrotto (PHP ha esaurito la memoria, il processo di hosting si è bloccato, hai chiuso la scheda), WordPress non riceve mai il segnale di «fatto» e lascia core_updater.lock nel database. Il timer di 15 minuti si basa su WP_Upgrader che chiama wp_schedule_single_event, ma se il Cron sul tuo hosting gira tramite uno scheduler di sistema, l'evento potrebbe non essere mai eseguito e il blocco persiste per giorni. La rimozione manuale è l'unica soluzione garantita.

Devo rimuovere il plugin Fix Another Update In Progress dopo aver risolto l'errore?

Non necessariamente. Il plugin pesa pochi kilobyte, non aggiunge carico sul frontend e non registra hook aggiuntivi. Puoi lasciarlo installato; la prossima volta che un blocco rimane bloccato, la soluzione sarà a un clic di distanza. Ma se il tuo sito ha una policy di «nessun plugin superfluo», eliminalo pure: resettare il blocco via phpMyAdmin o WP-CLI richiede 30 secondi.

Posso prevenire questo errore in futuro?

Non puoi eliminarlo del tutto; è un meccanismo standard di WordPress. Ma tre accorgimenti riducono la probabilità. Non avviare un aggiornamento manuale se vedi una notifica di un aggiornamento automatico in background. Configura il Cron tramite lo scheduler di sistema del server invece di wp-cron.php; questo rimuove la dipendenza dai visitatori. Aumenta il limite di memoria PHP (memory_limit) ad almeno 256M: la memoria insufficiente è la causa più comune di interruzione degli aggiornamenti in background.

Qual è il pericolo di rimuovere forzatamente il blocco durante un aggiornamento attivo?

Se elimini core_updater.lock mentre WordPress sta sostituendo i file del core, ti ritrovi con un'installazione parzialmente aggiornata, metà dei file della nuova versione e metà della vecchia. Nel migliore dei casi, ottieni un errore all'accesso al pannello di amministrazione; nel peggiore, una schermata bianca. Prima di usare uno qualsiasi di questi metodi, attendi 5-10 minuti dopo la comparsa dell'errore. Puoi verificare la presenza di un processo in background tramite il gestore dei processi dell'hosting o eseguendo top/htop via SSH.

Bisogna aver paura di questo errore

«Another update is currently in progress» sembra allarmante, ma tecnicamente è solo una riga nel database. WordPress non è rotto, i tuoi dati sono intatti, il sito funziona; il core ha semplicemente impostato una barriera temporanea.

Per situazioni rapide, prendi il plugin Fix Another Update In Progress: un pulsante, cinque secondi, fatto. Nessun accesso amministratore? phpMyAdmin risolve in un minuto. Lavori da console? wp option delete core_updater.lock e vai avanti. Uno qualsiasi dei tre metodi ripristina il pieno controllo sugli aggiornamenti del tuo sito.