RoR: мониторинг индексации миграции - PullRequest
0 голосов
/ 16 февраля 2012

Я планирую проиндексировать свою базу данных на 100 миллионов строк (ruby on rails) по нескольким полям, и проблема в том, что у меня нет возможности узнать о ходе этих миграций.Я выполняю ручную миграцию данных, я сделаю базовый i+=1;print("#{i},"), чтобы отследить, как далеко он продвинулся, и убедиться, что он все еще работает.что-то вроде этого с моей миграцией индексации, чтобы я мог отслеживать ее прогресс?

1 Ответ

1 голос
/ 16 февраля 2012

Вы можете разветвляться и создавать индекс в одном процессе, а информацию о ходе выполнения - в другом. Это будет выглядеть примерно так:

pid = fork {

  # do index creation here

}

child_pid = nil
begin
  child_pid = Process.waitpid(pid, Process::WNOHANG)

  # output progress info here

end while child_pid.nil?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...