Fixing the 'Another Update is Currently in Progress' Error in WordPress

beginner📝 WordPress2026-06-04| WordPress 4.5+, MySQL/MariaDB, Linux (Ubuntu/CentOS), or Windows (XAMPP/WAMP)

Error Message

Another update is currently in progress.
#wordpress#update#database#maintenance

Why is your update stuck?

You clicked 'Update Now,' the screen flickered, and then everything froze. Perhaps your Wi-Fi dropped for a split second or your server hit its 30-second processing limit. Now, you're greeted by a stubborn message: Another update is currently in progress. Even after waiting 20 minutes, the message won't budge. You're stuck in maintenance limbo.

The Logic Behind the Lock

Think of this error as a safety latch. WordPress prevents multiple updates from running simultaneously to avoid database corruption or a broken site. When an update starts, the system adds a record called core_updater.lock to your wp_options table. Normally, WordPress deletes this row automatically the moment the update finishes. However, if the process crashes or times out, the record stays behind. WordPress sees it, assumes an update is still active, and blocks all new attempts.

Solution 1: Manual Database Cleanup

Getting under the hood to delete the lock manually is the most reliable fix. You can do this through the terminal or a web interface like phpMyAdmin.

Option A: Using the MySQL Command Line

If you have SSH access, this is the fastest route. Log into your database and run a quick delete query.

# Access MySQL
mysql -u your_username -p

# Switch to your site's database
USE your_wordpress_db;

# Confirm the lock exists
SELECT * FROM wp_options WHERE option_name = 'core_updater.lock';

# Clear the lock
DELETE FROM wp_options WHERE option_name = 'core_updater.lock';

Pro tip: Don't forget to swap wp_ with your custom prefix (like site77_) if you changed it during installation for security.

Option B: Using phpMyAdmin

  • Open phpMyAdmin from your hosting dashboard (cPanel, Plesk, etc.).
  • Select your WordPress database from the list on the left.
  • Click the SQL tab at the top of the screen.
  • Paste this command and click Go:

DELETE FROM wp_options WHERE option_name = 'core_updater.lock';

  

## Solution 2: The WP-CLI Shortcut
Prefer the terminal? If you have WP-CLI installed, you can bypass raw SQL entirely. This command identifies and deletes the option in one go.

Head to your WordPress root folder

cd /var/www/html

Wipe the lock option

wp option delete core_updater.lock


If it works, you’ll see: `Success: Deleted 'core_updater.lock' option.`

## Solution 3: Using a Plugin (No Code Required)
If touching the database makes you nervous, let a plugin handle it. The 'Fix Another Update In Progress' plugin was built for this exact scenario.

  - Go to **Plugins > Add New**.
  - Search for "Fix Another Update In Progress."
  - Install and activate it.
  - Visit **Settings > Fix Another Update In Progress**.
  - If it detects a lock, click the button to clear it.
  - Delete the plugin once you're done to keep your site lean.

## Verification: Back to Business
Once the lock is gone, head back to **Dashboard > Updates**. The error message should be replaced by the standard update buttons. Try running your update again. If the error returns immediately, your server is likely hitting a `max_execution_time` limit, causing the update to fail and re-lock the database every time.

## How to Stop Future Timeouts
Most shared hosts cap PHP tasks at 30 or 60 seconds. Large core updates often need more time to unzip and move files. To prevent this from happening again, increase your execution limit in your `.htaccess` or `php.ini` file:

Add this to .htaccess

php_value max_execution_time 300

Or update your php.ini

max_execution_time = 300


Setting this to 300 seconds (5 minutes) gives WordPress plenty of breathing room to finish even the heaviest updates.

Related Error Notes