Do changes to MAILQUEUE settings in config.php have effect on a campaign that is mid-way thru?

I recently upgraded from version 2.10.18 to version 3.2.5.
My list size is about 100k.
I used to do it in 2.10.18 using a cron job on lynx to request the webpage for processqueue, once per hour. The 100k job would complete in about 5 hours.

These are the relevant MAILQUEUE settings that I used for years on my 2.10.18 :


I had started the campaign (my first campaign using 3.x), using only the simple included config.php (nothing from the _extended) But I found that the cron retrieval of the processqueue page only seemed to prod the queue along for 1 minute. When I used the “PROCESS QUEUE” button on the admin webpage page, I would have the spinning PHPLIST logo, and spinning Chrome tab icon, indefinitely it seems, and I would receive one email “Maillist Processing info” every minute like this:

[Wed 15 Jun 2016 23:57] [] Sending in batches of 10000 emails
[Wed 15 Jun 2016 23:58] [] Processed 112 out of 127238
[Wed 15 Jun 2016 23:58] [] Script stage: 5
[Wed 15 Jun 2016 23:58] [] 112 messages sent in 60.06 seconds
(6713 msgs/hr)

So I thought this must be the result of default settings when MAILQUEUE values are not mentioned in config.php, so I pasted in these:


But no improvement.
I clicked SUSPEND on the active campaign via admin webpage, then I clicked REQUEUE.
But still no change…
Is this expected?
Is there something special I need to do to get the updated config.php take effect for the active campaign?
If not, why do I still get “Maillist Processing info” emails every minute? And there is mention of 10,000 sized batch in those emails.

Oh could this have anything to do with use of CLOUDFLARE?

Oh, I did notice the stock config.php file is missing the closing php tag, but I saw some posts saying it is recommended to leave that missing, so I did.

Thank you!

After upgrading you should keep your original config file, it is still valid. But then create a new config file based on config_extended.php but named config.php by comparing with your original config file and transferring any custom settings.

But your batch settings are, in effect, no settings. They tell phplist to send as fast as it can without stopping.
There are a few changes in the way that process queue runs in the browser. As you have noticed it is limited to one minute elapsed, then should reload itself.

Your cron job command is no longer valid. Ideally you should use a php command line cron job as it is the most reliable approach. If you cannot do that then look at the remote queue processing[]=secret , which is similar to your lynx cron job, but will also be limited to one minutes processing.

Hi duncanc,

Thank you for the reply, my cron lynx jobs were once per hour, and yes I did make the small modification to use the &secret parameter, according to that page, before the campaign began.
I was just unaware of the one minute processing limit change, coming from 2.10.x to 3.2.5 .

I understand from you that since I should be using php command line cron job, instead of webpage-request style, so as to avoid the one-minute-limit.

If there is no other easy way around the one-minute limit, then I will be finding out about the php command method.
Here I check whether I have cli or cgi…

[root@news /]# php -v
PHP 5.4.45 (cli) (built: Jan 12 2016 18:09:07)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
    with the ionCube PHP Loader (enabled) + Intrusion Protection from (unconfigured) v5.0.12, Copyright (c) 2002-2015, by ionCube Ltd.

Is this the definitive guide for my situation now?

@kaon That version of php is the one that you want. The is now outdated. Some of the information will still be correct but you should look at

There are examples of cron jobs there and also in other topics in this forum.

Thank you.
I have added the $commandline_users = array("root","user1"); into my config.php.

May I know if it will work just as well without using a wrapping executable script file?
I mean, would it be OK if I just put the whole command into cron?

Here’s what I’ve done:

cron command to run as root once per hour:
/usr/bin/php /var/www/mypath/lists/admin/index.php -pprocessqueue -c/var/www/mypath/lists/config/config.php >/tmp/pqueue.out.txt

cron command to run as root once per day:
/usr/bin/php /var/www/mypath/lists/admin/index.php -pprocessbounces -c/var/www/mypath/lists/config/config.php >/tmp/pbounces.out.txt

The manual says it is fine to call -pprocessqueue “too often”, even while an earlier call is in progress. So I suppose we can ignore the advice written at the second example at , by jotazzu, that said

“Make sure that enough time has passed and that the previous job has finished before scheduling the next.”

Those command look ok, and there is not usually a problem with running processqueue frequently.