Hi, I am runninng ISPConfig a while now, but the jobs that should be handled do not get processed. In the manual I read that a lock is put in /usr/local/ispcoonfig/server/temp I found the file called .ispconfig_lock in the system log it tells me to delete this, and I did but still the que does not get processed. There also is a file called .ispconfig_cron_lock do I need to delte this too? The .ispconfig_lock just pops up again after a few minutes. What should i do, run server.sh? I ran server.sh and it produces an error, it looks like in db_mysql.inc.php no database-credentials are filled out, ispconfig however is working as a control panel. I am confused . . . regards, Jan
Thanks for the fast reply. The server itself is running normal, websites show up, also those with a mysql-db. The ISPConfig screen ist there with the red notificatioon indicating that 11 jobs must be processed. In the systemprotokol is Remove Lock: /usr/local/ispconfig/server/temp/.ispconfig_lock I did remove it but the file is then created new. In the crontab I commented out the line with "server.sh" and ran it by hand like is written in the manual. The output is: 23.03.2019-18:34 - WARNING - There is already a lockfile set, but no process running with this pid (26905). Continuing. PHP Fatal error: Uncaught Error: Call to undefined function mysqli_init() in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php:83 Stack trace: #0 /usr/local/ispconfig/server/lib/app.inc.php(47): db->__construct() #1 /usr/local/ispconfig/server/lib/app.inc.php(216): app->__construct() #2 /usr/local/ispconfig/server/server.php(51): require('/usr/local/ispc...') #3 {main} thrown in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 83 PHP Fatal error: Uncaught Error: Call to undefined function mysqli_init() in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php:83 Stack trace: #0 /usr/local/ispconfig/server/lib/app.inc.php(47): db->__construct() #1 /usr/local/ispconfig/server/lib/app.inc.php(216): app->__construct() #2 /usr/local/ispconfig/security/check.php(32): require('/usr/local/ispc...') #3 {main} thrown in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 83 I checked db_mysql.inc.php where no DB-credentials are filled out. The version of ISPConfig is 3.1 dev. I hope you can give me a hint on how to solve the problem, I have started to like ISPConfig a lot. Regards, Jan
Those call to undefined function errors usually mean some PHP module is not installed. Find out which module contains mysqli_init(), then install it.
Thank you Taleman, I think I now know what caused this. I became a notofication every day "package php-apcu is hold back". Them I ran apt-get distupgrade and apt-get update to install it on march 16th, since then I have this problem. I will first seach for the module you refer to. Regards, Jan
It is running again. I installed PHP-mysql and after the next errors I installe PHP-mbstring. Then server.sh ran as expected. Now it is all functioning again. After the upgrade I have PHP 7.3, in ISPConfig it still says PHP 7.2 but I guess thst is just the name. Thanks, regards, Jan
Oh me.. I get this same error today! Don't know what happened but all works - all hosts, databases up, ispconfig admin interface up - but I also got red circle with 3 pending website settings.. I tried to loop and locate any host and see if it's used and I found one site that uses UpdraftPlus - Backup/Restore plugin, but I've disabled it and that didn't helped If someone has idea - that would be of much help, thx, Kres
Like this thread shows, call to undefined function comes from not installed php module. The version of PHP running in that screenshot in #7 does not have the module. Find which version of PHP it is, then check if php-mysql is installed for that version.
Hey @Taleman thanks for fast replay.. but I don't know where does code comes from? guess it comes from some of sites plugins or themes.. but is there any way to isolate or find out where script breaks? I've taken look at isp_config log and it's empty
Your screenshot shows where the code comes from, it is line 83 of that file. But that is not the issue, or if it is you should more explicitly define what you are asking. This thread is about stopped job queue in ISPConfig. You seem to have this ailment, and to fix it install package php-mysql. Since you have not revealed what operating system You are running, I can not give advice on how to install things on that OS. Since you seem to be using ISPConfig, you should have started with this: https://forum.howtoforge.com/threads/please-read-before-posting.58408/
Hey @Taleman sorry for not beeing more specific and so vague .. Today I had time to investigate it and I've succeded to pinpoint what issue was.. Recently on my Ubuntu 22 (default php version 8.1) php got update and it installed v8.2 (I guess by periodic apt updata/upgrade) and it somehow become active version. I've opened server.sh and seen it calls `/usr/bin/php` so I've passed -v and to my surprise it returned v8.2 Code: root@srv2:/# /usr/bin/php -v PHP 8.2.5 (cli) (built: Apr 14 2023 04:27:02) (NTS) Copyright (c) The PHP Group Zend Engine v4.2.5, Copyright (c) Zend Technologies I've set `update-alternatives --config php` it back to v8.1 and now all queues are gone and it works as before ! Thanks - hope it will help someone in same shoes as me
and you will still need to install php8.2-mysql you have the server working again, but any site that uses php8.2 in the future will not be able to connect to mysql.
Just to note that this is why I use monit to monitor default php so in the event an upgrade / update changed it, the default php for that OS will always be restored. Refer to: Monitor OS Default Php And Restore If Changed