Question

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)
Was it helpful?

Solution

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

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top