[
https://issues.apache.org/jira/browse/GEODE-7003?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16891227#comment-16891227
]
Aaron Lindsey commented on GEODE-7003:
--------------------------------------
There is a race condition within the test. When the test calls
dataSource.getConnection(), that method will throw an (expected) exception and
expire the connection from the connection pool. There is a background thread
which goes through all the expired connections and calls Connection.close(). If
this background thread calls close() while the main thread is in the middle of
calling BrokeredConnection.isClosed(), the method isClosed() will throw a
SQLNonTransientConnectionException.
> CI failure:
> GemFireTransactionDataSourceIntegrationTest.testExceptionHandlingRegisterTranxConnection
> failed with java.sql.SQLNonTransientConnectionException: No current
> connection.
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: GEODE-7003
> URL: https://issues.apache.org/jira/browse/GEODE-7003
> Project: Geode
> Issue Type: Bug
> Reporter: Aaron Lindsey
> Priority: Major
>
> Failed on Windows JDK 8 run on 7/22/19:
> [https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/WindowsCoreIntegrationTestOpenJDK8/builds/147]
> Archive results:
> [http://files.apachegeode-ci.info/builds/apache-develop-main/1.10.0-SNAPSHOT.0468/test-results/integrationTest/1563834111/]
> Stack trace:
> {{org.apache.geode.internal.datasource.GemFireTransactionDataSourceIntegrationTest
> > testExceptionHandlingRegisterTranxConnection FAILED}}
> {{ java.sql.SQLNonTransientConnectionException: No current connection.}}
> {{ at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> Source)}}
> {{ at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> Source)}}
> {{ at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown
> Source)}}
> {{ at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown
> Source)}}
> {{ at org.apache.derby.impl.jdbc.Util.noCurrentConnection(Unknown
> Source)}}
> {{ at org.apache.derby.jdbc.EmbedPooledConnection.checkActive(Unknown
> Source)}}
> {{ at
> org.apache.derby.jdbc.EmbedPooledConnection.getRealConnection(Unknown
> Source)}}
> {{ at
> org.apache.derby.jdbc.EmbedXAConnection.getRealConnection(Unknown Source)}}
> {{ at
> org.apache.derby.iapi.jdbc.BrokeredConnection.getRealConnection(Unknown
> Source)}}
> {{ at org.apache.derby.iapi.jdbc.BrokeredConnection.isClosed(Unknown
> Source)}}
> {{ at
> org.apache.geode.internal.datasource.GemFireTransactionDataSourceIntegrationTest.lambda$testExceptionHandlingRegisterTranxConnection$1(GemFireTransactionDataSourceIntegrationTest.java:103)}}
> {{ Caused by:}}
> {{ ERROR 08003: No current connection.}}
> {{ at
> org.apache.derby.iapi.error.StandardException.newException(Unknown Source)}}
> {{ at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(Unknown
> Source)}}
> {{ ... 11 more}}
>
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)