Thanks for reaching out.
We have had reports of updates breaking on some of the sites hosted on GoDaddy and a few other small hosting providers.
The issue for GoDaddy is that they 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. GoDaddy 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 WordPress 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 cannot be increased in the local .user.ini file. If it fails, it is usually during the last part of the transfer when the new files are copied where it does. 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. When you try to install the plugin again, you get a message that says “destination folder already exists”.
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 and included them in an update a while back. 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 does help.
While 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. We will continue to improve processes, reduce resource usage, and look for new ways to improve things on our side to make sure that we provide the best security plugin value to you.
I believe in your previous case you mentioned several steps to get the plugin working again. Some of those might not be necessary. Try this instead.
- 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.
Your settings should still be intact since they are stored in the database.
Going forward I would advise turning off the option to Update Wordfence automatically when a new version is released on the Wordfence Dashboard > Global Options page on your site in the General Wordfence Options section. You’ll still be notified when it is time to update but you’ll also be able to watch it happen in real time.
If you have any questions, let us know.
Tim