LocalManagedConnectionFactory.getDriver への同時コールで起動がハングする

Solution Unverified - Updated -

Issue

  • JBoss の起動が完了しません。スレッドダンプは、LocalManagedConnectionFactory.getDriver の呼び出しで、以下の 2 つのスレッドが停止したことを示しています。
"main" prio=10 tid=0x00002aaab0f27800 nid=0x7b28 in Object.wait() [0x0000000042b46000]
   java.lang.Thread.State:RUNNABLE
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at sun.misc.Service$LazyIterator.next(Service.java:271)
    at java.sql.DriverService.run(DriverManager.java:664)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.sql.DriverManager.loadInitialDrivers(DriverManager.java:506)
    at java.sql.DriverManager.initialize(DriverManager.java:612)
    at java.sql.DriverManager.getDriver(DriverManager.java:228)
    at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.isDriverLoadedForURL(LocalManagedConnectionFactory.java:502)
    at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.getDriver(LocalManagedConnectionFactory.java:466)
    - locked <0x00000000b0d16b78> (a org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory)
    at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:206)
    at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:195)
    at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:639)
    at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:273)
    at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:689)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:404)
    at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:424)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:496)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:941)
    at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:89)
    at org.hibernate.connection.DatasourceConnectionProvider.getConnection(DatasourceConnectionProvider.java:91)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:112)
    at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2118)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2114)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1338)
    at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
        ...

Thread 138 (Thread 0x42b4a940 (LWP 31528)):
#0  0x0000003aa9a0af59 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00002b3de19c877e in os::PlatformEvent::park() () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#2  0x00002b3de1a9f63a in ObjectMonitor::wait(long, bool, Thread*) () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#3  0x00002b3de1a9c8f0 in ObjectSynchronizer::waitUninterruptibly(Handle, long, Thread*) () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#4  0x00002b3de177253b in instanceKlass::initialize_impl(instanceKlassHandle, Thread*) () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#5  0x00002b3de1771b5a in instanceKlass::initialize(Thread*) () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#6  0x00002b3de1772a5c in instanceKlass::initialize_impl(instanceKlassHandle, Thread*) () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#7  0x00002b3de1771b5a in instanceKlass::initialize(Thread*) () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#8  0x00002b3de182d079 in find_class_from_class_loader(JNIEnv_*, symbolHandle, unsigned char, Handle, Handle, unsigned char, Thread*) () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#9  0x00002b3de1811326 in JVM_FindClassFromClassLoader () from /usr/java/jdk1.6.0_24/jre/lib/amd64/server/libjvm.so
#10 0x00002aaaaabde2d4 in Java_java_lang_Class_forName0 () from /usr/java/jdk1.6.0_24/jre/lib/amd64/libjava.so
#11 0x00002aaaab655453 in ??()
#12 0x00000000e7a4af80 in ??()
#13 0x0000000094e1eef0 in ??()
#14 0x00000000f24ed808 in ??()
#15 0x0000000042b46088 in ??()
#16 0x0000000042b460e0 in ??()
#17 0x00002aaaab250929 in ??()
#18 0x0000000090021608 in ??()
#19 0x0000000000000041 in ??()
#20 0x0000000042b460d0 in ??()
#21 0x00002aaaab250929 in ??()
#22 0x00002aaaab250929 in ??()
#23 0x00000000f24ed808 in ??()
#24 0x0000000000000001 in ??()
#25 0x00000000e7a4af80 in ??()
#26 0x0000000042b46090 in ??()
#27 0x0000000090019a18 in ??()
#28 0x0000000042b46100 in ??()
#29 0x00000000900ba520 in ??()
#30 0x000000009322a028 in ??()
#31 0x0000000090019a30 in ??()
#32 0x0000000042b46078 in ??()
#33 0x0000000042b460f0 in ??()
#34 0x0000000042b46148 in ??()
#35 0x00002aaaab250929 in ??()
#36 0x0000000000000000 in ??()


"ContainerBackgroundProcessor[StandardEngine[jboss.web]]" daemon prio=10 tid=0x00002aaab5d2b000 nid=0x7c95 in Object.wait() [0x000000004a0bd000]
   java.lang.Thread.State:RUNNABLE
    at oracle.jdbc.driver.OracleDriver.<clinit>(OracleDriver.java:187)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.getDriver(LocalManagedConnectionFactory.java:474)
    - locked <0x00000000b0cdf5d8> (a org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory)
    at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:206)
    at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:195)
    at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:639)
    at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:273)
    at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:689)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:404)
    at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:424)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:496)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:941)
    at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:89)
    at org.jboss.web.tomcat.service.session.persistent.DataSourcePersistentStore.getConnection(DataSourcePersistentStore.java:92)
    at org.jboss.web.tomcat.service.session.persistent.RDBMSStoreBase.safeGetConnection(RDBMSStoreBase.java:1756)
    at org.jboss.web.tomcat.service.session.persistent.RDBMSStoreBase.processExpires(RDBMSStoreBase.java:1270)
    at org.jboss.web.tomcat.service.session.persistent.AbstractPersistentManager.processExpirationPassivation(AbstractPersistentManager.java:554)
    at org.jboss.web.tomcat.service.session.JBossManager.backgroundProcess(JBossManager.java:429)
    - locked <0x00000000f26833f8> (a java.util.concurrent.atomic.AtomicBoolean)
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1327)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1612)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1621)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1601)
    at java.lang.Thread.run(Thread.java:662)

Environment

  • JBoss Enterprise Application Platform (EAP)
    • 5.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.