Bug(バグ) #2433
完了1.0.2 で追加されたマイグレートスクリプト(リビジョン番号 6)の考慮不足により、マイグレートに失敗することがある
100%
説明
#1483 で、新規インストール時には追加されるが過去バージョンからのマイグレート時には追加されなかった post_id および file_id の外部キー制約(とインデックス)の追加をおこない、過去バージョンからのマイグレートをおこなった後の DB 構造と新規インストール時の DB 構造を一致させるためのマイグレートスクリプト 006_update_op_community_topic_plugin_1_0_2.php が追加されたが、このスクリプトの実装は考慮が不足しており、マイグレートに失敗することがある。
post_id や file_id が存在しなかった過去バージョンからマイグレートをおこなった環境ではこのマイグレートスクリプトは成功するが、このマイグレートスクリプトによって追加しようとしている外部キーやインデックスが既に存在する状態を考慮していないため、 post_id や file_id が追加されたあとのバージョンを新規にインストールして運用している SNS でこのマイグレートスクリプトを実行すると失敗してしまう。
post_id や file_id の外部キー制約などが既に存在する場合、このマイグレートスクリプトの処理を実行する必要はないため、マイグレートスクリプト内で post_id や file_id の外部キーなどの存在確認をおこなうように修正する。
Yuya Watanabe さんが約13年前に更新
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
下記コミットで修正しました.外部キーのインデックスを確認することで存在確認を行なっています.
https://github.com/tejimaya/opCommunityTopicPlugin/commit/7cc6441752d01fb71b706b52849883eacc0f48b0
Kousuke Ebihara さんが約13年前に更新
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
Yuya Watanabe さんが約13年前に更新
- ステータス を Pending Testing(テスト待ち) から Pending Review(レビュー待ち) に変更
- 進捗率 を 70 から 50 に変更
definitionの位置を逆にしていたので入れ替えを行いました.
https://github.com/tejimaya/opCommunityTopicPlugin/commit/a57e54ef93122160e4f70c11895c645a9bdbf5da
Kousuke Ebihara さんが約13年前に更新
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
Mutsumi Imamura さんが約13年前に更新
- ステータス を Pending Testing(テスト待ち) から Fixed(完了) に変更
- 進捗率 を 70 から 100 に変更
動作確認しました。OKです。