We recently have seen reports of updates breaking on some of the sites hosted on GoDaddy and a few other smallish hosting providers.
The issue seems to be that some providers use a networked file system that can be extremely slow under load, though usually not from the site itself but from other sites using the same file system (like in shared and managed hosting). Cpanel accounts are similarly limited in file transfer, but that’s largely artificially limited to prevent it from impacting other accounts using managed WordPress.
The update process involves removing old files, unzipping the new plugin, and then copying over the new files to the plugin location. That can easily exceed the 30 second max_execution time or even the 60 second gateway timeout which can’t be increased in the local .user.ini file. It’s usually during the last part of the transfer when the new files are copied. If the file transfer dies when the files are halfway through being copied you can see some very odd effects, but what usually happens is the update fails. We found a couple of items where we could trim a couple of hundred files off the Wordfence plugin and reduce the size of it substantially, which speeds up both the unzip process and the copying process, as well as the removal process for the next update. General resource limitations put in place by the hosting company, like CPU or memory usage limitations, could also be the problem for some hosts but fewer files in the plugin would help with that as well.
This might not fix every case, since if the file system is under high usage updates are likely going to fail no matter what plugin is being updated. Still, we are trying everything we can to ensure updates work even under circumstances we can’t control. The next release should address most cases since we trimmed the number of files down in this one.
Here’s how to address this now.
- Log in to your site via FTP/SSH or any file browser your web host may be providing.
- Locate the folder “wordfence” in /wp-content/plugins
- Rename the /wordfence folder to /wordfence-old
- Go to WordPress Plugins page and install Wordfence. Activate (the new) Wordfence.
As you don’t have the plugin installed anymore the instructions might not help you but I did want anyone else who saw the review to have instructions on how to address the problem should it happen to them.
Tim