When running the maven failsafe plugin with the following configuration
<profiles>
<profile>
<id>it</id>
<build>
<plugins>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.12</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>2.12</version>
</dependency>
</dependencies>
<configuration>
<groups>IntegrationTest</groups>
</configuration>
<executions>
<execution>
<id>default-integration-tests</id>
<goals>
<goal>integration-test</goal>
</goals>
<configuration>
<groups>IntegrationTest</groups>
<includes>
<include>**/*.class</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
Maven hangs for a while on the following line
Concurrency config is parallel='none', perCoreThreadCount=true, threadCount=2, useUnlimitedThreads=false
I don't have a clue how I can turn on any more debugging for maven.
I see the first lines of Log4J output comming in 1.5 mintues later for no obvious reason.
I want to investigate why this hang happens, has anybody experienced similar problems? How can I get more debug output about what's going on?
Any help much appriciated.
Edit I: log4j.rootCategory=info, rolling, console log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.category.net.sf.ehcache=info
log4j.category.net.sf.ehcache.distribution=info
log4j.category.net.sf.ehcache.config=info
log4j.category.<copyanypackage>=debug
log4j.category.org.hibernate=info
#log4j.category.org.hibernate.type.BasicTypeRegistry=debug
log4j.category.org.hibernate.util.DTDEntityResolver=debug
#log4j.category.org.hibernate.cfg=debug
log4j.category.org.hibernate.SQL=info
log4j.category.org.hibernate.jdbc.AbstractBatcher=debug
log4j.category.org.hibernate.type=info, rolling
# second: Any configuration information needed for that appender.
# Many appenders require a layout.
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%p %d{HH:mm:ss,SSS} %C] %m%n
log4j.appender.rolling=org.apache.log4j.RollingFileAppender
log4j.appender.rolling.File=c:/logging/logfile.log
# log4j.appender.rolling.File=c:/temp/logfile.log
log4j.appender.rolling.MaxFileSize=100KB
log4j.appender.rolling.MaxBackupIndex=5
log4j.appender.rolling.layout=org.apache.log4j.PatternLayout
log4j.appender.rolling.layout.ConversionPattern=%d{ISO8601} %p %t %C - %m%n
UPDATE:
Here the ThreadDump
"Task-Thread-for-com.mchange.v2.async.ThreadPerTaskAsynchronousRunner@7d316b06" daemon prio=5 tid=0x00007fa676812800 nid=0x7203 waiting for monitor entry [0x000000011d9e5000]
java.lang.Thread.State: BLOCKED (on object monitor)
at java.net.InetAddress.getLocalHost(InetAddress.java:1456)
- waiting to lock <0x00000007af590628> (a java.lang.Object)
at com.microsoft.sqlserver.jdbc.Util.lookupHostName(Util.java:575)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2684)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2234)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:2220)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715)
- locked <0x00000007ab34c890> (a java.lang.Object)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1326)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
at com.mchange.v2.async.ThreadPerTaskAsynchronousRunner$TaskThread.run(ThreadPerTaskAsynchronousRunner.java:255)
Seems like it had to do with
java.net.InetAddress.getLocalHost
activating IPv4 for Java, like so
-Djava.net.preferIPv4Stack=true
solves the problem.
See also here