try { rs = result.get(); return visitor.visit(rs); } catch (InterruptedException e) { try {
try { rs = result.get(); return visitor.visit(rs); } catch (InterruptedException e) { try {
private <T> T runUninterruptablyInternal(final PreparedStatement ps, final ResultSetVisitor<T> visitor, final FinalSQLString sql, final AutoClose autoClose, @Nullable Integer fetchSize) throws PalantirInterruptedException, PalantirSqlException { if (Thread.currentThread().isInterrupted()) { SqlLoggers.CANCEL_LOGGER.debug("interrupted prior to executing uninterruptable SQL call"); throw new PalantirInterruptedException("interrupted prior to executing uninterruptable SQL call"); } return BasicSQLUtils.runUninterruptably(executeStatementExecutor, () -> { if (fetchSize != null) { ps.setFetchSize(fetchSize); } ResultSet rs = null; try { rs = ps.executeQuery(); return visitor.visit(rs); } finally { if (rs != null && autoClose == AutoClose.TRUE) { rs.close(); } } }, sql.toString(), /* We no longer have a connection to worry about */ null); }
private <T> T runUninterruptablyInternal(final PreparedStatement ps, final ResultSetVisitor<T> visitor, final FinalSQLString sql, final AutoClose autoClose, @Nullable Integer fetchSize) throws PalantirInterruptedException, PalantirSqlException { if (Thread.currentThread().isInterrupted()) { SqlLoggers.CANCEL_LOGGER.debug("interrupted prior to executing uninterruptable SQL call"); throw new PalantirInterruptedException("interrupted prior to executing uninterruptable SQL call"); } return BasicSQLUtils.runUninterruptably(executeStatementExecutor, () -> { if (fetchSize != null) { ps.setFetchSize(fetchSize); } ResultSet rs = null; try { rs = ps.executeQuery(); return visitor.visit(rs); } finally { if (rs != null && autoClose == AutoClose.TRUE) { rs.close(); } } }, sql.toString(), /* We no longer have a connection to worry about */ null); }