開発環境と本番環境ではすべてがうまく機能しているようです。
>スクリプト/コンソール 開発環境のロード(Rails 2.3.8) ruby-1.8.7-p302> Tape.find(:first、:conditions => "deleted_at is not null")。deleted_at.nil? => false ruby-1.8.7-p302> Tape.find(:first、:conditions => "deleted_at is null")。deleted_at.nil? =>真
では、なぜテスト環境で正反対の結果が得られるのでしょうか。
>スクリプト/コンソールテスト 負荷テスト環境(Rails 2.3.8) ruby-1.8.7-p302> Tape.find(:first、:conditions => "deleted_at is not null")。deleted_at.nil? =>真
検索環境では、一部の呼び出しにタイムスタンプがあり、deleted_at is null
一部の呼び出しにタイムスタンプがある場合でも、テスト環境でレコードが返されることはありませんdeleted_at = nil
。
mysqlテーブルの部分的な読み出しは次のとおりです。
mysql>記述テープ; + ----------------- + -------------- + ------ + ----- + --- ------ + ---------------- + | フィールド| タイプ| ヌル| キー| デフォルト| エクストラ| + ----------------- + -------------- + ------ + ----- + --- ------ + ---------------- + | id | int(11)| いいえ| PRI | NULL | auto_increment | ..。 | 削除された_at| 日時| はい| | NULL | | + ----------------- + -------------- + ------ + ----- + --- ------ + ---------------- +
誰かが何が起こっているのか知っていますか?これはバグですか?