High CPU from StandardContext.backgroundProcess & WebappLoader.modified in ContainerBackgroundProcessor thread
Issue
- We see high CPU from the following in the ContainerBackgroundProcessor thread on Tomcat:
"ContainerBackgroundProcessor[StandardEngine[Catalina]]" #72 daemon prio=5 os_prio=0 tid=0x00007f07438e2000 nid=0x4c5d runnable [0x00007f06f5a6a000]
java.lang.Thread.State: RUNNABLE
at java.io.UnixFileSystem.canonicalize0(Native Method)
at java.io.UnixFileSystem.canonicalize(UnixFileSystem.java:172)
at java.io.File.getCanonicalPath(File.java:618)
at org.apache.catalina.webresources.AbstractFileResourceSet.file(AbstractFileResourceSet.java:90)
at org.apache.catalina.webresources.DirResourceSet.getResource(DirResourceSet.java:101)
at org.apache.catalina.webresources.StandardRoot.getResourceInternal(StandardRoot.java:281)
at org.apache.catalina.webresources.Cache.getResource(Cache.java:62)
at org.apache.catalina.webresources.StandardRoot.getResource(StandardRoot.java:216)
at org.apache.catalina.webresources.StandardRoot.getClassLoaderResource(StandardRoot.java:225)
at org.apache.catalina.loader.WebappClassLoaderBase.modified(WebappClassLoaderBase.java:692)
at org.apache.catalina.loader.WebappLoader.modified(WebappLoader.java:343)
at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:287)
at org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:5422)
Environment
- JBoss Enterprise Web Server (JWS)
- 3.x
- Tomcat 7.0.x
- Tomcat 8.0.x
- 5.x
- Tomcat 9.0.x
- 3.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.