2012-02-15 52 views
0

我打算在幾個字段上爲我的1億行(ruby on rails)數據庫編制索引,問題是我無法知道這些遷移的進度。RoR:監控索引遷移

通常,如果我正在運行手動數據遷移,我會執行一個基本的i+=1;print("#{i},")以跟蹤它的走向,並確保它仍在工作。

有誰知道是否有辦法通過我的索引遷移來做這樣的事情,所以我可以監控它的進度?

回答

1

您可以在一個進程中創建索引並在另一個進程中輸出進度信息。它看起來像這樣:

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?