2016-04-20 2 views
1

Я использую Ubuntu 12.04 с jenkins в качестве сервера непрерывной интеграции и установил и установил SonarQube. Сонар работал в течение большого количества времени, но в последнее время служба будет отключена сразу после запуска службы. Я использую Sonar 5.3, а мой сервер имеет 4 ГБ оперативной памяти, где большую часть времени занимает только 1-2 ГБ.Запуск Sonar-Service - java.lang.OutOfMemoryError: превышен верхний предел GC Ubuntu

sonar.log говорит:

WrapperSimpleApp: Encountered an error running main: java.lang.OutOfMemoryError: GC overhead limit exceeded 
java.lang.OutOfMemoryError: GC overhead limit exceeded 
at java.lang.StringCoding$StringDecoder.decode(StringCoding.java:149) 
at java.lang.StringCoding.decode(StringCoding.java:193) 
at java.lang.String.<init>(String.java:426) 
at java.lang.String.<init>(String.java:491) 
at java.io.UnixFileSystem.list(Native Method) 
at java.io.File.list(File.java:1122) 
at java.io.File.listFiles(File.java:1207) 
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1645) 
at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535) 
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270) 
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653) 
at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535) 
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270) 
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653) 
at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535) 
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270) 
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653) 
at org.apache.commons.io.FileUtils.deleteQuietly(FileUtils.java:1566) 
at org.sonar.application.PropsBuilder.initTempDir(PropsBuilder.java:102) 
at org.sonar.application.PropsBuilder.build(PropsBuilder.java:73) 
at org.sonar.application.App.main(App.java:115) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:498) 
at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240) 
at java.lang.Thread.run(Thread.java:745) 
<-- Wrapper Stopped 

Я гугл для решения, но они предлагают увеличить кучный размер при запуске .jar файла через командную строку, но файл, который определяет сонар-сервис в /etc/init.d оленьей кожи даже запустите файл .jar.

+0

Просьба поделиться более подробной информацией: версия SonarQube? полный 'sonar.log'? (одной строки недостаточно) доступной ОЗУ на вашей машине Ubuntu? –

+0

Следующая команда java -XshowSettings: vm говорит следующее: Макс. Размер кучи (приблизительный): 880,00M. – dekojo

ответ

5

Это выглядит как SONAR-7125, закрепленный в SonarQube 5.4. Обходной путь заключается в том, чтобы удалить временную папку вручную перед перезагрузкой.

+0

Спасибо, после обновления до SonarQube 5.4 эта проблема была решена! – dekojo

+0

Спасибо за хороший обходной путь, это действительно полезно :) –