Passenger (v2.2.9)、Thinking Sphinx (v1.3.14)、および MySQL (v5.0.77-log) を使用して Rails (v2.3.5) で Ruby (v1.8.5) を実行している Red Hat Enterprise Linux 5 システムを引き継ぎました。 . それらがすべて古くなっていることは知っていますが、それは問題ではありません。
そのシステムのユーザーは、最近のデータ入力が古いデータのようにクエリに表示されないことに気付きました。たとえば、古いデータが検索されたときのログのスニペットは次のとおりです。
7 Query SELECT * FROM `patients` WHERE (`patients`.`id` = 618) 7 Query SELECT count(*) AS count_all FROM `notes` WHERE (patient_id = 618) 7 Query SELECT * FROM `notes` WHERE (`notes`.`id` IN (2238,2237,2092,2088)) 7 Query SHOW FIELDS FROM `categories` 7 Query SELECT * FROM `categories` WHERE (`categories`.`id` = 3) 7 Query SELECT * FROM `users` WHERE (`users`.`id` = 2) 7 Query SELECT * FROM `categories` WHERE (`categories`.`id` = 2) 7 Query SELECT * FROM `categories` WHERE (`categories`.`id` = 1) 7 Query SELECT * FROM `users` WHERE (`users`.`id` = 6) 7 Query BEGIN 7 Query UPDATE `sessions` SET `data` = '[removed]\n', `updated_at` = '2013-04-12 20:08:26' WHERE `id` = 1836 7 Query COMMIT
そのため、MySQL は患者 618 に対して 4 つのメモ (ID が 2238、2237、2092、および 2088) を返しています。
一方、先週の火曜日にシステムに追加され、3 つのメモが関連付けられていることがわかっている患者を選択すると、次のようになります。
8 Query SELECT * FROM `patients` WHERE (`patients`.`id` = 1157) 8 Query SELECT count(*) AS count_all FROM `notes` WHERE (patient_id = 1157) 8 Query BEGIN 8 Query UPDATE `sessions` SET `data` = '[removed]=\n', `updated_at` = '2013-04-12 20:19:00' WHERE `id` = 1836 8 Query COMMIT
「SELECT * FROM notes
」セクション全体が欠落しています。手で探せば見えるのでメモがあることは知っています。
いくつかの追加の潜在的に顕著な点:
- このシステムは 3 年以上再起動されておらず、httpd や sqld などは再起動時に自動起動するように設定されていないため、他に再起動が必要なものがあるかどうかはわかりません。
- Ruby on Rails のバックグラウンドはありません。Thinking Sphinx が何であるかはわかりませんが、コマンド「rake -f ~user/project/Rakefile ts:start RAILS_ENV=production」を実行する前に HTTP 500 エラーが発生していたことは知っています。
- システムはある仮想マシン ファームから別の仮想マシン ファームに (つまり、V から V に) 移行されたばかりですが、これが RoR のインストールに影響を与えた可能性があるすべての方法を調べた結果、次のような結論に達しました。ファイルや機能に影響を与えることはできませんでした。
あなたが私に与えることができるどんな助けでも大歓迎です!