プロジェクト

全般

プロフィール

Bug(バグ) #2001

完了

DBMSにSQLiteを使用すると、他人の日記にコメントを書き込む時にエラーが発生する

Youichi Kimura さんが13年以上前に追加. 13年以上前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2011-04-10
期日:
進捗率:

100%

予定工数:
3.6 で発生するか:
[QA]バグ通知済:
いいえ
3.8 で発生するか:

説明

Overview (現象)

DBMSにSQLiteを使用しているSNSで、他人の日記にコメントを書き込むと

SQLSTATE[23000]: Integrity constraint violation: 19 diary_comment_update.last_comment_time may not be NULL, referer: http://sns.localhost/sqlite/diary/7

のようなエラーが発生する

Causes (原因)

diary_comment_update.last_comment_time にNOT NULL制約があるが、PluginDiaryCommentUpdateTable::update() メソッドで last_comment_time に値がセットされないままINSERTを実行しようとしている。

Way to fix (修正内容)

INSERT前に last_comment_time に値をセットする処理を追加

--- a/lib/model/doctrine/PluginDiaryCommentUpdateTable.class.php
+++ b/lib/model/doctrine/PluginDiaryCommentUpdateTable.class.php
@@ -28,6 +28,7 @@ class PluginDiaryCommentUpdateTable extends Doctrine_Table
     }

     $object->setMyLastCommentTime(date('Y-m-d H:i:s'));
+    $object->setLastCommentTime(date('Y-m-d H:i:s'));
     $object->save();

     $this->createQuery()->update()

他の形式にエクスポート: Atom PDF