版本:IBM InfoSphere DataStage V11.3.1
作業系統:linux redhat 6.4 情境:
最近開發環境,DS 作業運行不顯示資料狀態(即Link顏色變化以及資料量),同時在監控中看到的資訊都是READY。最開始解決辦法,重啟伺服器之後,可以解決該問題,但是過段時間該問題又會產生。 問題描述:
作業運行不顯示資料流狀態和資料量,同時在director 點擊monitor看到作業狀態如下:
在作業運行之後,日誌資訊可以看到如下預警: Warning main_program: failed to initialize job monitoring. Monitor information will not be generated. Warning: Failed to connect to JobMonApp on port 13401 問題分析:
查看JobMonApp.log in $PXEngine/java 日誌 可以看出。是記憶體溢出了。
在IBM官網找了一篇記錄該問題情況:
http://www-01.ibm.com/support/docview.wss?uid=swg21508253
說是OutOfMemoryError(記憶體溢出)。修正$PXEngine/java 下的jobmoninit 檔案。最終問題得到解決。
以下是和IBM DS顧問諮詢資訊,解釋以上情況發生原因:
java monitor的heap 記憶體區不足導致 jobmonitor的應用停止。需要提高heap的大小 ,如代碼-Xmx512m就是加大heap記憶體區 。重啟系統的之後,這個應用記憶體被釋放了,所以重啟之後,該問題會暫時解決。但是在大批量調度作業還是會發生該問題。
http://blog.csdn.net/softwave/article/details/6238747 –這個部落格是關於Java堆記憶體Heap與非堆記憶體Non-Heap 學習 問題解決:
在DS服務端路徑/ds/informationServer/Server/PXEngine/java 找到檔案jobmoninit 增加標紅內容: 註:256,512,768,1024 這樣加。