DB Issues after daily update

Hello,

This morning I had a user complaint that they could no longer log in to the web interface. I tried resetting their password, and then attempted to log in myself - and I’m getting:

Whoops, looks like something went wrong. Check your librenms.log.

It seems my admin account works OK, but any other users (which have port or bill permissions) are failing.

In my librenmslog I see these stacktraces when I attempt to log in:

#0 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(631): Illuminate\Database\Connection->runQueryCallback()
#1 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(339): Illuminate\Database\Connection->run()
#2 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2260): Illuminate\Database\Connection->select()
#3 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2248): Illuminate\Database\Query\Builder->runSelect()
#4 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2743): Illuminate\Database\Query\Builder->Illuminate\Database\Query\{closure}()
#5 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2249): Illuminate\Database\Query\Builder->onceWithColumns()
#6 /opt/librenms/LibreNMS/Permissions.php(200): Illuminate\Database\Query\Builder->get()
#7 /opt/librenms/LibreNMS/Permissions.php(51): LibreNMS\Permissions->getDevicePermissions()
#8 /opt/librenms/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(261): LibreNMS\Permissions->canAccessDevice()
#9 /opt/librenms/includes/html/functions.inc.php(274): Illuminate\Support\Facades\Facade::__callStatic()
#10 /opt/librenms/includes/html/functions.inc.php(248): device_permitted()
#11 /opt/librenms/includes/html/graphs/port/auth.inc.php(3): port_permitted()
#12 /opt/librenms/includes/html/pages/graphs.inc.php(33): require(‘/opt/librenms/i…’)
#13 /opt/librenms/app/Http/Controllers/LegacyController.php(53): require(‘/opt/librenms/i…’)
#14 [internal function]: App\Http\Controllers\LegacyController->index()
#15 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): call_user_func_array()
#16 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\Routing\Controller->callAction()
#17 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Route.php(239): Illuminate\Routing\ControllerDispatcher->dispatch()
#18 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Route.php(196): Illuminate\Routing\Route->runController()
#19 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(685): Illuminate\Routing\Route->run()
#20 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Routing\Router->Illuminate\Routing\{closure}()
#21 /opt/librenms/app/Http/Middleware/LoadUserPreferences.php(30): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#22 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\LoadUserPreferences->handle()
#23 /opt/librenms/app/Http/Middleware/VerifyTwoFactor.php(39): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#24 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\VerifyTwoFactor->handle()
#25 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#26 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Routing\Middleware\SubstituteBindings->handle()
#27 /opt/librenms/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(44): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#28 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Auth\Middleware\Authenticate->handle()
#29 /opt/librenms/app/Http/Middleware/LegacyExternalAuth.php(42): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#30 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\LegacyExternalAuth->handle()
#31 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(77): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#32 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle()
#33 /opt/librenms/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#34 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\View\Middleware\ShareErrorsFromSession->handle()
#35 /opt/librenms/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#36 /opt/librenms/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(62): Illuminate\Session\Middleware\StartSession->handleStatefulRequest()
#37 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Session\Middleware\StartSession->handle()
#38 /opt/librenms/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#39 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle()
#40 /opt/librenms/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#41 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Cookie\Middleware\EncryptCookies->handle()
#42 /opt/librenms/app/Http/Middleware/CheckInstalled.php(61): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#43 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\CheckInstalled->handle()
#44 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#45 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(687): Illuminate\Pipeline\Pipeline->then()
#46 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(662): Illuminate\Routing\Router->runRouteWithinStack()
#47 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(628): Illuminate\Routing\Router->runRoute()
#48 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(617): Illuminate\Routing\Router->dispatchToRoute()
#49 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(165): Illuminate\Routing\Router->dispatch()
#50 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
#51 /opt/librenms/vendor/darkghosthunter/larapoke/src/Http/Middleware/LarapokeGlobalMiddleware.php(20): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#52 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): DarkGhostHunter\Larapoke\Http\Middleware\LarapokeGlobalMiddleware->handle()
#53 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#54 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#55 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#56 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#57 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#58 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
#59 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(63): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#60 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle()
#61 /opt/librenms/vendor/fruitcake/laravel-cors/src/HandleCors.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#62 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fruitcake\Cors\HandleCors->handle()
#63 /opt/librenms/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#64 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fideloper\Proxy\TrustProxies->handle()
#65 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#66 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(140): Illuminate\Pipeline\Pipeline->then()
#67 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(109): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
#68 /opt/librenms/html/index.php(52): Illuminate\Foundation\Http\Kernel->handle()
#69 {main}

[previous exception] [object] (Doctrine\DBAL\Driver\PDOException(code: 21000): SQLSTATE[21000]: Cardinality violation: 1222 The used SELECT statements have a different number of columns at /opt/librenms/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:72)
[stacktrace]
#0 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(331): Doctrine\DBAL\Driver\PDOConnection->prepare()
#1 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(664): Illuminate\Database\Connection->Illuminate\Database\{closure}()
#2 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(631): Illuminate\Database\Connection->runQueryCallback()
#3 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(339): Illuminate\Database\Connection->run()
#4 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2260): Illuminate\Database\Connection->select()
#5 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2248): Illuminate\Database\Query\Builder->runSelect()
#6 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2743): Illuminate\Database\Query\Builder->Illuminate\Database\Query\{closure}()
#7 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2249): Illuminate\Database\Query\Builder->onceWithColumns()
#8 /opt/librenms/LibreNMS/Permissions.php(200): Illuminate\Database\Query\Builder->get()
#9 /opt/librenms/LibreNMS/Permissions.php(51): LibreNMS\Permissions->getDevicePermissions()
#10 /opt/librenms/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(261): LibreNMS\Permissions->canAccessDevice()
#11 /opt/librenms/includes/html/functions.inc.php(274): Illuminate\Support\Facades\Facade::__callStatic()
#12 /opt/librenms/includes/html/functions.inc.php(248): device_permitted()
#13 /opt/librenms/includes/html/graphs/port/auth.inc.php(3): port_permitted()
#14 /opt/librenms/includes/html/pages/graphs.inc.php(33): require(‘/opt/librenms/i…’)
#15 /opt/librenms/app/Http/Controllers/LegacyController.php(53): require(‘/opt/librenms/i…’)
#16 [internal function]: App\Http\Controllers\LegacyController->index()
#17 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): call_user_func_array()
#18 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\Routing\Controller->callAction()
#19 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Route.php(239): Illuminate\Routing\ControllerDispatcher->dispatch()
#20 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Route.php(196): Illuminate\Routing\Route->runController()
#21 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(685): Illuminate\Routing\Route->run()
#22 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Routing\Router->Illuminate\Routing\{closure}()
#23 /opt/librenms/app/Http/Middleware/LoadUserPreferences.php(30): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#24 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\LoadUserPreferences->handle()
#25 /opt/librenms/app/Http/Middleware/VerifyTwoFactor.php(39): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#26 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\VerifyTwoFactor->handle()
#27 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#28 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Routing\Middleware\SubstituteBindings->handle()
#29 /opt/librenms/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(44): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#30 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Auth\Middleware\Authenticate->handle()
#31 /opt/librenms/app/Http/Middleware/LegacyExternalAuth.php(42): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#32 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\LegacyExternalAuth->handle()
#33 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(77): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#34 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle()
#35 /opt/librenms/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#36 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\View\Middleware\ShareErrorsFromSession->handle()
#37 /opt/librenms/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#38 /opt/librenms/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(62): Illuminate\Session\Middleware\StartSession->handleStatefulRequest()
#39 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Session\Middleware\StartSession->handle()
#40 /opt/librenms/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#41 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle()
#42 /opt/librenms/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#43 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Cookie\Middleware\EncryptCookies->handle()
#44 /opt/librenms/app/Http/Middleware/CheckInstalled.php(61): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#45 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\CheckInstalled->handle()
#46 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#47 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(687): Illuminate\Pipeline\Pipeline->then()
#48 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(662): Illuminate\Routing\Router->runRouteWithinStack()
#49 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(628): Illuminate\Routing\Router->runRoute()
#50 /opt/librenms/vendor/laravel/framework/src/Illuminate/Routing/Router.php(617): Illuminate\Routing\Router->dispatchToRoute()
#51 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(165): Illuminate\Routing\Router->dispatch()
#52 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
#53 /opt/librenms/vendor/darkghosthunter/larapoke/src/Http/Middleware/LarapokeGlobalMiddleware.php(20): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#54 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): DarkGhostHunter\Larapoke\Http\Middleware\LarapokeGlobalMiddleware->handle()
#55 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#56 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#57 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#58 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#59 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#60 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
#61 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(63): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#62 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle()
#63 /opt/librenms/vendor/fruitcake/laravel-cors/src/HandleCors.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#64 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fruitcake\Cors\HandleCors->handle()
#65 /opt/librenms/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#66 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fideloper\Proxy\TrustProxies->handle()
#67 /opt/librenms/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#68 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(140): Illuminate\Pipeline\Pipeline->then()
#69 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(109): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
#70 /opt/librenms/html/index.php(52): Illuminate\Foundation\Http\Kernel->handle()
#71 {main}

[previous exception] [object] (PDOException(code: 21000): SQLSTATE[21000]: Cardinality violation: 1222 The used SELECT statements have a different number of columns at /opt/librenms/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:67)
[stacktrace]
#0 /opt/librenms/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(67): PDO->prepare()
…cut for maximum post length…

Looking in the daily.log, I see these updates from this morning, just before the first time I see the above stacktrace:

Returned: 0
Updating Composer packages

LibreNMS\ComposerHelper::preInstall
Loading composer repositories with package information
Installing dependencies from lock file
Nothing to install or update
Generating optimized autoload files
Deprecation Notice: Class Crypt_CHAP_MD5 located in ./vendor/dapphp/radius/lib/Pear_CHAP.php does not comply with psr-0 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///opt/librenms/composer.phar/src/Composer/Autoload/ClassMapGenerator.php:201
Deprecation Notice: Class Crypt_CHAP_MSv1 located in ./vendor/dapphp/radius/lib/Pear_CHAP.php does not comply with psr-0 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///opt/librenms/composer.phar/src/Composer/Autoload/ClassMapGenerator.php:201
Deprecation Notice: Class Crypt_CHAP_MSv2 located in ./vendor/dapphp/radius/lib/Pear_CHAP.php does not comply with psr-0 autoloading standard. It will not autoload anymore in Composer v2.0. in phar:///opt/librenms/composer.phar/src/Composer/Autoload/ClassMapGenerator.php:201
Illuminate\Foundation\ComposerScripts::postAutoloadDump
@php artisan package:discover --ansi
Discovered Package: darkghosthunter/larapoke
Discovered Package: fideloper/proxy
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: librenms/laravel-vue-i18n-generator
Discovered Package: nesbot/carbon
Discovered Package: oriceon/toastr-5-laravel
Discovered Package: tightenco/ziggy
Discovered Package: wpb/string-blade-compiler
Package manifest generated successfully.
49 packages you are using are looking for funding.
Use the composer fund command to find out more!
LibreNMS\ComposerHelper::postInstall
Illuminate\Foundation\ComposerScripts::postInstall
@php artisan vue-i18n:generate --multi-locales --format=umd
@php artisan view:cache
Compiled views cleared!
Blade templates cached successfully!
@php artisan optimize
Configuration cache cleared!
Configuration cached successfully!
Route cache cleared!
Routes cached successfully!
Files cached successfully!
@php artisan config:clear
Configuration cache cleared!
scripts/check_requirements.py || pip3 install --user -r requirements.txt || :
Returned: 0
Updated from e7f2de79e to 2ca6f2f8d

Returned: 0
Updating SQL-Schema
Migrating: 2020_10_03_1000_add_primary_key_bill_perms
Migrated: 2020_10_03_1000_add_primary_key_bill_perms (0.37 seconds)
Migrating: 2020_10_03_1000_add_primary_key_bill_ports
Migrated: 2020_10_03_1000_add_primary_key_bill_ports (0.39 seconds)
Migrating: 2020_10_03_1000_add_primary_key_devices_perms
Migrated: 2020_10_03_1000_add_primary_key_devices_perms (0.42 seconds)
Migrating: 2020_10_03_1000_add_primary_key_entPhysical_state
Migrated: 2020_10_03_1000_add_primary_key_entPhysical_state (0.37 seconds)
Migrating: 2020_10_03_1000_add_primary_key_ipv4_mac
Migrated: 2020_10_03_1000_add_primary_key_ipv4_mac (0.7 seconds)
Migrating: 2020_10_03_1000_add_primary_key_juniAtmVp
Migrated: 2020_10_03_1000_add_primary_key_juniAtmVp (0.35 seconds)
Migrating: 2020_10_03_1000_add_primary_key_loadbalancer_vservers
Migrated: 2020_10_03_1000_add_primary_key_loadbalancer_vservers (0.35 seconds)
Migrating: 2020_10_03_1000_add_primary_key_ports_perms
Migrated: 2020_10_03_1000_add_primary_key_ports_perms (0.37 seconds)
Migrating: 2020_10_03_1000_add_primary_key_processes
Migrated: 2020_10_03_1000_add_primary_key_processes (0.39 seconds)
Migrating: 2020_10_03_1000_add_primary_key_transport_group_transport
Migrated: 2020_10_03_1000_add_primary_key_transport_group_transport (0.35 seconds)
Returned: 0
Updating submodules

Returned: 0
Cleaning up DB
Refreshing alert rules queries
Clearing OS cache
Refreshing device group table relationships
Syslog cleared for entries over 30 days (about 0 rows)
Eventlog cleared for entries over 30 days
Perf times cleared for entries over 30 days
Device perf cleared for entries over 7 days
Deleting alert_logs more than 365 days that are not active
Deleting history of active alert_logs more than 365 days
Ports fdb cleared for entries over 10 days
Returned: 0
Fetching notifications
[ Thu, 15 Oct 2020 05:15:23 +0000 ] LibreNMS Notifications (48)
[ Thu, 15 Oct 2020 05:15:23 +0000 ] misc/notifications.rss (60)
[ Thu, 15 Oct 2020 05:15:23 +0000 ] Updating DB Done
Returned: 0
Caching PeeringDB data
Peering DB integration disabled
Returned: 0
Updating to latest codebase

I tried removing the port and bill access from one off the users (because of the bill_perms db change above), but it didn’t seem to help. I also tried deleting and re-adding one of the users, but that also didn’t seem to help.

Here is my ./validate.php:

root@nms:/opt/librenms# ./validate.php

Component Version
LibreNMS 1.68-44-g2ca6f2f8d
DB Schema 2020_10_03_1000_add_primary_key_transport_group_transport (186)
PHP 7.4.10
Python 3.6.9
MySQL 10.1.44-MariaDB-0ubuntu0.18.04.1
RRDTool 1.7.0
SNMP NET-SNMP 5.7.3
====================================

[OK] Composer Version: 1.10.15
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database schema correct

Any help would be appreciated. Not sure what other info might be helpful.

Thanks in advance,

I should also note, my PHP timezone was incorrect this morning when I started looking at this as well (that was in the initial ./validate.php I did - but I fixed that before trying any of these other things). Not sure why that reverted, but I did recently update to PHP 7.4, and though the timezone was right after that update, it may have used a different php.ini after an update this morning.