PHPList Queue Stalls!

I’m using 3.6.14 on a system with AlmaLinux 9.3 installed, latest stable releases of Mariadb 10.x and PHP 8.2.

This script has worked fine for several months.

Suddenly, this past weekend, an email message to about 1,200 subscribers (which has worked before) stalled. Process the queue doesn’t process the queue. Suspending and resuming queue doesn’t work. Suspending and sending a different message doesn’t work.

I can send individual test messages, but processing the queue doesn’t.

Is there a way to empty the queue and start over?

Or fix the queue?

Peace,
Gene

@GeneSteinberg Look on the Event Log page for any problems reported.

You can stop sending by suspending all of the active campaigns.

Where’s the event log?

I suspended the active items, but that doesn’t allow me to start a new one and have it sent.

Peace,
Gene

Again, Event Log doesn’t show any errors.

Same problem.

I need a solution please.

Peace,
Gene

@GeneSteinberg

Try enabling verbose output, by adding this line, or changing if it already exists, in the config.php file. Then process the queue to send a campaign. The Event Log page will have more-detailed output that might show why phplist is not sending.

define('VERBOSE', 1);

Also, please explain exactly what happens and what is logged when you process the queue with at least one active campaign.

It is defined.

The message I see is:

You have 1 campaign(S) in the queue, ready for processing

That’s always there, even when I try to process the queue.

The Event Log shows nothing for the time period during which I tried to run this queue.

Peace,
Gene

You should have at least lines similar to this in the event log

One campaign to process.
Processing has started,

I guess that phplist might be failing for some reason. There might be a php error log file in the admin directory which may help, but otherwise I think you will need to raise the problem with whoever administers your system.

No error file in Admin.

Send the queue

Processing queued campaigns

There’s Stop processing display.

But nothing gets processed.

As to admin help, that’s me.

Peace,
Gene

So any ideas what to do next? We need to send another newsletter by Sat.

Peace,
Gene

@GeneSteinberg Try enabling php error reporting by editing file admin/init.php. Change line 9 to

error_reporting(-1);

Also, are you processing the queue through the admin interface in a browser? Try using the command line on the server, if you have access. Depending on whereabouts php is installed the command will be simlar to

/usr/local/bin/php /path/to/phplist/admin/index.php -p processqueue

Or create a cron job to process the queue and capture the output, similar to this

/usr/local/bin/php /path/to/phplist/admin/index.php -p processqueue >/path/to/home/processqueue.log 2>&1

With error reporting enabled that might show what is failing.

You can get paid-for support, see Paid Support | Open Source newsletter software | phpList.org Note that I am one of those people listed.

This is a Plesk server.

Alas:

-bash: /usr/local/bin/php: No such file or directory

Where do I look?

Peace,
Gene

Found the location of PHP specified by Plesk:

/opt/plesk/php/8.2/bin/php /var/www/vhosts/theparacast.com/lists/admin/index.php -p processqueue >/var/www/vhosts/theparacast.com/processqueue.log 2>&1

But the log reports: Could not open input file: /var/www/vhosts/theparacast.com/lists/admin/index.php

@GeneSteinberg Is there somewhere in plesk where you can verify that is the correct location of the web site?

There might need to be /httpdocs after vhosts/theparacast.com

Yes, thanks.

So I get this now:

phpList - phpList version 3.6.14 (c) 2000-2024 phpList Ltd, https://www.phplist.com
phpList - A process for this page is already running and it was still alive 0 seconds ago
phpList - Running commandline, quitting. We’ll find out what to do in the next run.

So evidently that process has stalled, so I can resume the queue or start a new one.

So how do we do that. Locate a stalled process? What?

Peace,
Gene

One more thing: The problem originally occurred on another server before Plesk failed.

All the data including the databases were copied and/or imported to a new server.

Everything else works fine. This problem persists, so is there something in the database that’s triggering this problem?

Peace,
Gene

@GeneSteinberg

phpList - phpList version 3.6.14 (c) 2000-2024 phpList Ltd, https://www.phplist.com
phpList - A process for this page is already running and it was still alive 0 seconds ago
phpList - Running commandline, quitting. We’ll find out what to do in the next run.

This should clear itself after 10 minutes but you can clear it straightaway by deleting all rows from the phplist_sendprocess table in the database.

But this does confirm that the process is failing for some reason.

In phpmyadmin, do a check of all the tables in the database. There might be something wrong, maybe with the sendprocess table.

That may be it.

I cleared the table.

Suspended ongoing campaigns, and marked them as sent.

Sent a few messages to our test mailing list, and everything worked.

Sounds promising. But I’ll check when I do the next campaign this weekend.

Meantime, what do you recommend for a medium-sized dedicated server in terms of the mailqueue settings?

Thanks.

Peace,
Gene