Closed cu-akasakay closed 2 weeks ago
インストール後初期状態にて、コンテンツ管理で何かしらのファイルやフォルダを削除し、 ユーティリティ>コンテンツ管理から「ツリー構造をチェックする」を押下すると、他に操作をしてないにも関わらず 「コンテンツのツリー構造に問題があります。ログを確認してください。」と表示されます。
ログの内容は例として、以下のように出力されています。 (このlft, rghtが19,20の番号を持つレコードはごみ箱に入っているファイルでした)
2024-06-05 15:03:45 error: index, 19, missing 2024-06-05 15:03:45 error: index, 20, missing
ごみ箱の中身をカラにしたり、元に戻すとツリー構造チェックは「正常」となり、 再度別ファイルでも良いので削除してごみ箱に入ると「問題あり」になりました。
以下の処理において、100行目のデータ取得では論理削除済みデータを含めて取得していると思いますが、 108行目のデータ取得では論理削除済みが含まれていません。 これにより、ごみ箱にあるファイルが必ず114行目の「missing」エラーになってしまうと推測していますが、 いかがでしょうか。
https://github.com/baserproject/basercms/blob/2a41a4c7d2dbf63a3a194cb96fb91dbf64a54423/plugins/baser-core/src/Service/UtilitiesService.php#L100-L118
baserCMS version : 5.0.17
@cu-akasakay 詳細な情報助かります。僕の方でも時間見つけて調査してみますね。
@cu-akasakay
以下の処理において、100行目のデータ取得では論理削除済みデータを含めて取得していると思いますが、 108行目のデータ取得では論理削除済みが含まれていません。
確認しました。そちらに論理削除済を含むことで解決できそうですね。 プルリクよろしくお願いします。
概要
インストール後初期状態にて、コンテンツ管理で何かしらのファイルやフォルダを削除し、 ユーティリティ>コンテンツ管理から「ツリー構造をチェックする」を押下すると、他に操作をしてないにも関わらず 「コンテンツのツリー構造に問題があります。ログを確認してください。」と表示されます。
ログ出力内容
ログの内容は例として、以下のように出力されています。 (このlft, rghtが19,20の番号を持つレコードはごみ箱に入っているファイルでした)
再現性について
ごみ箱の中身をカラにしたり、元に戻すとツリー構造チェックは「正常」となり、 再度別ファイルでも良いので削除してごみ箱に入ると「問題あり」になりました。
該当処理
以下の処理において、100行目のデータ取得では論理削除済みデータを含めて取得していると思いますが、 108行目のデータ取得では論理削除済みが含まれていません。 これにより、ごみ箱にあるファイルが必ず114行目の「missing」エラーになってしまうと推測していますが、 いかがでしょうか。
https://github.com/baserproject/basercms/blob/2a41a4c7d2dbf63a3a194cb96fb91dbf64a54423/plugins/baser-core/src/Service/UtilitiesService.php#L100-L118
baserCMS version : 5.0.17