Hi there,
This error means the database index segment_id_status already exists on one of MailPoet’s tables, so when the v5.32 migration tries to create it again, it runs into a conflict. This can happen if a previous update attempt partially completed.
Here are two options to resolve it, starting with the simplest:
Option A — Re-install the plugin via FTP
Follow these instructions to re-install the plugin via FTP and see if the migration completes.
Option B — Drop the duplicate index manually (if Option A doesn’t help)
You’ll need access to your database via phpMyAdmin (most hosts provide this in your hosting control panel):
- Back up your database first.
- Open phpMyAdmin and select your WordPress database.
- Run this SQL query (adjust the table prefix if yours is different from
wp_):
DROP INDEX segment_id_status ON wp_mailpoet_subscriber_segment;
- Then go back to Plugins, deactivate MailPoet, and reactivate it. The migration should now run successfully and recreate the index properly.
If you’re not comfortable running SQL queries directly, your hosting provider’s support team should be able to help with this — just share the query above with them.
Let us know if either of these resolves it!
As I was already on v5.33, I’ve rolled back with a plugin to v5.31 and then reupdate to v5.33 and all went well.
I hope it means everything is ok now.
Hey @wpkiller,
It’s great to hear everything seems to be working again. Thanks for sharing the steps you’ve take to fix it. This can be useful for other users experiencing similar issues in the future.
I’m marking this thread as resolved, but don’t hesitate to contact us again if you need any assistance.