Sharing another stack to see if this can give any more insights.this thread is 
the tomcat main thread was loading about 65MB of data.

"main" #1 prio=5 os_prio=0
   java.lang.Thread.State: RUNNABLE
              at java.util.zip.ZipFile.getEntry(Native Method)
              at java.util.zip.ZipFile.getEntry(ZipFile.java:328)
              - locked <0x00000000a1b04418> (a java.util.jar.JarFile)
              at java.util.jar.JarFile.getEntry(JarFile.java:253)
              at java.util.jar.JarFile.getJarEntry(JarFile.java:236)
              at 
org.apache.catalina.webresources.AbstractSingleArchiveResourceSet.getArchiveEntry(AbstractSingleArchiveResourceSet.java:97)
              at 
org.apache.catalina.webresources.AbstractArchiveResourceSet.getResource(AbstractArchiveResourceSet.java:249)
              at 
org.apache.catalina.webresources.StandardRoot.getResourceInternal(StandardRoot.java:272)
              at 
org.apache.catalina.webresources.StandardRoot.getResource(StandardRoot.java:213)
              at 
org.apache.catalina.webresources.StandardRoot.getClassLoaderResource(StandardRoot.java:220)
              at 
org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2348)
              at 
org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:875)
              at 
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1376)
              - locked <0x00000000f24fc728> (a java.lang.Object)
              at 
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1220)
              at java.lang.Class.forName0(Native Method)
              at java.lang.Class.forName(Class.java:348)
              at com.sun.beans.finder.ClassFinder.findClass(ClassFinder.java:67)
              at 
com.sun.beans.finder.ClassFinder.findClass(ClassFinder.java:110)
              at 
com.sun.beans.finder.InstanceFinder.instantiate(InstanceFinder.java:93)
              at 
com.sun.beans.finder.InstanceFinder.find(InstanceFinder.java:66)
              at 
java.beans.Introspector.findExplicitBeanInfo(Introspector.java:448)
              at java.beans.Introspector.<init>(Introspector.java:398)
              at java.beans.Introspector.getBeanInfo(Introspector.java:173)
              at 
org.springframework.beans.CachedIntrospectionResults.getBeanInfo(CachedIntrospectionResults.java:255)


Regards

Jalaj

From: Jalaj Asher
Sent: Wednesday, July 10, 2024 4:19 PM
To: users@tomcat.apache.org
Subject: Reg: tomcat CPU spikes

Hello,
We are using tomcat version 9.0.80.

We are seeing intermittent CPU spikes with the requests  having the following 
stack and it is also causing disk spikes on our end because of this call stack .

at java.util.zip.ZipFile.getEntry(Native Method)
at java.util.zip.ZipFile.getEntry(ZipFile.java:328)
- locked <0x00000000bb4fbf08> (a java.util.jar.JarFile)
at java.util.jar.JarFile.getEntry(JarFile.java:253)
at java.util.jar.JarFile.getJarEntry(JarFile.java:236)
at 
org.apache.catalina.webresources.AbstractSingleArchiveResourceSet.getArchiveEntry(AbstractSingleArchiveResourceSet.java:97)
at 
org.apache.catalina.webresources.AbstractArchiveResourceSet.getResource(AbstractArchiveResourceSet.java:249)
at 
org.apache.catalina.webresources.StandardRoot.getResourcesInternal(StandardRoot.java:316)
at 
org.apache.catalina.webresources.StandardRoot.getResources(StandardRoot.java:307)
at 
org.apache.catalina.webresources.StandardRoot.getClassLoaderResources(StandardRoot.java:226)
at 
org.apache.catalina.loader.WebappClassLoaderBase.findResources(WebappClassLoaderBase.java:1009)
at 
org.apache.catalina.loader.WebappClassLoaderBase.getResources(WebappClassLoaderBase.java:1110)
at java.util.ServiceLoader$LazyIterator.hasNextService(ServiceLoader.java:348)
at java.util.ServiceLoader$LazyIterator.hasNext(ServiceLoader.java:393)
at java.util.ServiceLoader$1.hasNext(ServiceLoader.java:474)
at javax.xml.parsers.FactoryFinder$1.run(FactoryFinder.java:293)
at java.security.AccessController.doPrivileged(Native Method)

these are the runnable threads.

Wanted to get some understanding to see when does tomcat access the 
archiveresourceset and why is it calling getjarentry and zip file entry and any 
suggestions to address this issue ?

Would appreciate any help with this review.

Regards

Jalaj

CONFIDENTIALITY NOTICE TO RECIPIENT: This transmission contains confidential 
information belonging to the sender that is legally privileged and proprietary 
and may be subject to protection under the law, including the Health Insurance 
Portability and Accountability Act (HIPAA). If you are not the intended 
recipient of this e-mail, you are prohibited from sharing, copying, or 
otherwise using or disclosing its contents. If you have received this e-mail in 
error, please notify the sender immediately by reply e-mail and permanently 
delete this e-mail and any attachments without reading, forwarding or saving 
them. Thank you.

Reply via email to