[ https://issues.apache.org/jira/browse/DBCP-597?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17823024#comment-17823024 ]
Gary D. Gregory commented on DBCP-597: -------------------------------------- Hello [~xiaotianbai] Thank you for reaching out. Would you please provide a failing unit test in order for us to reproduce the issue? This would be best as a PR on GitHub. > Validation query not timing out on connections managed by > SharedPoolDataSource > ------------------------------------------------------------------------------- > > Key: DBCP-597 > URL: https://issues.apache.org/jira/browse/DBCP-597 > Project: Commons DBCP > Issue Type: Bug > Affects Versions: 2.9.0 > Reporter: Xiaotian Bai > Priority: Major > > We are running a Java application that uses > *org.apache.commons.dbcp2.datasources.SharedPoolDataSource* to maintain a > JDBC connection pool. > In a recent database failover event, we noticed database validation queries > were not timing out as expected, resulting in the application hanging and > waiting indefinitely for a response from the database. > The validation query and timeout were both explicitly set on the > SharedPoolDataSource instance. > {quote}ds = new SharedPoolDataSource(); > ds.setValidationQuery("SELECT 1") > ds.setValidationQueryTimeout(5). > {quote} > > Upon diving a bit into the source code, we suspect the issue was caused by > this code: > [https://github.com/apache/commons-dbcp/blob/master/src/main/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java#L465] > {quote} conn = pconn.getConnection(); > stmt = conn.createStatement(); > rset = stmt.executeQuery(validationQuery); > valid = rset.next(); > {quote} > > We noticed the _stmt_ statement object does not call setQueryTimeout() and > the validation query seems to be executed with no timeout at all. > Could you confirm that this is indeed a bug, not us missing some fundamental > details? We would greatly appreciate a prompt resolution to this issue, > thanks! -- This message was sent by Atlassian Jira (v8.20.10#820010)