[ https://issues.apache.org/jira/browse/TINKERPOP-2617?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yang Xia closed TINKERPOP-2617. ------------------------------- Resolution: Won't Do Closing. Please re-open if needed. > Refactor Java Driver to have one method for connection selection > ---------------------------------------------------------------- > > Key: TINKERPOP-2617 > URL: https://issues.apache.org/jira/browse/TINKERPOP-2617 > Project: TinkerPop > Issue Type: Improvement > Components: driver > Affects Versions: 3.4.12 > Reporter: Stephen Mallette > Priority: Minor > > To make a decision on whether a connection should be borrowed or not, a Java > client today does two logic which are different from each other. They should > both be same. One bit of logic to do so is at: > {code} > if (borrowed >= maxSimultaneousUsagePerConnection && > leastUsedConn.availableInProcess() == 0) { > {code} > and another is: > {code} > final int inFlight = leastUsed.borrowed.get(); > final int availableInProcess = > leastUsed.availableInProcess(); > if (inFlight >= availableInProcess) { > logger.debug("Least used {} on {} has requests > borrowed [{}] >= availableInProcess [{}] - may timeout waiting for > connection", > leastUsed, host, inFlight, > availableInProcess); > break; > } > if (leastUsed.borrowed.compareAndSet(inFlight, inFlight + > 1)) { > if (logger.isDebugEnabled()) > logger.debug("Return least used {} on {} after > waiting", leastUsed.getConnectionInfo(), host); > return leastUsed; > } > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)