Can't update NC24

I always update my NC manually. This time i tried to update from NC23.0.4 to NC24.0.1. Then NC would not even show the login screen due to an internal error.
I have done occ upgrade and there were no problems or anomalies in its processing.

I did the following

  • occ maintenance:repair
  • occ maintenance:mimetype:update-db
  • occ maintenance:mimetype:update-js
  • occ maintenance:repair
  • occ maintenance:theme:update
  • occ db:add-missing-columns
  • occ db:add-missing-indices
  • occ db:add-missing-primary-keys
  • Remove apps one by one from apps directory.
  • Restart MariaDB.
  • Restart nginx.
  • Restart server.

NC’s error:


[dav] Fatal: Error during app service registration: Call to undefined method OCP\AppFramework\Bootstrap\IRegistrationContext@anonymous::registerUserMigrator()

at 2022-05-24T02:29:23+09:00

[cron] error: OC\DB\QueryBuilder\QueryBuilder::__construct(): Argument #3 ($logger) must be of type OCP\ILogger, OC\Log\PsrLoggerAdapter given, called in /MYNEXTCLOUDapps/circles/lib/Tools/Db/ExtendedQueryBuilder.php on line 65

at 2022-05-24T02:29:25+09:00

[index] error: Call to undefined method OC\Comments\Manager::supportReactions()

GET /index.php
from XXX.XXX.YYY.YYY at 2022-05-24T02:35:45+09:00

[spreed] Fatal: Error during app service registration: Call to undefined method OCP\AppFramework\Bootstrap\IRegistrationContext@anonymous::registerTalkBackend()

GET /index.php
from XXX.XXX.YYY.YYY at 2022-05-24T02:35:45+09:00

The above error has occurred multiple times.

Server’s log

2022/05/24 02:31:10 [error] 12791#0: *8 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'DATABASE-NAME.oc_appconfig' doesn't exist in /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Driver/PDO/Connection.php:82
Stack trace:
#0 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Driver/PDO/Connection.php(82): PDO->query()
#1 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Connection.php(1062): Doctrine\DBAL\Driver\PDO\Connection->query()
#2 /MY-NEXTCLOUD/lib/private/DB/Connection.php(237): Doctrine\DBAL\Connection->executeQuery()
#3 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php(345): OC\DB\Connection->executeQuery()
#4 /MY-NEXTCLOUD/lib/private/DB/QueryBuilder/QueryBuilder.php(287): Doctrine\DBAL\Query\QueryBuilder->execute()
#5 /MY-NEXTCLOUD/lib/private/AppConfig.php(361): OC\DB\QueryBuilder\QueryBuilder->execute()
#6 /var/www/vhosts/MY-NEXTCL" while reading response header from upstream, client: IP-ADDRESS, server: MY-NEXTCLOUD-URL, request: "OPTIONS /remote.php/dav/principals/users/USER-NAME/ HTTP/1.1", upstream: "fastcgi://unix:/MY-SERVER/php-fpm.sock:", host: "MY-NEXTCLOUD-URL"
2022/05/24 02:31:10 [error] 12791#0: *10 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'DATABASE-NAME.oc_appconfig' doesn't exist in /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Driver/PDO/Connection.php:82
Stack trace:
#0 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Driver/PDO/Connection.php(82): PDO->query()
#1 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Connection.php(1062): Doctrine\DBAL\Driver\PDO\Connection->query()
#2 /MY-NEXTCLOUD/lib/private/DB/Connection.php(237): Doctrine\DBAL\Connection->executeQuery()
#3 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php(345): OC\DB\Connection->executeQuery()
#4 /MY-NEXTCLOUD/lib/private/DB/QueryBuilder/QueryBuilder.php(287): Doctrine\DBAL\Query\QueryBuilder->execute()
#5 /MY-NEXTCLOUD/lib/private/AppConfig.php(361): OC\DB\QueryBuilder\QueryBuilder->execute()
#6 /var/www/vhosts/MY-NEXTCLO" while reading response header from upstream, client: IP-ADDRESS, server: MY-NEXTCLOUD-URL, request: "REPORT /remote.php/dav/principals/users/USER-NAME/ HTTP/1.1", upstream: "fastcgi://unix:/MY-SERVER/php-fpm.sock:", host: "MY-NEXTCLOUD-URL"
2022/05/24 02:31:11 [error] 12791#0: *10 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'DATABASE-NAME.oc_appconfig' doesn't exist in /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Driver/PDO/Connection.php:82
Stack trace:
#0 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Driver/PDO/Connection.php(82): PDO->query()
#1 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Connection.php(1062): Doctrine\DBAL\Driver\PDO\Connection->query()
#2 /MY-NEXTCLOUD/lib/private/DB/Connection.php(237): Doctrine\DBAL\Connection->executeQuery()
#3 /MY-NEXTCLOUD/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php(345): OC\DB\Connection->executeQuery()
#4 /MY-NEXTCLOUD/lib/private/DB/QueryBuilder/QueryBuilder.php(287): Doctrine\DBAL\Query\QueryBuilder->execute()
#5 /MY-NEXTCLOUD/lib/private/AppConfig.php(361): OC\DB\QueryBuilder\QueryBuilder->execute()
#6 /var/www/vhosts/MY-NEXTCLO" while reading response header from upstream, client: IP-ADDRESS, server: MY-NEXTCLOUD-URL, request: "PROPFIND /remote.php/dav/calendars/USER-NAME/ HTTP/1.1", upstream: "fastcgi://unix:/MY-SERVER/php-fpm.sock:", host: "MY-NEXTCLOUD-URL"

I downloaded the NC source from Nextcloud site.
The top page shows 24.0.0 as the latest version, but the Changelog page shows 24.0.1. Is there something wrong with the source?

I’m currently back to 23.0.4.
Has NC24.0.1 changed so much that config.php is not continuously available?

Is there a solution?


CentOS 7.9, PHP 8.0.19, nginx 1.20.2, MariaDB 10.2.43

I think I found a workaround for this too. I deleted oc_external_XXX tables in MariaDB and was able to update and access NC. The problem seems to be with the DB tables, not the app. However, I have not tried it in my main environment because it still scares me.

Is there any way to repair external storage settings in NC23?