[TrueNAS] Cron.php Won't Run, Weird Database Error

So I just spun up Nextcloud on a TrueNAS Core instance, and it has been working great. As I am putting the final touches on it

php -f /usr/local/www/nextcloud/cron.php

as the www user, this is what the shell spits out.

Doctrine\DBAL\Exception: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [2002] Connection refused in /usr/local/www/nextcloud/lib/private/DB/Connection.php:139
Stack trace:
#0 /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php(1519): OC\DB\Connection->connect()
#1 /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php(797): Doctrine\DBAL\Connection->getWrappedConnection()
#2 /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Query/Expression/ExpressionBuilder.php(320): Doctrine\DBAL\Connection->quote(0, 1)
#3 /usr/local/www/nextcloud/lib/private/DB/QueryBuilder/ExpressionBuilder/ExpressionBuilder.php(422): Doctrine\DBAL\Query\Expression\ExpressionBuilder->literal(0, 1)
#4 /usr/local/www/nextcloud/lib/private/BackgroundJob/JobList.php(342): OC\DB\QueryBuilder\ExpressionBuilder\ExpressionBuilder->literal(0, 1)
#5 /usr/local/www/nextcloud/lib/private/BackgroundJob/JobList.php(330): OC\BackgroundJob\JobList->unlockJob(Object(OCA\Maps\BackgroundJob\AddPhotoJob))
#6 /usr/local/www/nextcloud/cron.php(155): OC\BackgroundJob\JobList->setLastJob(Object(OCA\Maps\BackgroundJob\AddPhotoJob))
#7 {main}
Further Details

Nextcloud version: 24.0.3
Operating system and version (eg, Ubuntu 20.04): TrueNAS-13.0-U1.1
Apache or nginx version (eg, Apache 2.4.25): Apache 2.4.54?
PHP version (eg, 7.4): 7.4?
I am unable to 100% confirm some versions, as indicated by my “?”, but I installed it via the TrueNAS Official Plugin if that helps.

The output of your Nextcloud log in Admin > Logging:

[no app in context] Error: Doctrine\DBAL\Exception: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [2002] Connection refused at <<closure>>

 0. /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php line 1519
    OC\DB\Connection->connect()
 1. /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php line 1041
    Doctrine\DBAL\Connection->getWrappedConnection()
 2. /usr/local/www/nextcloud/lib/private/DB/Connection.php line 261
    Doctrine\DBAL\Connection->executeQuery("SELECT `storage ... )", [3,"andrew"], [1,2], null)
 3. /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php line 345
    OC\DB\Connection->executeQuery("SELECT `storage ... )", [3,"andrew"], [1,2])
 4. /usr/local/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php line 281
    Doctrine\DBAL\Query\QueryBuilder->execute()
 5. /usr/local/www/nextcloud/lib/private/Files/Config/UserMountCache.php line 347
    OC\DB\QueryBuilder\QueryBuilder->execute()
 6. /usr/local/www/nextcloud/lib/private/Files/Node/Root.php line 422
    OC\Files\Config\UserMountCache->getMountsForFileId(711, "andrew")
 7. /usr/local/www/nextcloud/lib/private/Files/Node/LazyUserFolder.php line 67
    OC\Files\Node\Root->getByIdInPath(711, "/andrew/files")
 8. /usr/local/www/nextcloud/apps-pkg/files_sharing/lib/Controller/ShareAPIController.php line 204
    OC\Files\Node\LazyUserFolder->getById(711)
 9. /usr/local/www/nextcloud/apps-pkg/files_sharing/lib/Controller/ShareAPIController.php line 688
    OCA\Files_Sharing\Controller\ShareAPIController->formatShare(OC\Share20\Share {})
10. /usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 225
    OCA\Files_Sharing\Controller\ShareAPIController->createShare("/Pirone Folder", 17, 3, null, "false", "d97Wq285ym", null, "", "", "")
11. /usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 133
    OC\AppFramework\Http\Dispatcher->executeController(OCA\Files_Sharin ... {}, "createShare")
12. /usr/local/www/nextcloud/lib/private/AppFramework/App.php line 172
    OC\AppFramework\Http\Dispatcher->dispatch(OCA\Files_Sharin ... {}, "createShare")
13. /usr/local/www/nextcloud/lib/private/Route/Router.php line 298
    OC\AppFramework\App::main("OCA\\Files_Shar ... r", "createShare", OC\AppFramework\ ... {}, ["ocs.files_shar ... "])
14. /usr/local/www/nextcloud/ocs/v1.php line 62
    OC\Route\Router->match("/ocsapp/apps/fi ... s")
15. /usr/local/www/nextcloud/ocs/v2.php line 23
    require_once("/usr/local/www/nextcloud/ocs/v1.php")

POST /ocs/v2.php/apps/files_sharing/api/v1/shares
from (my ip) by andrew at 2022-08-11T04:25:11+00:00

I am also getting:

[no app in context] Error: Doctrine\DBAL\Exception\ConnectionLost: An exception occurred while executing a query: SQLSTATE[HY000]: General error: 2006 MySQL server has gone away at <<closure>>

 0. /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php line 1780
    Doctrine\DBAL\Driver\API\MySQL\ExceptionConverter->convert(Doctrine\DBAL\Driver\PDO\Exception {}, Doctrine\DBAL\Query {})
 1. /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php line 1719
    Doctrine\DBAL\Connection->handleDriverException(Doctrine\DBAL\Driver\PDO\Exception {}, Doctrine\DBAL\Query {})
 2. /usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Statement.php line 193
    Doctrine\DBAL\Connection->convertExceptionDuringQuery(Doctrine\DBAL\Driver\PDO\Exception {}, "DELETE FROM `oc ... ?", [24756,"Mike"], [1,2])
 3. /usr/local/www/nextcloud/lib/private/DB/PreparedStatement.php line 87
    Doctrine\DBAL\Statement->execute(null)
 4. /usr/local/www/nextcloud/lib/public/AppFramework/Db/Mapper.php line 252
    OC\DB\PreparedStatement->execute()
 5. /usr/local/www/nextcloud/apps/maps/lib/DB/GeophotoMapper.php line 59
    OCP\AppFramework\Db\Mapper->execute("DELETE FROM `*P ... ?", [24756,"Mike"])
 6. /usr/local/www/nextcloud/apps/maps/lib/Service/PhotofilesService.php line 197
    OCA\Maps\DB\GeophotoMapper->deleteByFileIdUserId(24756, "Mike")
 7. /usr/local/www/nextcloud/apps/maps/lib/Hooks/FileHooks.php line 158
    OCA\Maps\Service\PhotofilesService->deleteByFolderIdUserId(711, "Mike")
 8. /usr/local/www/nextcloud/lib/private/legacy/OC_Hook.php line 106
    OCA\Maps\Hooks\FileHooks->preUnShare(["5","folder",71 ... "])
 9. /usr/local/www/nextcloud/lib/private/Share20/LegacyHooks.php line 63
    OC_Hook::emit("OCP\\Share", "pre_unshare", ["5","folder",71 ... "])
10. /usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php line 264
    OC\Share20\LegacyHooks->preUnshare(OC\EventDispatcher\GenericEventWrapper {}, "OCP\\Share::preUnshare", Symfony\Componen ... {})
11. /usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php line 239
    Symfony\Component\EventDispatcher\EventDispatcher->doDispatch([Closure {},Closure {}], "OCP\\Share::preUnshare", OC\EventDispatcher\GenericEventWrapper {})
12. /usr/local/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php line 73
    Symfony\Component\EventDispatcher\EventDispatcher->callListeners([Closure {},Closure {}], "OCP\\Share::preUnshare", OC\EventDispatcher\GenericEventWrapper {})
13. /usr/local/www/nextcloud/lib/private/EventDispatcher/SymfonyAdapter.php line 122
    Symfony\Component\EventDispatcher\EventDispatcher->dispatch(OC\EventDispatcher\GenericEventWrapper {}, "OCP\\Share::preUnshare")
14. /usr/local/www/nextcloud/lib/private/Share20/Manager.php line 1231
    OC\EventDispatcher\SymfonyAdapter->dispatch("OCP\\Share::preUnshare", Symfony\Componen ... {})
15. /usr/local/www/nextcloud/apps-pkg/files_sharing/lib/Controller/ShareAPIController.php line 421
    OC\Share20\Manager->deleteShare(OC\Share20\Share {})
16. /usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 225
    OCA\Files_Sharing\Controller\ShareAPIController->deleteShare("5")
17. /usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 133
    OC\AppFramework\Http\Dispatcher->executeController(OCA\Files_Sharin ... {}, "deleteShare")
18. /usr/local/www/nextcloud/lib/private/AppFramework/App.php line 172
    OC\AppFramework\Http\Dispatcher->dispatch(OCA\Files_Sharin ... {}, "deleteShare")
19. /usr/local/www/nextcloud/lib/private/Route/Router.php line 298
    OC\AppFramework\App::main("OCA\\Files_Shar ... r", "deleteShare", OC\AppFramework\ ... {}, ["5","ocs.files_ ... "])
20. /usr/local/www/nextcloud/ocs/v1.php line 62
    OC\Route\Router->match("/ocsapp/apps/fi ... 5")
21. /usr/local/www/nextcloud/ocs/v2.php line 23
    require_once("/usr/local/www/nextcloud/ocs/v1.php")

DELETE /ocs/v2.php/apps/files_sharing/api/v1/shares/5
from (my ip) by andrew at 2022-08-11T04:25:10+00:00

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

<?php
$CONFIG = array (
  'apps_paths' => 
  array (
    0 => 
    array (
      'path' => '/usr/local/www/nextcloud/apps',
      'url' => '/apps',
      'writable' => true,
    ),
    1 => 
    array (
      'path' => '/usr/local/www/nextcloud/apps-pkg',
      'url' => '/apps-pkg',
      'writable' => false,
    ),
  ),
  'logfile' => '/var/log/nextcloud/nextcloud.log',
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'one-click-instance' => true,
  'one-click-instance.user-limit' => 100,
  'memcache.distributed' => '\\OC\\Memcache\\Redis',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'redis' => 
  array (
    'host' => 'localhost',
  ),
  'passwordsalt' => '(censored)',
  'secret' => '(censored)',
  'trusted_domains' => 
  array (
    0 => 'localhost',
    1 => '(local ip address)',
    2 => '(external URL)',
  ),
  'datadirectory' => '/usr/local/www/nextcloud/data',
  'dbtype' => 'mysql',
  'version' => '24.0.3.2',
  'overwrite.cli.url' => 'http://localhost',
  'dbname' => 'nextcloud',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'mysql.utf8mb4' => true,
  'dbuser' => 'oc_ncadmin',
  'dbpassword' => '(censored)',
  'installed' => true,
  'instanceid' => 'ocw4quhsfk9g',
  'default_phone_region' => 'US',
  'mail_smtpmode' => 'smtp',
  'mail_smtpauth' => 1,
  'mail_sendmailmode' => 'smtp',
  'mail_smtpauthtype' => 'PLAIN',
  'mail_from_address' => 'no-reply',
  'mail_domain' => '(my domain)',
  'mail_smtpsecure' => 'ssl',
  'mail_smtphost' => 'smtppro.zoho.com',
  'mail_smtpport' => '465',
  'mail_smtpname' => '(censored)',
  'mail_smtppassword' => '(censored)',
  'app_install_overwrite' => 
  array (
    0 => 'admin_notifications',
    1 => 'twofactor_admin',
    2 => 'caniupdate',
    3 => 'occweb',
    4 => 'uploaddetails',
  ),
);

The output of your Apache/nginx/system log in /var/log/____:
I can’t find this. I can happily provide it with instruction.

This obviously isn’t what I want to see. Is there a way I can resolve this without having to reset my entire instance? I am relatively new to FreeBSD, so all help will be extremely appreciated. :heart:

Your database has gone away. That is the point where you should check the database logfiles for more information. Are there limits to the number of connections, runtime of commands, …