Changing hosting providers is a pretty significant change.
How many users do you have in your WordPress database? It sounds like a process is timing out trying to retrieve the users from the database.
Just under 6500 users… But we had this many when we were on the last hosting company (BlueHost). Just started running in to this problem with the new host (JustHost). What can I do to test if and what process is timing out? We absolutely LOVE this plugin and would really like to continue using it.
Sorry for the delayed response, been traveling for work right after my vacation.
If you enable DEBUG (Dashboard > Settings > Email Users – look for the debug check box) the Email Users will output some extra information into the page as HTML comments. It will report some information about the database query and watch the memory usage climb which can be an issue with a large number of users. You will have to look at the page source to see it but if your page is timing out it should give us an idea where it is happening with the extra comments in the source HTML.
A while back I did some work with a user who had 15K+ users and I completely restructured how the users were queried to account for large number of users. My own test database has ~8k users in it.
When in debug mode Email Users will not actually send the email, it is intercepted and some information is displayed on the Dashboard. It allows you to do a bunch of testing without having to worry about actually sending email to your end users.
— Word of caution – this assumes no other plugins do anything with the same PHPMailer hook I am using to interecept the email. I know if you also use the WP Better Emails it sort of “undoes” what Email Users does to intercept the email and mail will actually be sent so to be certain, disable all other plugins except Email Users while you are debugging this problem.
Still having a problem with this. Do you have any recomendations as to what the my.cnf file should look like?
I’m not sure how to bring up what your talking about as far as debug goes.
I have no idea what the “my.cnf” file is, it isn’t something I am familiar with.
Debug mode is mostly used for development (for me) but is also useful for isolating why something isn’t working (which is your case). To enable debug mode, you visit the plugin settings page (Dashboard > Settings > Email Users) and look for the Debug Mode checkbox – it is toward the bottom of the main settings section.
Once debug is enabled, you use the plugin as you normally would. Send an email to a group of recipients and when you hit the “Send” button, instead of sending the email, a whole bunch of information (basically a dump of the PHPMailer object) will be displayed on the Dashboard to the top of the page. With 6500 users there will be a lot of data.
The other thing you can look at before hitting the Send button is the page source for the page where you select your recipients. Are you using “Send to Users” or “Send to Groups”? If you’re using “Send to Users” there will be HTML comments in the page source (View Page Source in your browser) which will report some information about the query used to collect the users from the database.
Out of curiosity, why did you change hosting providers? It looks like their system isn’t as capable of handling your WordPress site as your old one was.
We changed providers just to consolidate our websites all to one server. Most of our sites were already on JustHost. So we moved to it.
I am completely unable to even load the Send to Group(s) page. So I cant even debug that. I get an error that says it couldn’t process this derivative.
I’m at a loss as to how to proceed here.
Is there any content all from the Dashboard page when you try to load the “Send to Groups” page?
Most hosting providers provide some sort of access to your site’s error log. In a lot of cases you have to enable it because it is typically turned off by default. But the web server’s log would also be a useful thing to look at.
If PHP is running out of memory, which is what I suspect is happening, it would likely be logged in the web servers error log file.