Send rate suddenly coming to a crawl 3.2.6

Folks, I don’t know what is going on. Only 48 hours ago I was sending via SES API at 10k messages per hour. No changes to the config.php and today, it has slowed to 40/hr. I restarted all application servers, restarted the database and even checked via MySql that there were no database errors, and Amazon SES is not limiting the send rate. I don’t know what is limiting the application. Any insight would be appreciated. Thanks.

How are you connecting to SES: smtp or api?

Are you domain throttling? If so, that might slow it down.

Hi Dan, I’m connecting via API

Here’s something I found with how PHP List is connecting to my database. I think something is corrupt. Here are the following things I’ve done and I still only have 30 msg/hr

  • curl is installed and working
  1. both SMTP and API have the same result
  2. database has been updated to innoDB from MyISAM
  3. updated to 3.2.7 w/ a clean directory

If there is a field to look for in the database that someone can help me look at, please point me in that direction. Such as which table the config.php settings are populated into. Thanks.

it looks like your phplist_usermessage table was not converted to innodb. If it was, you’ll need to restart your mysql server

I took that shot before conversion. Good point Dan, I’ll do a restart. Restart and reboot the same thing? I have start/restart from the MySql workbench, but from AWS, you can reboot a server.

Update: I don’t know what died, but I’m completely puzzled. There’s something horribly wrong in how the application is managing the database. I’ve A/B tested against another SMTP and it isn’t SES that’s the problem. But something has got to be hosed in the database. Where do I start looking? Do I make a new DB and just import everything back in as tables?

If you can restart the server, that will re-initiailaze everything.
Or, you can restart mysqld, and that will just restart the mysql server.

Once it’s restarted, turn off your phplist, (website), and analyze all of the tables, and repair anything needing repair.
You would also want to modify any tables that are still myisam, converting them to innodb.

One of the differences between innodb and myisam is that myisam locks the whole table whiile modifying data, and innodb only locks a row in the table, the one that is being edited.

So, something did get hosed in the server. My solution was to export all the table data and only import the table data into a new database instance. I connected PHPList to that and it fixed the send rate issue. There needs to be a utility in PHPL to clear the dbase columns that are old or hung up.

BTW, I can’t seem to find the page where you can see your config.php in the front-end UI, can you jog my memory?

So, it has hosed itself once again at the database level. When you process the queue, you get “unable to get lock for processing.”

If I’m live in the database, what can I delete to reset the database sessions? Can I delete all items in the columns or indexes tab? I don’t want to have to import export constantly just to get it going again