Project

General

Profile

Bug(バグ) #2904

OpenPNE2系からコンバートした環境で誕生日によるメンバー検索の結果に該当するはずのメンバーがヒットしない現象が発生する場合がある

Added by Mutsumi Imamura almost 8 years ago. Updated over 4 years ago.

Status:
Fixed(完了)
Priority:
Normal(通常)
Assignee:
Target version:
Start date:
2012-03-26
Due date:
% Done:

100%

3.6 で発生するか:
Yes (はい)
3.8 で発生するか:
Unknown (未調査)

Description

Overview (現象)

OpenPNE2系からコンバートした環境で誕生日によるメンバー検索の結果に該当するはずのメンバーがヒットしない現象が発生する場合がある。
月 or 日が一桁(1〜9月、1〜9日の誕生日)のメンバーが検索にヒットしなくなる。
おそらくコンバート時に日付部分で一桁のときに 0 で埋められない状態となっていたため, "09" のような検索を行おうとしていたがデータが "9" のようになっていたため検索にヒットしないと思われる。

再現バージョン

  • OpenPNE3.6.2

再現手順

  1. 2系の環境で 3月3日 というような、月日が一桁の誕生日のメンバーを作成する
  2. 3系にコンバートする
  3. 3系の環境で、3月でメンバー検索を実施する
  4. 手順1で作成したメンバーがヒットするはずだが、ヒットしない

Causes (原因)

バグが発生した原因を記入

Way to fix (修正内容)

修正内容を記入

Associated revisions

Revision 9a06593d (diff)
Added by Hidenori Goto over 7 years ago

(refs #2904) Fixed converter for member_profile to fix date format of users birthday.

History

#1 Updated by Shouta Kashiwagi almost 8 years ago

  • Target version changed from 261 to OpenPNE 3.8.x

#2 Updated by Yuma Sakata almost 8 years ago

  • Target version changed from OpenPNE 3.8.x to OpenPNE 3.6.4

#3 Updated by Mutsumi Imamura over 7 years ago

  • Assignee set to Hidenori Goto

#4 Updated by Hidenori Goto over 7 years ago

原因箇所

overviewに記載されているとおり、V2→V3へのコンバート時に誕生日の月および日が一桁だった場合に0埋め処理が行われないままmember_profileのvalueに値がセットされてしまうため。

修正方針

コンバータでの修正は以下のとおりです。

  • /data/upgrade/2/opUpgradeFrom2MemberProfileStrategy.class.php setPresetMemberProfiles()メソッド末尾に以下のSQL実行を追加します。
$this->conn->execute('UPDATE member_profile SET value = date_format(value_datetime, "%Y-%m-%d") WHERE profile_id = ?', array($birthdayId));
  • 懸案事項:MySQLの日付関数の使用。

すでに稼働中のSNSについて、上記クエリーを実行するバッチを提供。

#5 Updated by Hidenori Goto over 7 years ago

  • Status changed from New(新規) to Accepted(着手)

#6 Updated by Hidenori Goto over 7 years ago

  • Status changed from Accepted(着手) to Pending Review(レビュー待ち)
  • % Done changed from 0 to 50

コンバーターの修正のみPull Requestしてあります。
https://github.com/openpne/OpenPNE3/pull/48

#7 Updated by Yuya Watanabe over 7 years ago

  • Status changed from Pending Review(レビュー待ち) to Pending Testing(テスト待ち)
  • % Done changed from 50 to 70

#8 Updated by Yuya Watanabe over 7 years ago

下記コミットを stable-3.6.x ブランチにマージしました.

9a06593d35283728d05e29d56c9197c37e3b5a8d

#9 Updated by Yuma Sakata over 7 years ago

  • Status changed from Pending Testing(テスト待ち) to Fixed(完了)
  • % Done changed from 70 to 100

テストOKです。

#10 Updated by kaoru n over 4 years ago

  • 3.8 で発生するか set to Unknown (未調査)

Also available in: Atom PDF