Details
-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
1.1.3
-
None
-
java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) uname -r 2.6.32-504.30.3.el6.x86_64
jinfo
Attaching to process ID 10786, please wait... Debugger attached successfully. Server compiler detected. JVM version is 25.45-b02 Java System Properties: java.vendor = Oracle Corporation sun.java.launcher = SUN_STANDARD catalina.base = /tmp/tomcat.3682779737098545581.8686 sun.management.compiler = HotSpot 64-Bit Tiered Compilers catalina.useNaming = false rest.poolMaxTotal = 8 os.name = Linux sun.boot.class.path = /usr/java/jdk1.8.0_45/jre/lib/resources.jar:/usr/java/jdk1.8.0_45/jre/lib/rt.jar:/usr/java/jdk1.8.0_45/jre/lib/sunrsasign.jar:/usr/java/jdk1.8.0_45/jre/lib/jsse.jar:/usr/java/jdk1.8.0_45/jre/lib/jce.jar:/usr/java/jdk1.8.0_45/jre/lib/charsets.jar:/usr/java/jdk1.8.0_45/jre/lib/jfr.jar:/usr/java/jdk1.8.0_45/jre/classes java.vm.specification.vendor = Oracle Corporation java.runtime.version = 1.8.0_45-b14 user.language = en sun.boot.library.path = /usr/java/jdk1.8.0_45/jre/lib/amd64 com.sun.management.jmxremote.port = 3334 PID = 10786 java.version = 1.8.0_45 sun.arch.data.model = 64 rest.poolMaxPerRoute = 8 java.endorsed.dirs = /usr/java/jdk1.8.0_45/jre/lib/endorsed java.rmi.server.randomIDs = true sun.cpu.isalist = sun.jnu.encoding = UTF-8 file.encoding.pkg = sun.io file.separator = / java.specification.name = Java Platform API Specification java.class.version = 52.0 user.country = US java.home = /usr/java/jdk1.8.0_45/jre java.vm.info = mixed mode os.version = 2.6.32-504.30.3.el6.x86_64 rest.server.nio2.enabled = false com.sun.management.jmxremote.ssl = false path.separator = : java.vm.version = 25.45-b02 org.jboss.logging.provider = slf4j java.protocol.handler.pkgs = null|org.springframework.boot.loader java.awt.printerjob = sun.print.PSPrinterJob sun.io.unicode.encoding = UnicodeLittle awt.toolkit = sun.awt.X11.XToolkit com.sun.management.jmxremote.authenticate = false java.security.egd = file:/dev/./urandom user.home = /home/wmapp java.specification.vendor = Oracle Corporation java.library.path = /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib java.vendor.url = http://java.oracle.com/ java.vm.vendor = Oracle Corporation java.runtime.name = Java(TM) SE Runtime Environment sun.java.command = server-start-2.0.0.jar --spring.config.location=classpath:/application-internal.properties java.class.path = server-start-2.0.0.jar java.vm.specification.name = Java Virtual Machine Specification java.vm.specification.version = 1.8 catalina.home = /tmp/tomcat.3682779737098545581.8686 sun.cpu.endian = little sun.os.patch.level = unknown java.awt.headless = true java.io.tmpdir = /tmp java.vendor.url.bug = http://bugreport.sun.com/bugreport/ os.arch = amd64 java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment java.ext.dirs = /usr/java/jdk1.8.0_45/jre/lib/ext:/usr/java/packages/lib/ext user.dir = /home/wmapp/ line.separator = java.vm.name = Java HotSpot(TM) 64-Bit Server VM file.encoding = UTF-8 java.specification.version = 1.8 DIRECTORY_PATH_LOGS = /home/wmapp/hb2/ VM Flags: Non-default VM flags: -XX:CICompilerCount=4 -XX:ConcGCThreads=2 -XX:G1HeapRegionSize=1048576 -XX:InitialHeapSize=2147483648 -XX:+ManagementServer -XX:MarkStackSize=4194304 -XX:MaxGCPauseMillis=50 -XX:MaxHeapSize=4294967296 -XX:MaxNewSize=2576351232 -XX:MinHeapDeltaBytes=1048576 -XX:+OptimizeStringConcat -XX:+PrintGC -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseG1GC -XX:+UseTLAB Command line: -XX:+UseG1GC -Xmx4g -Xms2g -verbose:gc -XX:MaxGCPauseMillis=50 -XX:+UseTLAB -XX:+UseCompressedOops -XX:+OptimizeStringConcat -Djava.security.egd=file:/dev/./urandom -Dcom.sun.management.jmxremote.port=3334 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) uname -r 2.6.32-504.30.3.el6.x86_64 jinfo Attaching to process ID 10786, please wait... Debugger attached successfully. Server compiler detected. JVM version is 25.45-b02 Java System Properties: java.vendor = Oracle Corporation sun.java.launcher = SUN_STANDARD catalina.base = /tmp/tomcat.3682779737098545581.8686 sun.management.compiler = HotSpot 64-Bit Tiered Compilers catalina.useNaming = false rest.poolMaxTotal = 8 os.name = Linux sun.boot.class.path = /usr/java/jdk1.8.0_45/jre/lib/resources.jar:/usr/java/jdk1.8.0_45/jre/lib/rt.jar:/usr/java/jdk1.8.0_45/jre/lib/sunrsasign.jar:/usr/java/jdk1.8.0_45/jre/lib/jsse.jar:/usr/java/jdk1.8.0_45/jre/lib/jce.jar:/usr/java/jdk1.8.0_45/jre/lib/charsets.jar:/usr/java/jdk1.8.0_45/jre/lib/jfr.jar:/usr/java/jdk1.8.0_45/jre/classes java.vm.specification.vendor = Oracle Corporation java.runtime.version = 1.8.0_45-b14 user.language = en sun.boot.library.path = /usr/java/jdk1.8.0_45/jre/lib/amd64 com.sun.management.jmxremote.port = 3334 PID = 10786 java.version = 1.8.0_45 sun.arch.data.model = 64 rest.poolMaxPerRoute = 8 java.endorsed.dirs = /usr/java/jdk1.8.0_45/jre/lib/endorsed java.rmi.server.randomIDs = true sun.cpu.isalist = sun.jnu.encoding = UTF-8 file.encoding.pkg = sun.io file.separator = / java.specification.name = Java Platform API Specification java.class.version = 52.0 user.country = US java.home = /usr/java/jdk1.8.0_45/jre java.vm.info = mixed mode os.version = 2.6.32-504.30.3.el6.x86_64 rest.server.nio2.enabled = false com.sun.management.jmxremote.ssl = false path.separator = : java.vm.version = 25.45-b02 org.jboss.logging.provider = slf4j java.protocol.handler.pkgs = null|org.springframework.boot.loader java.awt.printerjob = sun.print.PSPrinterJob sun.io.unicode.encoding = UnicodeLittle awt.toolkit = sun.awt.X11.XToolkit com.sun.management.jmxremote.authenticate = false java.security.egd = file:/dev/./urandom user.home = /home/wmapp java.specification.vendor = Oracle Corporation java.library.path = /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib java.vendor.url = http://java.oracle.com/ java.vm.vendor = Oracle Corporation java.runtime.name = Java(TM) SE Runtime Environment sun.java.command = server-start-2.0.0.jar --spring.config.location=classpath:/application-internal.properties java.class.path = server-start-2.0.0.jar java.vm.specification.name = Java Virtual Machine Specification java.vm.specification.version = 1.8 catalina.home = /tmp/tomcat.3682779737098545581.8686 sun.cpu.endian = little sun.os.patch.level = unknown java.awt.headless = true java.io.tmpdir = /tmp java.vendor.url.bug = http://bugreport.sun.com/bugreport/ os.arch = amd64 java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment java.ext.dirs = /usr/java/jdk1.8.0_45/jre/lib/ext:/usr/java/packages/lib/ext user.dir = /home/wmapp/ line.separator = java.vm.name = Java HotSpot(TM) 64-Bit Server VM file.encoding = UTF-8 java.specification.version = 1.8 DIRECTORY_PATH_LOGS = /home/wmapp/hb2/ VM Flags: Non-default VM flags: -XX:CICompilerCount=4 -XX:ConcGCThreads=2 -XX:G1HeapRegionSize=1048576 -XX:InitialHeapSize=2147483648 -XX:+ManagementServer -XX:MarkStackSize=4194304 -XX:MaxGCPauseMillis=50 -XX:MaxHeapSize=4294967296 -XX:MaxNewSize=2576351232 -XX:MinHeapDeltaBytes=1048576 -XX:+OptimizeStringConcat -XX:+PrintGC -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseG1GC -XX:+UseTLAB Command line: -XX:+UseG1GC -Xmx4g -Xms2g -verbose:gc -XX:MaxGCPauseMillis=50 -XX:+UseTLAB -XX:+UseCompressedOops -XX:+OptimizeStringConcat -Djava.security.egd=file:/dev/./urandom -Dcom.sun.management.jmxremote.port=3334 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
Description
After 5 hours of running of my application I can see that running of this thread consumes 100% CPU and because of that my mythod is synchronized, it blocks my application forever. I thing the problem is with PackagingDataCalculator.populateFrames and preparing of stack trace.
I use pattern
%d{yyyy-MM-dd HH:mm:ss.SSS}|%thread| %m%n%nopex
"http-nio-8686-exec-174" #231 daemon prio=5 os_prio=0 tid=0x0000000000ced800 nid=0x3132 runnable [0x00007f76c6160000] java.lang.Thread.State: RUNNABLE at java.lang.Throwable.fillInStackTrace(Native Method) at java.lang.Throwable.fillInStackTrace(Throwable.java:783) - locked <0x0000000710577e68> (a java.lang.Throwable) at java.lang.Throwable.<init>(Throwable.java:265) at ch.qos.logback.classic.spi.PackagingDataCalculator.populateFrames(PackagingDataCalculator.java:71) at ch.qos.logback.classic.spi.PackagingDataCalculator.calculate(PackagingDataCalculator.java:57) at ch.qos.logback.classic.spi.ThrowableProxy.calculatePackagingData(ThrowableProxy.java:147) at ch.qos.logback.classic.spi.LoggingEvent.<init>(LoggingEvent.java:124) at ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:440) at ch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(Logger.java:396) at ch.qos.logback.classic.Logger.warn(Logger.java:725) at org.myapp.r.impl.Manager.create(Manager.java:104) - locked <0x00000006c1b4e5a0> (a org.myapp.r.impl.Manager) at org.myapp.r.impl.Manager$$FastClassBySpringCGLIB$$8f0fc1fb.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:97) at org.myapp.service.ServerNotifierImpl.logAround(ServerNotifierImpl.java:95) at sun.reflect.GeneratedMethodAccessor29.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610) at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:68) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) at org.myapp.r.impl.Manager$$EnhancerBySpringCGLIB$$a26ad0d3.create(<generated>) at org.myapp.service.RestLineCreateController.create(RestLineCreateController.java:101) at org.myapp.service.RestLineCreateController$$FastClassBySpringCGLIB$$d8fabc30.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:97) at org.myapp.service.DebugInterceptor.logAround(DebugInterceptor.java:29) at sun.reflect.GeneratedMethodAccessor61.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610) at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:68) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) at org.myapp.service.RestLineCreateController$$EnhancerBySpringCGLIB$$7ee0c168.create(<generated>) at sun.reflect.GeneratedMethodAccessor62.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:776) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:705) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868) at javax.servlet.http.HttpServlet.service(HttpServlet.java:644) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842) at javax.servlet.http.HttpServlet.service(HttpServlet.java:725) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.boot.actuate.autoconfigure.EndpointWebMvcAutoConfiguration$ApplicationContextHeaderFilter.doFilterInternal(EndpointWebMvcAutoConfiguration.java:291) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.boot.actuate.trace.WebRequestTraceFilter.doFilterInternal(WebRequestTraceFilter.java:102) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:85) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.boot.actuate.autoconfigure.MetricFilterAutoConfiguration$MetricsFilter.doFilterInternal(MetricFilterAutoConfiguration.java:90) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:516) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1086) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:659) at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:223) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1558) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1515) - locked <0x00000006e40572f8> (a org.apache.tomcat.util.net.NioChannel) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - <0x00000006e2b01140> (a java.util.concurrent.ThreadPoolExecutor$Worker)