Job Queue Stuck

Discussion in 'Server Operation' started by Gerry F, Mar 23, 2024.

  1. Gerry F

    Gerry F New Member

    Last night I noticed a red bubble with 1 in it at the top (the job queue indicator)...
    Got up this morning and it's still there, but now it's at 3.
    The Job Queue indicated 2 items waiting to be sent to the second server. A dns insert and a dns update are 'stuck'
    So I went to server2 and I see this error started after 8pm last night
    Fri Mar 22 08:26:01 PM EDT 2024 PHP Fatal error: Uncaught Error: Call to undefined function mb_detect_encoding() in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php:529
    Fri Mar 22 08:26:01 PM EDT 2024 Stack trace:
    Fri Mar 22 08:26:01 PM EDT 2024 #0 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(181): db->escape()
    Fri Mar 22 08:26:01 PM EDT 2024 #1 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(300): db->_build_query_string()
    Fri Mar 22 08:26:01 PM EDT 2024 #2 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(339): db->_query()
    Fri Mar 22 08:26:01 PM EDT 2024 #3 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(395): db->query()
    Fri Mar 22 08:26:01 PM EDT 2024 #4 /usr/local/ispconfig/server/lib/classes/cronjob.inc.php(106): db->queryAllRecords()
    Fri Mar 22 08:26:01 PM EDT 2024 #5 /usr/local/ispconfig/server/lib/classes/cron.d/100-mailbox_stats.inc.php(43): cronjob->onPrepare()
    Fri Mar 22 08:26:01 PM EDT 2024 #6 /usr/local/ispconfig/server/lib/classes/cronjob.inc.php(87): cronjob_mailbox_stats->onPrepare()
    Fri Mar 22 08:26:01 PM EDT 2024 #7 /usr/local/ispconfig/server/cron.php(116): cronjob->run()
    Fri Mar 22 08:26:01 PM EDT 2024 #8 {main}
    Fri Mar 22 08:26:01 PM EDT 2024 thrown in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 529
    Fri Mar 22 08:26:01 PM EDT 2024 finished server.php.

    I have 3 full servers, and I ran
    apt-get update && apt-get upgrade
    on them all around this time. It did a bunch of PHP updates.

    I don't believe server1 or server3 has any issues.

    On server2 I wanted to "Set the OS default PHP back to the correct version" so I ran these commands:
    update-alternatives --config php
    update-alternatives --config php-cgi
    update-alternatives --config php-fpm.sock
    and selected the default option on each.
    Any suggestions?
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    run the command:

    php --version

    on the affected server and post the result. Also I need to know which Linux distribution and version you use.
     
  3. Gerry F

    Gerry F New Member

    Interesting...

    PHP 8.3.4 (cli) (built: Mar 20 2024 17:21:36) (NTS)
    Copyright (c) The PHP Group
    Zend Engine v4.3.4, Copyright (c) Zend Technologies
    with Zend OPcache v8.3.4, Copyright (c), by Zend Technologies

    I believe this should be using 8.2, correct? So the commands I ran earlier, instead of selecting the defaults, I need to specify the option for 8.2... correct?

    I have Debian 12
    No LSB modules are available.
    Distributor ID: Debian
    Description: Debian GNU/Linux 12 (bookworm)
    Release: 12
    Codename: bookworm
     
  4. till

    till Super Moderator Staff Member ISPConfig Developer

    Yes. There is also a chapter on that topic here:

    https://forum.howtoforge.com/threads/please-read-before-posting.58408/

    The sury repo tends to change default PHP version on its own when a new PHP major version is available, that's why it is important to set a specific version when installing multiple PHP versions. And what's even worse with sury is that it installs a new PHP version but not the same modules as the other versions use and that's why in your case the php mbstring module is missing.
     
    Gerry F likes this.
  5. Gerry F

    Gerry F New Member

    I don't know why I didn't see the 8.3 version and 8.2 versions last night... but running these commands:

    update-alternatives --config php
    update-alternatives --config php-cgi
    update-alternatives --config php-fpm.sock

    and selecting PHP 8.2 has resolved my issues. I really should have caught this myself (doh!).
    For anyone reading, I found this link very useful for installing multiple version of PHP on your server:
    https://www.howtoforge.com/ispconfig-php-debian/#-set-the-os-default-php-back-to-the-correct-version

    And cheers to ISPCONFIG!! I have left "managed vps" servers with WHM/Cpanel and have set up my own servers (3) with ISPCONFIG and really enjoy working with it (and saving money!). I have been playing with ISPConfig for about 3 years, but never on a machine that was fully connected to the internet. Firing up a VPS to tinker is extremely affordable today and you can 'rent' one for a month if you want. In my case, that month went so well I now have 3 unmanaged VPS's and have a fourth to use for backups (by the way urbackup has been working great!).

    And thanks to till! You are such a great helper here. I really appreciate your feed back.
     
    Th0m and till like this.

Share This Page