2015-04-21 53 views
3

我有一個DSpace的服務器,從4.3版本uprading到5.1後,它不斷將停止與以下錯誤幾個小時後工作:恆dSPACE的錯誤java.lang.OutOfMemoryError:Java堆空間

java.lang.OutOfMemoryError: Java heap space

我已經閱讀同樣問題的答案,但他們沒有幫助我。

我JAVA_OPTS:-Xmx4096M -Xms4096M -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8

這裏是我的日誌:

我在網上搜索了一個解決方案,找不到一個,有沒有人有線索?

+0

配置JVM在OOM上放置磁頭轉儲,然後檢查該轉儲是否存在可能的嫌疑犯。使用它和源代碼,試圖找出是否存在泄漏或堆的低效使用。 – jdv

+1

這是DSpace實例的重要分配。你能確認tomcat實際上是使用你分配的分配嗎? – terrywb

回答

0

你的tomcat日誌文件相當清楚地說,這是不使用你傳遞在JAVA_OPTS:

INFO: Command line argument: -Xmx256m

以我的經驗,DSpace的5個需要至少512MB;你的4GB看起來有點過分,除非你的DSpace實例很大/有很多流量。

你沒有告訴我們你正在使用什麼操作系統,所以很難就如何正確設置這些操作系統給出建議。從你的tomcat啓動腳本和/或tomcat配置文件開始。在我的紅帽企業Linux 6.6框中(使用tomcat6),內存設置的正確位置是/etc/tomcat6/tomcat6.conf

+0

我認爲相關的數字是在最大堆設置'-Xmx256m'而不是起始堆大小,但同樣的問題。 – msandiford

+0

哦,非常感謝,它應該在tomcat的服務屬性(Windows操作系統)中進行配置......我希望這會有所幫助。 – Eugene

+0

@msandiford是的,我發佈後發現我選擇了-Xms,當我選擇-Xmx時,但是顯示JAVA_OPTS沒有被使用。 – schweerelos

相關問題