CDbException error on sending multiple campaigns

Discussion in 'Common issues' started by mailmole, May 16, 2019.

  1. mailmole

    mailmole Member

    Joined:
    Aug 8, 2017
    Messages:
    115
    Likes Received:
    5
    S.E:
    2019-09-13 16:13:27
    L.T:
    Regular
    L.C:
    2
    @twisted1919 I had a look and found we're not the only ones who've had issues with PCTNL. It seems like something is really wrong either with this function or the way mailwizz works on different servers. It would be at least helpful if you could share information as for proper implementation and what kind of a server is ideal for running mailwizz.

    By the way, I noticed another pattern. Whenever I start the campaigns, some have the Processing status and others have the Sending status. They almost never change. The Processing keep processing and the Sending keep sending.

    But, in the delivery logs, it is only the Processing that are sending the emails. The Sending campaigns are absent in the delivery logs.
     
    Last edited: Jun 9, 2019
  2. twisted1919

    twisted1919 Administrator Staff Member

    Joined:
    Dec 27, 2014
    Messages:
    10,111
    Likes Received:
    2,349
    The implementation in mailwizz is pretty straight forward, i know it's used at large scale without issues, but if there are problems with it, i am more than eager to take a look and fix if there's any issue. This is also the reason why i always say the settings is the only difference.
    I can give you a 100% discount for https://www.roboset.io/services/mailwizz-vps-install and based on that we can see if the issue is the same under that setup or not.
    As i said, i am really into fixing any issue here, if there's any, so count me in ;)

    That's expected, the sending status just notifies the console command that the campaign is ready to be picked up for processing.
    Only processing campaigns actually send emails.
     
  3. mailmole

    mailmole Member

    Joined:
    Aug 8, 2017
    Messages:
    115
    Likes Received:
    5
    S.E:
    2019-09-13 16:13:27
    L.T:
    Regular
    L.C:
    2
    @twisted1919 Thanks so much for getting back to us and for your help! :)

    Yesterday, I kept trying multiple things. I even went as far as to update my php and edit the php.ini in etc/php/7.2/apache2 where I commented out "disable pcntl." But the issue remained.

    Finally, I decided to turn off PCNTL and see what would happen. I was surprised to see that the campaigns started sending simultaneously and in the equal order. This is what I would expect to happen with PCNTL on. But, when I switched it off, it finally started working.

    Do you have any thoughts on why this solved the issue?

    On top of that, there's now a new issue. One of the campaigns is now sending duplicate emails. I double checked and the list had only unique contacts. Any idea why is this happening and how to fix it?
     
  4. twisted1919

    twisted1919 Administrator Staff Member

    Joined:
    Dec 27, 2014
    Messages:
    10,111
    Likes Received:
    2,349
    It didn't :)
    Most likely your campaigns are picked up by different send-campaign instances, which is just normal.

    We had an issue with dupes in the past, but it should be fixed just fine in latest version.
    Try to pause sending and empty the apps/common/runtime/mutex folder then start sending again.
     
  5. mailmole

    mailmole Member

    Joined:
    Aug 8, 2017
    Messages:
    115
    Likes Received:
    5
    S.E:
    2019-09-13 16:13:27
    L.T:
    Regular
    L.C:
    2
    Sorry, I am not sure I entirely understand what you mean here. Can you elaborate on it? Maybe, with an example? That would be really helpful!

    I am on v 1.7.5 which should be the latest one. I will try your suggestion when the issue comes up again.
     
  6. twisted1919

    twisted1919 Administrator Staff Member

    Joined:
    Dec 27, 2014
    Messages:
    10,111
    Likes Received:
    2,349
    Okay, first it's https://kb.mailwizz.com/articles/un...ery-settings-and-how-they-impact-performance/
    Secondly, let's assume you're to send 10 campaigns, all ready for sending. And your settings only process 5 campaigns at once.
    The cron job running each minute, runs first minute and will pick first 5 campaigns and will start processing one by one, which means the first campaign is the one sending, other 4 are just waiting.
    When the cron job runs the second minute, will pick other 5 campaigns, but will omit the one which is processing already, and will start sending. What is for second cron job the first campaign, in general, it's the second campaign which is currently processing.
    When the cron job runs the 3rd minute, will again pick 5 campaigns, without the first two which are already processing, and will start sending the first campaign from the new batch of 5, so now we have 3 campaigns processing by 3 cron jobs, all in parallel.
    Do this 10 minutes, and you have all the 10 campaigns processing at the same time, so in parallel, without pcntl.

    Does it make sense now?
     
  7. mailmole

    mailmole Member

    Joined:
    Aug 8, 2017
    Messages:
    115
    Likes Received:
    5
    S.E:
    2019-09-13 16:13:27
    L.T:
    Regular
    L.C:
    2
    @twisted1919 Sorry, but it seems a bit more complicated than it should be. PCTNL just doesn't seem to work. Has there been any new update in PHP in that area?
     
  8. twisted1919

    twisted1919 Administrator Staff Member

    Joined:
    Dec 27, 2014
    Messages:
    10,111
    Likes Received:
    2,349
    Not that i am aware. Do you have access to multiple PHP versions? Maybe switching between the versions will help find one without issues?
    if no avail, then let me know via tickets and we can debug this together.
     

Share This Page