This discussion is archived
0 Replies Latest reply: Apr 30, 2013 10:58 AM by Bernd Eckenfels RSS

JVM 7U21 (and older) crash on logging exception (StackOverflow, deep recurs

Bernd Eckenfels Newbie
Currently Being Moderated
Hello,

I have a reproduceable Crash of the Java VM. It happens in JBoss AS7.1.1 when I click in the admin gui on the OSGi console view. The reason for this is a large number of bundles and the fact that (in this version) JBoss OSGi is recursively scan through all of them, which leads to a very deep stack. It seems like the StackOverflowException in this situation is actually thrown and when it is logged (most likely printed?) it is crashing the VM.

I had seen this quite some time ago, but it still happens with 7.0U21 (on x64 win7 -d64 server). I had opened the Bug#2276442 but it seems not to be accepted because I could not provide a minimum reproducible code.

This is somewhat annoying, as the hs_err file should contain quite a few hints on the source of the problem, and having a bug where other can search for the same symptoms would actually be helpfull.

Well, I re-mailed the reviewer with my new error file, but here it is as well:

# Internal Error (sharedRuntime.cpp:728), pid=13892, tid=5360
# guarantee(false) failed: missing exception handler
#
# JRE version: 7.0_21-b11
# Java VM: Java HotSpot(TM) 64-Bit Server VM (23.21-b01 mixed mode windows-amd64 compressed oops)
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows

Current thread (0x0000000020f50000): JavaThread "host-controller-connection-threads - 9" [_thread_in_vm, id=5360, stack(0x000000003ab50000,0x000000003ac50000)]

Stack: [0x000000003ab50000,0x000000003ac50000]
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
v ~ExceptionBlob
J org.jboss.logmanager.LoggerNode.publish(Lorg/jboss/logmanager/ExtLogRecord;)V
J org.jboss.logmanager.LoggerNode.publish(Lorg/jboss/logmanager/ExtLogRecord;)V
J org.jboss.logmanager.LoggerNode.publish(Lorg/jboss/logmanager/ExtLogRecord;)V
j org.jboss.logmanager.Logger.logRaw(Lorg/jboss/logmanager/ExtLogRecord;)V+81
J org.jboss.logging.JBossLogManagerLogger.doLogf(Lorg/jboss/logging/Logger$Level;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V
j org.jboss.logging.Logger.logf(Ljava/lang/String;Lorg/jboss/logging/Logger$Level;Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V+8
j org.jboss.as.controller.ControllerLogger_$logger.operationFailed(Ljava/lang/Throwable;Lorg/jboss/dmr/ModelNode;Lorg/jboss/dmr/ModelNode;Ljava/lang/String;I)V+58
j org.jboss.as.controller.AbstractOperationContext.executeStep(Lorg/jboss/as/controller/AbstractOperationContext$Step;)V+237
j org.jboss.as.controller.AbstractOperationContext.doCompleteStep()V+233
j org.jboss.as.controller.AbstractOperationContext.completeStep()Lorg/jboss/as/controller/OperationContext$ResultAction;+1
j org.jboss.as.osgi.parser.BundleRuntimeHandler.handleReadAttribute(Lorg/jboss/as/controller/OperationContext;Lorg/jboss/dmr/ModelNode;)V+284
j org.jboss.as.osgi.parser.BundleRuntimeHandler.executeRuntimeStep(Lorg/jboss/as/controller/OperationContext;Lorg/jboss/dmr/ModelNode;)V+22
j org.jboss.as.controller.AbstractRuntimeOnlyHandler$1.execute(Lorg/jboss/as/controller/OperationContext;Lorg/jboss/dmr/ModelNode;)V+6
j org.jboss.as.controller.AbstractOperationContext.executeStep(Lorg/jboss/as/controller/AbstractOperationContext$Step;)V+33
j org.jboss.as.controller.AbstractOperationContext.doCompleteStep()V+233
j org.jboss.as.controller.AbstractOperationContext.completeStep()Lorg/jboss/as/controller/OperationContext$ResultAction;+1
j org.jboss.as.osgi.parser.BundleRuntimeHandler.handleReadAttribute(Lorg/jboss/as/controller/OperationContext;Lorg/jboss/dmr/ModelNode;)V+284
j org.jboss.as.osgi.parser.BundleRuntimeHandler.executeRuntimeStep(Lorg/jboss/as/controller/OperationContext;Lorg/jboss/dmr/ModelNode;)V+22
j org.jboss.as.controller.AbstractRuntimeOnlyHandler$1.execute(Lorg/jboss/as/controller/OperationContext;Lorg/jboss/dmr/ModelNode;)V+6
j org.jboss.as.controller.AbstractOperationContext.executeStep(Lorg/jboss/as/controller/AbstractOperationContext$Step;)V+33
j org.jboss.as.controller.AbstractOperationContext.doCompleteStep()V+233
... 8000! lines ...
j org.jboss.as.controller.AbstractOperationContext.doCompleteStep()V+233
j org.jboss.as.controller.AbstractOperationContext.completeStep()Lorg/jboss/as/controller/OperationContext$ResultAction;+1
j org.jboss.as.controller.ModelControllerImpl.execute(Lorg/jboss/dmr/ModelNode;Lorg/jboss/as/controller/client/OperationMessageHandler;Lorg/jboss/as/controller/ModelController$OperationTransactionControl;Lorg/jboss/as/controller/client/OperationAttachments;)Lorg/jboss/dmr/ModelNode;+195
j org.jboss.as.controller.remote.TransactionalModelControllerOperationHandler$ExecuteRequestHandler.doExecute(Lorg/jboss/dmr/ModelNode;ILorg/jboss/as/protocol/mgmt/ManagementRequestContext;)V+88
j org.jboss.as.controller.remote.TransactionalModelControllerOperationHandler$ExecuteRequestHandler$1.execute(Lorg/jboss/as/protocol/mgmt/ManagementRequestContext;)V+13
j org.jboss.as.protocol.mgmt.AbstractMessageHandler$2$1.doExecute()V+8
j org.jboss.as.protocol.mgmt.AbstractMessageHandler$AsyncTaskRunner.run()V+19
J java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V
j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5
j java.lang.Thread.run()V+11
j org.jboss.threads.JBossThread.run()V+10
v ~StubRoutines::call_stub

VM Arguments:
jvm_args: -D[Server:PE1] -XX:PermSize=100M -XX:MaxPermSize=300M -Xms2G -Xmx4G -Xss1M -Xverify:none -Dsun.java2d.noddraw=true
-XX:NewRatio=1 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+ExplicitGCInvokesConcurrent -XX:+CMSClassUnloadingEnabled -XX:+UseCompressedOops -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -Xloggc:gc.log -XX:+PrintGCDetails -Djdk.map.althashing.threshold=512 -Djava.io.tmpdir=d:\temp -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
Launcher Type: SUN_STANDARD

OS: Windows 7 , 64 bit Build 7601 Service Pack 1
CPU:total 8 (4 cores per cpu, 2 threads per core) family 6 model 42 stepping 7, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, ht, tsc, tscinvbit
Memory: 4k page, physical 16733200k(5827364k free), swap 33464540k(19480584k free)
vm_info: Java HotSpot(TM) 64-Bit Server VM (23.21-b01) for windows-amd64 JRE (1.7.0_21-b11), built on Apr 4 2013 08:11:28 by "java_re" with unknown MS VC++:1600

If somebody wants to see the whole error file, let me know.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points