]
Brent Douglas updated WFCORE-1845:
----------------------------------
Issue Type: Bug (was: Feature Request)
Logging subsystem scans the CWD on server boot
----------------------------------------------
Key: WFCORE-1845
URL:
https://issues.jboss.org/browse/WFCORE-1845
Project: WildFly Core
Issue Type: Bug
Components: Logging
Affects Versions: 2.0.10.Final
Environment: OSX El Capitan, Oracle JDK 1.8.0_92 && 101, swarm 2016.8.1,
WF 10.0.0.Final, WF-CORE 2.0.10.Final
Reporter: Brent Douglas
Assignee: James Perkins
When booting the server from a directory where the subtree is large the server hangs for
a long time. JStack shows that the logging subsystem is scanning the CWD.
Booting the server from the root dir of a maven parent project containing 2 subprojects,
a swarm project and a small NPM subproject added 33s to the server boot time compared to
stepping into the swarm project and booting it.
Stacktrace while the server is booting:
{noformat}
Thread 25859: (state = IN_NATIVE)
- sun.nio.fs.UnixNativeDispatcher.lstat0(long, sun.nio.fs.UnixFileAttributes) @bci=0
(Compiled frame; information may be imprecise)
- sun.nio.fs.UnixNativeDispatcher.lstat(sun.nio.fs.UnixPath,
sun.nio.fs.UnixFileAttributes) @bci=10, line=300 (Compiled frame)
- sun.nio.fs.UnixFileAttributes.get(sun.nio.fs.UnixPath, boolean) @bci=22, line=72
(Compiled frame)
- sun.nio.fs.UnixFileAttributeViews$Basic.readAttributes() @bci=15, line=52 (Compiled
frame)
- sun.nio.fs.UnixFileSystemProvider.readAttributes(java.nio.file.Path, java.lang.Class,
java.nio.file.LinkOption[]) @bci=57, line=144 (Compiled frame)
- java.nio.file.Files.readAttributes(java.nio.file.Path, java.lang.Class,
java.nio.file.LinkOption[]) @bci=7, line=1737 (Compiled frame)
- java.nio.file.FileTreeWalker.getAttributes(java.nio.file.Path, boolean) @bci=56,
line=219 (Compiled frame)
- java.nio.file.FileTreeWalker.visit(java.nio.file.Path, boolean, boolean) @bci=3,
line=276 (Compiled frame)
- java.nio.file.FileTreeWalker.next() @bci=134, line=372 (Compiled frame)
- java.nio.file.Files.walkFileTree(java.nio.file.Path, java.util.Set, int,
java.nio.file.FileVisitor) @bci=256, line=2706 (Compiled frame)
- java.nio.file.Files.walkFileTree(java.nio.file.Path, java.nio.file.FileVisitor)
@bci=9, line=2742 (Interpreted frame)
- org.jboss.as.logging.LoggingResource.findFiles(java.lang.String,
org.jboss.dmr.ModelNode, boolean) @bci=47, line=251 (Interpreted frame)
- org.jboss.as.logging.LoggingResource.getChildrenNames(java.lang.String) @bci=37,
line=157 (Interpreted frame)
- org.jboss.as.logging.LoggingResource.getChildren(java.lang.String) @bci=11, line=171
(Interpreted frame)
-
org.jboss.as.controller.registry.AbstractModelResource$DelegateResource.getChildren(java.lang.String)
@bci=5, line=362 (Interpreted frame)
-
org.jboss.as.controller.registry.Resource$Tools.readModel(org.jboss.as.controller.PathAddress,
org.jboss.as.controller.registry.Resource, int,
org.jboss.as.controller.registry.ResourceFilter) @bci=99, line=289 (Interpreted frame)
-
org.jboss.as.controller.registry.Resource$Tools.readModel(org.jboss.as.controller.registry.Resource,
int, org.jboss.as.controller.registry.ResourceFilter) @bci=19, line=276 (Interpreted
frame)
-
org.jboss.as.controller.registry.Resource$Tools.readModel(org.jboss.as.controller.registry.Resource,
int) @bci=5, line=262 (Interpreted frame)
-
org.jboss.as.controller.registry.Resource$Tools.readModel(org.jboss.as.controller.PathAddress,
org.jboss.as.controller.registry.Resource, int,
org.jboss.as.controller.registry.ResourceFilter) @bci=189, line=291 (Interpreted frame)
-
org.jboss.as.controller.registry.Resource$Tools.readModel(org.jboss.as.controller.registry.Resource,
int, org.jboss.as.controller.registry.ResourceFilter) @bci=19, line=276 (Interpreted
frame)
-
org.jboss.as.controller.registry.Resource$Tools.readModel(org.jboss.as.controller.registry.Resource,
int) @bci=5, line=262 (Interpreted frame)
-
org.jboss.as.controller.registry.Resource$Tools.readModel(org.jboss.as.controller.registry.Resource)
@bci=2, line=250 (Interpreted frame)
-
org.jboss.as.controller.ModelControllerImpl.writeModel(org.jboss.as.controller.ModelControllerImpl$ManagementModelImpl,
java.util.Set) @bci=19, line=769 (Interpreted frame)
- org.jboss.as.controller.OperationContextImpl.createPersistenceResource() @bci=17,
line=519 (Interpreted frame)
-
org.jboss.as.controller.AbstractOperationContext.executeDoneStage(org.jboss.dmr.ModelNode)
@bci=22, line=708 (Interpreted frame)
- org.jboss.as.controller.AbstractOperationContext.processStages() @bci=277, line=680
(Interpreted frame)
- org.jboss.as.controller.AbstractOperationContext.executeOperation() @bci=27, line=370
(Interpreted frame)
- org.jboss.as.controller.OperationContextImpl.executeOperation() @bci=20, line=1344
(Interpreted frame)
- org.jboss.as.controller.ModelControllerImpl.boot(java.util.List,
org.jboss.as.controller.client.OperationMessageHandler,
org.jboss.as.controller.ModelController$OperationTransactionControl, boolean,
org.jboss.as.controller.extension.MutableRootResourceRegistrationProvider, boolean,
boolean) @bci=410, line=485 (Interpreted frame)
- org.jboss.as.controller.AbstractControllerService.boot(java.util.List, boolean,
boolean, org.jboss.as.controller.extension.MutableRootResourceRegistrationProvider)
@bci=16, line=387 (Interpreted frame)
- org.jboss.as.controller.AbstractControllerService.boot(java.util.List, boolean)
@bci=7, line=349 (Interpreted frame)
- org.jboss.as.server.ServerService.boot(java.util.List, boolean) @bci=22, line=392
(Interpreted frame)
- org.jboss.as.server.ServerService.boot(org.jboss.as.controller.BootContext) @bci=907,
line=365 (Interpreted frame)
- org.jboss.as.controller.AbstractControllerService$1.run() @bci=12, line=299
(Interpreted frame)
- java.lang.Thread.run() @bci=11, line=745 (Interpreted frame)
{noformat}