This is an automated email from the ASF dual-hosted git repository. yiguolei pushed a commit to branch branch-2.1 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 11903d29a1ed244e104ad2c08328928823a54547 Author: zy-kkk <[email protected]> AuthorDate: Tue Mar 5 15:53:52 2024 +0800 [fix](jdbc catalog) fix close abort in sqlserver (#31718) --- .../org/apache/doris/jdbc/SQLServerJdbcExecutor.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/SQLServerJdbcExecutor.java b/fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/SQLServerJdbcExecutor.java index ec5d0e3d725..655217fd07e 100644 --- a/fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/SQLServerJdbcExecutor.java +++ b/fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/SQLServerJdbcExecutor.java @@ -22,7 +22,11 @@ import org.apache.doris.common.jni.vec.ColumnType.Type; import org.apache.doris.common.jni.vec.ColumnValueConverter; import org.apache.doris.common.jni.vec.VectorTable; +import com.google.common.util.concurrent.MoreExecutors; + +import java.sql.Connection; import java.sql.Date; +import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Timestamp; import java.time.LocalDate; @@ -33,6 +37,18 @@ public class SQLServerJdbcExecutor extends BaseJdbcExecutor { super(thriftParams); } + @Override + protected boolean abortReadConnection(Connection connection, ResultSet resultSet) + throws SQLException { + if (!resultSet.isAfterLast()) { + // Abort connection before closing. Without this, the SQLServer driver + // attempts to drain the connection by reading all the results. + connection.abort(MoreExecutors.directExecutor()); + return true; + } + return false; + } + @Override protected void initializeBlock(int columnCount, String[] replaceStringList, int batchSizeNum, VectorTable outputTable) { --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
