jenkins内存溢出的一些解决过程
公司內(nèi)網(wǎng)測(cè)試jenkins服務(wù)器,最近總是出現(xiàn)PermGen space(內(nèi)存溢出)的問題,解決過程記錄如下
1、重啟jenkins查看日志:
3,?2017?10:54:54?udson.ExtensionFinder$Sezpoz?_find WARNING:?Failed?to?load?org.jenkinsci.plugins.github.pullrequest.events.impl.GitHubPRLabelExistsEvent$DescriptorImpl java.lang.InstantiationException:?java.lang.UnsupportedClassVersionError:?org/jenkinsci/plugins/github/pullrequest/events/impl/GitHubPRLabelExistsEvent$DescriptorImpl?:?Unsupported?major.minor?ve rsion?52.0at?net.java.sezpoz.IndexItem.element(IndexItem.java:146)at?hudson.ExtensionFinder$Sezpoz._find(ExtensionFinder.java:620)at?hudson.ExtensionFinder$Sezpoz.find(ExtensionFinder.java:609)at?hudson.ExtensionFinder$GuiceFinder.<init>(ExtensionFinder.java:257)at?sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native?Method)at?sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)at?sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)at?java.lang.reflect.Constructor.newInstance(Constructor.java:526)at?java.lang.Class.newInstance(Class.java:374)at?net.java.sezpoz.IndexItem.instance(IndexItem.java:181)at?hudson.ExtensionFinder$Sezpoz._find(ExtensionFinder.java:634)at?hudson.ExtensionFinder$Sezpoz.find(ExtensionFinder.java:609)at?hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:471)at?hudson.ExtensionList.load(ExtensionList.java:349)at?hudson.ExtensionList.ensureLoaded(ExtensionList.java:287)at?hudson.ExtensionList.getComponents(ExtensionList.java:167)at?jenkins.model.Jenkins$8.onInitMilestoneAttained(Jenkins.java:1016)at?jenkins.InitReactorRunner$1.onAttained(InitReactorRunner.java:80)at?org.jvnet.hudson.reactor.ReactorListener$Aggregator.onAttained(ReactorListener.java:104)at?org.jvnet.hudson.reactor.Reactor$1.run(Reactor.java:176)at?org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)at?java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)at?java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at?java.lang.Thread.run(Thread.java:745) Caused?by:?java.lang.UnsupportedClassVersionError:?org/jenkinsci/plugins/github/pullrequest/events/impl/GitHubPRLabelExistsEvent$DescriptorImpl?:?Unsupported?major.minor?version?52.0at?java.lang.ClassLoader.defineClass1(Native?Method)at?java.lang.ClassLoader.defineClass(ClassLoader.java:800)at?jenkins.util.AntClassLoader.defineClassFromData(AntClassLoader.java:1139)at?hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:878)at?jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310)at?jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1366)at?jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326)at?sun.reflect.GeneratedMethodAccessor21.invoke(Unknown?Source)at?sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at?java.lang.reflect.Method.invoke(Method.java:606)at?jenkins.ClassLoaderReflectionToolkit.invoke(ClassLoaderReflectionToolkit.java:44)at?jenkins.ClassLoaderReflectionToolkit._findClass(ClassLoaderReflectionToolkit.java:81)at?hudson.PluginManager$UberClassLoader.findClass(PluginManager.java:1738)at?java.lang.ClassLoader.loadClass(ClassLoader.java:425)at?java.lang.ClassLoader.loadClass(ClassLoader.java:358)at?net.java.sezpoz.IndexItem.element(IndexItem.java:134)發(fā)現(xiàn)了大量的有關(guān)github-pullrequest插件版本的報(bào)錯(cuò),懷疑是因?yàn)椴寮姹締栴}導(dǎo)致的,于是乎卸載了這個(gè)插件。重啟jenkins
問題依舊,啟動(dòng)日志報(bào)大量的這個(gè)插件的問題,然后各種百度沒有找到解決方案,仔細(xì)查看日志的報(bào)錯(cuò)位置,然后使用find在系統(tǒng)中搜索插件的名字
[root@phtfdata20?~]#?find?/?-name?github /root/.jenkins/plugins/github /root/.jenkins/plugins/github/META-INF/maven/com.coravy.hudson.plugins.github/github /root/.m2/repository/com/github然后進(jìn)入到j(luò)enkins的主目錄的plugins目錄中,刪除pull-requests目錄和pull-requests.jpi?文件,重啟jenkins,問題解決。
這次雖然不報(bào)版本錯(cuò)誤了,但是在執(zhí)行jenkins構(gòu)建時(shí),還是會(huì)出現(xiàn)內(nèi)存溢出現(xiàn)象。經(jīng)過觀察發(fā)現(xiàn),內(nèi)存溢出一定是多次構(gòu)建失敗才會(huì)出現(xiàn)。日志報(bào)錯(cuò):
INFO:?XXXXXXXXXXX?#14?main?build?action?completed:?FAILURE 3,?2017?11:04:15?udson.model.Run?execute INFO:?XXXXXXXXXXX?#13?main?build?action?completed:?FAILURE 3,?2017?11:05:05?udson.model.Run?execute INFO:?XXXXXXXXXXX?#5?main?build?action?completed:?SUCCESS 3,?2017?11:06:38?udson.model.Run?execute INFO:?XXXXXXXXXXX?#15?main?build?action?completed:?FAILURE 3,?2017?11:13:45?udson.model.Run?execute INFO:?XXXXXXXXXXX?#16?main?build?action?completed:?FAILURE 3,?2017?11:26:20?udson.model.Run?execute INFO:?XXXXXXXXXXX?#17?main?build?action?completed:?FAILURE 3,?2017?11:28:23?udson.ExpressionFactory2$JexlExpression?evaluate WARNING:?Caught?exception?evaluating:?instance[name]??:?attrs.default?in?/jenkins/configure.?Reason:?java.lang.reflect.InvocationTargetException java.lang.reflect.InvocationTargetExceptionat?sun.reflect.NativeMethodAccessorImpl.invoke0(Native?Method)at?sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at?sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at?java.lang.reflect.Method.invoke(Method.java:606)at?org.apache.commons.jexl.util.PropertyExecutor.execute(PropertyExecutor.java:125)at?org.apache.commons.jexl.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:314)at?org.apache.commons.jexl.parser.ASTArrayAccess.evaluateExpr(ASTArrayAccess.java:185)at?org.apache.commons.jexl.parser.ASTArrayAccess.value(ASTArrayAccess.java:118)at?org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:77)at?org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)at?org.apache.commons.jexl.parser.ASTElvisNode.value(ASTElvisNode.java:37)at?org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:54)at?org.apache.commons.jexl.parser.ASTExpressionExpression.value(ASTExpressionExpression.java:56)at?org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)at?hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:74)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$3.run(CoreTagLibrary.java:134)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.WhenTag.doTag(WhenTag.java:46)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.WhenTag.doTag(WhenTag.java:46)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:95)at?org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:147)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.OtherwiseTag.doTag(OtherwiseTag.java:41)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:95)at?org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63)at?org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53)at?org.kohsuke.stapler.jelly.JellyFacet$1.dispatch(JellyFacet.java:95)at?org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)at?org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)at?org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)at?org.kohsuke.stapler.Stapler.service(Stapler.java:238)at?javax.servlet.http.HttpServlet.service(HttpServlet.java:727)at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)at?org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)at?hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)at?hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)at?hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:49)at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)at?hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)at?hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)at?hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)at?jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)at?hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)at?org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)at?hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)at?org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)at?hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)at?org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)at?hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)at?jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)at?hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)at?org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)at?hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)at?hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)at?hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)at?hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)at?org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)at?hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)at?org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)at?org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)at?org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)at?org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:612)at?org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)at?org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)at?org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)at?org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)at?org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)at?org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)at?org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)at?org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)at?java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)at?java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)at?org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)at?java.lang.Thread.run(Thread.java:745) Caused?by:?java.lang.OutOfMemoryError:?PermGen?spaceat?java.lang.ClassLoader.defineClass1(Native?Method)at?java.lang.ClassLoader.defineClass(ClassLoader.java:800)at?jenkins.util.AntClassLoader.defineClassFromData(AntClassLoader.java:1139)at?hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:878)at?jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310)at?jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1366)at?jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326)at?jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079)at?java.lang.ClassLoader.loadClass(ClassLoader.java:358)at?org.skife.jdbi.v2.sqlobject.SqlObject.<clinit>(SqlObject.java:38)at?org.skife.jdbi.v2.sqlobject.SqlObjectBuilder.attach(SqlObjectBuilder.java:38)at?org.skife.jdbi.v2.BasicHandle.attach(BasicHandle.java:408)at?com.epam.jenkins.deployment.sphere.plugin.metadata.persistence.dao.ApplicationDao.findAll(ApplicationDao.java:38)at?com.epam.jenkins.deployment.sphere.plugin.GlobalJobProperty$CustomViewsTabBarDescriptor.getApplications(GlobalJobProperty.java:69)at?sun.reflect.NativeMethodAccessorImpl.invoke0(Native?Method)at?sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at?sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at?java.lang.reflect.Method.invoke(Method.java:606)at?org.apache.commons.jexl.util.PropertyExecutor.execute(PropertyExecutor.java:125)at?org.apache.commons.jexl.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:314)at?org.apache.commons.jexl.parser.ASTArrayAccess.evaluateExpr(ASTArrayAccess.java:185)at?org.apache.commons.jexl.parser.ASTArrayAccess.value(ASTArrayAccess.java:118)at?org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:77)at?org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)at?org.apache.commons.jexl.parser.ASTElvisNode.value(ASTElvisNode.java:37)at?org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:54)at?org.apache.commons.jexl.parser.ASTExpressionExpression.value(ASTExpressionExpression.java:56)at?org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)at?hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:74)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$3.run(CoreTagLibrary.java:134)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)3,?2017?11:28:25?udson.ExpressionFactory2$JexlExpression?evaluate WARNING:?Caught?exception?evaluating:?instance[name]??:?attrs.default?in?/jenkins/configure.?Reason:?java.lang.reflect.InvocationTargetException java.lang.reflect.InvocationTargetExceptionat?sun.reflect.NativeMethodAccessorImpl.invoke0(Native?Method)at?sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at?sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at?java.lang.reflect.Method.invoke(Method.java:606)at?org.apache.commons.jexl.util.PropertyExecutor.execute(PropertyExecutor.java:125)at?org.apache.commons.jexl.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:314)at?org.apache.commons.jexl.parser.ASTArrayAccess.evaluateExpr(ASTArrayAccess.java:185)at?org.apache.commons.jexl.parser.ASTArrayAccess.value(ASTArrayAccess.java:118)at?org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:77)at?org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)at?org.apache.commons.jexl.parser.ASTElvisNode.value(ASTElvisNode.java:37)at?org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:54)at?org.apache.commons.jexl.parser.ASTExpressionExpression.value(ASTExpressionExpression.java:56)at?org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)at?hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:74)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$3.run(CoreTagLibrary.java:134)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.WhenTag.doTag(WhenTag.java:46)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)at?org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)at?org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.WhenTag.doTag(WhenTag.java:46)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)at?org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)at?org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)at?org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)at?org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)2、查看系統(tǒng)狀態(tài)
發(fā)現(xiàn)jenkins的進(jìn)程占用內(nèi)存大,系統(tǒng)負(fù)載高。
3、對(duì)jenkins進(jìn)行調(diào)優(yōu)
catalina.sh加入?yún)?shù)
JAVA_OPTS="-server?-Xms1024m?-Xmx2048m?-XX:PermSize=256m?-XX:MaxPermSize=512m"重啟jenkins之后觀察內(nèi)存溢出問題依舊
4、將外網(wǎng)測(cè)試的jenkins取項(xiàng)目取到內(nèi)網(wǎng)服務(wù)器上,啟動(dòng)jenkins,觀察2個(gè)小時(shí),內(nèi)存溢出問題解決。
總結(jié):外網(wǎng)測(cè)試的jenkins版本和內(nèi)網(wǎng)的一樣,所以目前也不清楚到底是什么原因?qū)е碌膬?nèi)存溢出。百度之后的結(jié)果也不盡人意。。。
轉(zhuǎn)載于:https://blog.51cto.com/gouyc/1941395
總結(jié)
以上是生活随笔為你收集整理的jenkins内存溢出的一些解决过程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 运维调试记录:Opendaylight铍
- 下一篇: 深度优先算法--判断迷宫的一个起点能否到