9.2.0 へのアップデートでエラーを生じるサイトが複数ございます。
運用開始時のバージョンは 8.5.x や 9.1.x など様々ですが、いずれも 9.1.3 からのアップデートです。
キャッシュはすべて無効でエラーのデバッグ出力を表示する設定になっています。
試行した手順は以下の通りです。
-
concrete ディレクトリを 9.2.0 へ置き換えて c5:update を実行
[New in 9.2: Major Features]ダイアログが表示されます。 -
[Next]、[Done]とクリック
[エラー]ダイアログに以下が表示されます。
サイトによって差異はありますが、最初の部分は同じです。
An exception occurred while executing ‘SELECT t0.uID AS uID_1, t0.uName AS uName_2, t0.uEmail AS uEmail_3, t0.uPassword AS uPassword_4, t0.uIsActive AS uIsActive_5, t0.uIsFullRecord AS uIsFullRecord_6, t0.uIsValidated AS uIsValidated_7, t0.uDateAdded AS uDateAdded_8, t0.uLastPasswordChange AS uLastPasswordChange_9, t0.uDateLastUpdated AS uDateLastUpdated_10, t0.uHasAvatar AS uHasAvatar_11, t0.uLastOnline AS uLastOnline_12, t0.uLastLogin AS uLastLogin_13, t0.uPreviousLogin AS uPreviousLogin_14, t0.uNumLogins AS uNumLogins_15, t0.uLastAuthTypeID AS uLastAuthTypeID_16, t0.uLastIP AS uLastIP_17, t0.uTimezone AS uTimezone_18, t0.uDefaultLanguage AS uDefaultLanguage_19, t0.uIsPasswordReset AS uIsPasswordReset_20, t0.uHomeFileManagerFolderID AS uHomeFileManagerFolderID_21, t0.ignoredIPMismatches AS ignoredIPMismatches_22, t23.usID AS usID_24, t23.uID AS uID_25, t23.createdBy AS createdBy_26 FROM Users t0 LEFT JOIN UserSignups t23 ON t23.uID = t0.uID WHERE t0.uID = ? LIMIT 1’ with params [“1”]:
SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘t0.ignoredIPMismatches’ in ‘field list’
詳細
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php(79): Doctrine\DBAL\Exception\InvalidFieldNameException->null
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php(182): Doctrine\DBAL\Driver\AbstractMySQLDriver->convertException
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php(159): Doctrine\DBAL\DBALException->wrapException
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(2226): Doctrine\DBAL\DBALException->driverExceptionDuringQuery
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(1313): Doctrine\DBAL\Connection->handleExceptionDuringQuery
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDO/Exception.php(18): Doctrine\DBAL\Driver\PDO\Exception->null
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php(119): Doctrine\DBAL\Driver\PDO\Exception->new
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php(117): PDOException->null
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php(117): PDOStatement->execute
インストールディレクトリ/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(1304): Doctrine\DBAL\Driver\PDOStatement->execute
インストールディレクトリ/concrete/vendor/doctrine/orm/lib/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php(750): Doctrine\DBAL\Connection->executeQuery
インストールディレクトリ/concrete/vendor/doctrine/orm/lib/Doctrine/ORM/EntityRepository.php(241): Doctrine\ORM\Persisters\Entity\BasicEntityPersister->load
インストールディレクトリ/concrete/src/User/UserInfoRepository.php(133): Doctrine\ORM\EntityRepository->findOneBy
インストールディレクトリ/concrete/src/User/UserInfoRepository.php(33): Concrete\Core\User\UserInfoRepository->get
インストールディレクトリ/concrete/src/User/UserInfo.php(1142): Concrete\Core\User\UserInfoRepository->getByID
インストールディレクトリ/concrete/src/User/User.php(176): Concrete\Core\User\UserInfo->getByID
インストールディレクトリ/concrete/src/Announcement/AnnouncementService.php(96): Concrete\Core\User\User->getUserInfoObject
インストールディレクトリ/concrete/controllers/backend/announcement.php(22): Concrete\Core\Announcement\AnnouncementService->markAnnouncementAsViewed
インストールディレクトリ/concrete/src/Controller/AbstractController.php(318): Concrete\Controller\Backend\Announcement->markAsViewed
インストールディレクトリ/concrete/src/Controller/AbstractController.php(318): null->call_user_func_array
インストールディレクトリ/concrete/src/Routing/ControllerRouteAction.php(64): Concrete\Core\Controller\AbstractController->runAction
インストールディレクトリ/concrete/src/Http/RouteDispatcher.php(37): Concrete\Core\Routing\ControllerRouteAction->execute
インストールディレクトリ/concrete/src/Http/Middleware/DispatcherDelegate.php(39): Concrete\Core\Http\RouteDispatcher->dispatch
インストールディレクトリ/concrete/src/Http/Middleware/MiddlewareStack.php(86): Concrete\Core\Http\Middleware\DispatcherDelegate->next
インストールディレクトリ/concrete/src/Http/DefaultDispatcher.php(127): Concrete\Core\Http\Middleware\MiddlewareStack->process
インストールディレクトリ/concrete/src/Http/DefaultDispatcher.php(60): Concrete\Core\Http\DefaultDispatcher->handleDispatch
インストールディレクトリ/concrete/src/Http/Middleware/DispatcherDelegate.php(39): Concrete\Core\Http\DefaultDispatcher->dispatch
インストールディレクトリ/concrete/src/Http/Middleware/FrameOptionsMiddleware.php(39): Concrete\Core\Http\Middleware\DispatcherDelegate->next
インストールディレクトリ/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\FrameOptionsMiddleware->process
インストールディレクトリ/concrete/src/Http/Middleware/StrictTransportSecurityMiddleware.php(36): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
インストールディレクトリ/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\StrictTransportSecurityMiddleware->process
インストールディレクトリ/concrete/src/Http/Middleware/ContentSecurityPolicyMiddleware.php(36): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
インストールディレクトリ/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\ContentSecurityPolicyMiddleware->process
インストールディレクトリ/concrete/src/Http/Middleware/CookieMiddleware.php(35): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
インストールディレクトリ/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\CookieMiddleware->process
インストールディレクトリ/concrete/src/Http/Middleware/ApplicationMiddleware.php(29): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
インストールディレクトリ/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\ApplicationMiddleware->process
インストールディレクトリ/concrete/src/Http/Middleware/MiddlewareStack.php(86): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
インストールディレクトリ/concrete/src/Http/DefaultServer.php(85): Concrete\Core\Http\Middleware\MiddlewareStack->process
インストールディレクトリ/concrete/src/Foundation/Runtime/Run/DefaultRunner.php(125): Concrete\Core\Http\DefaultServer->handleRequest
インストールディレクトリ/concrete/src/Foundation/Runtime/DefaultRuntime.php(102): Concrete\Core\Foundation\Runtime\Run\DefaultRunner->run
インストールディレクトリ/concrete/dispatcher.php(45): Concrete\Core\Foundation\Runtime\DefaultRuntime->run
インストールディレクトリ/index.php(2): null->require
- [エラー]ダイアログを閉じてページをリロード
再度[New in 9.2: Major Features]ダイアログが表示され、以降手順 2 と 3 が繰り返されます。
以下を参考にいくつかのサイトで c5:entities:refresh を実行してみると、[エラー]ダイアログは表示されなくなりました。
[システムと設定]-[サーバー設定一覧]-[データベースエンティティ]-[Doctrine 開発モード]についても書かれているようですが、[オン]にしたことはありません。
ページの追加など簡単な動作確認では問題は見つかっておりませんが、アップデートが正常に完了しているのかは不明です。
この問題はアップデート実行前に何らかの手順を踏むことで回避できるのでしょうか。
Concrete CMS バージョン
9.1.3
PHP バージョン
8.0.x
サーバー
エックスサーバー