5.7.5.6→5.7.5.13アップデートでエラー

2017年7月4日 at 11:36

お世話になります。

5.7.5.6→5.7.5.13アップデートをすると

Argument 2 passed to Concrete\Core\File\Image\Thumbnail\Path\Resolver::getPath() must be an instance of Concrete\Core\File\Image\Thumbnail\Type\Version, null given, called in /var/www/XXX/updates/concrete5.7.5.13_remote_updater/concrete/src/File/Version.php on line 889 and defined

とエラーが出ます。

application/comfig/update.php の中身をコメントするとエラーが出ないので、DBがうまくアップデートされていない印象なのですが、どなたかお分かりになりますでしょうか?

バックアップからconcreteフォルダーを上書きする方法も試しましたが、coreのパスが変わるだけで同じ症状です。

さくらのレンタルサーバー
PHP:5.6.30
Apache:2.2.31
Mysql:5.5.54

Vagrant(CentOS)
PHP: 5.6.30
Apache: 2.2.15
MySQL: 5.6.36

で同様の症状です。

タグ:

Re: 5.7.5.6→5.7.5.13アップデートでエラー

2017年7月5日 at 8:22
私は検証していませんが、
フォーラムで同じようなエラーを発見したので報告。

5.6.5.6 で無視されていたエラーを表示し始めたようです。

http://www.concrete5.org/developers/bugs/5-7-5-8/image-thumbnail-path-resolver-is-broken

サイト内で使用しているサムネイルタイプが、実は concrete5 側で生成されていないために、5.7.5.13 でエラーを表示し始めたようです。

サイト内のテーマやブロックで指定しているサムネイルタイプが concrete5 の設定で不足しているタイプが有るはずなので、作成して下さい。

サムネイルタイプを生成し、僕のアドオンで既存ファイルのサムネイルを生成し直してみて下さい。
http://www.concrete5.org/marketplace/addons/rescan-all-files
 

Re: 5.7.5.6→5.7.5.13アップデートでエラー

2017年7月5日 at 9:57
Katzさんありがとうございます。

やってみてご報告します。
 

Re: 5.7.5.6→5.7.5.13アップデートでエラー

2017年7月6日 at 11:23
Katzさん

> サイト内のテーマやブロックで指定しているサムネイルタイプが concrete5 の設定で不足しているタイプが有るはずなので、作成して下さい。

おっしゃるように application/files/thumbnails にあって「システムと設定 > サムネイル」にないタイプがありましたので、追加しました。

具体的には
file_manager_listing_2x ファイルマネージャーサムネイル (Retinaバージョン)
file_manager_detail_2x ファイルマネージャー詳細サムネイル (Retinaバージョン)
side_nav_2x サイドバーナビ (Retinaバージョン)
small_2x 小画像 (Retinaバージョン)
medium_2x 中画像 (Retinaバージョン)
large_2x 大画像 (Retinaバージョン)
を追加

その上で、Rescan All Filesで既存ファイルのサムネイルを生成し直しを行っところ、

An exception occurred while executing 'SELECT path FROM FileImageThumbnailPaths p WHERE (p.fileID = ?) AND (p.fileVersionID = ?) AND (p.storageLocationID = ?) AND (p.thumbnailTypeHandle = ?)' with params [107, 1, 1, "side_nav"]: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'XXX.FileImageThumbnailPaths' doesn't exist

updates/concrete5.7.5.13_remote_updater/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php
53行目
case '1146':
return new Exception\TableNotFoundException($message, $exception);

というエラーが発生しました。

DBを調べてみると FileImageThumbnailPaths というテーブルが存在しません。

テストで素でインストールした5.7.5.6を5.7.5.13にアップしたところ、DBで
5.7.5.6 → FileImageThumbnailPathsなし
5.7.5.13→ FileImageThumbnailPaths有り
となっていたので、DBのアップデートに失敗しているようで、これが原因と思われます。

DBに FileImageThumbnailPaths のテーブル追加して Rescan All Files かければ、FileImageThumbnailPathsの中身は生成されるのでしょうか?
 

Re: 5.7.5.6→5.7.5.13アップデートでエラー

2017年7月6日 at 11:25
お世話になります。


そうですね。
すみませんが、
テーブルを作成してみて下さい。