baserproject / basercms

baserCMS : Based Website Development Project
http://basercms.net
Other
165 stars 126 forks source link

searchIndexを構築する方の仕組みで、大量の記事が登録されるなどがあった際に、大きなトランザクションやテーブルロックで全体が止まるような実装になっていないか、について調査依頼 #1738

Open fuchigam1 opened 3 years ago

fuchigam1 commented 3 years ago

概要

以下の内容でご相談を受けたため発行です。

baserのISSUEなどで、searchIndexを構築する方の仕組みで、大量の記事が登録されるなどがあった際に、大きなトランザクションやテーブルロックで全体が止まるような実装になっていないか、について調査して欲しいです。
SELECT `SearchIndex` . `type` FROM `prod_basercms` . `mysite_search_indices` AS `SearchIndex` WHERE `SearchIndex` . `status` = ? GROUP BY `SearchIndex` . `type`

baserCMS version : 4.3.5

備考

kaburk commented 3 years ago

ソースコード内で明示的にトランザクション発行している箇所としては ・固定ページ、ブログ(記事ではない)、メールフォームの各コンテンツのcopy処理 ・検索index全体の再作成処理時 ・コンテンツ管理の指定したコンテンツ配下のコンテンツのURLを一括更新する処理 ・管理画面ユーザーのパスワード再発行処理 ・管理画面 バックアップデータの復元処理 という感じでした。

通常の運用では大量の記事が登録されるなどがあった際での発生はなさそうです。