Skip to content

Commit 10f84b4

Browse files
committed
bug fixed for dbType compare, fix #4005
1 parent c7ad372 commit 10f84b4

File tree

3 files changed

+11
-5
lines changed

3 files changed

+11
-5
lines changed

src/main/java/com/alibaba/druid/DbType.java

+4
Original file line numberDiff line numberDiff line change
@@ -99,4 +99,8 @@ public static DbType of(String name) {
9999
return null;
100100
}
101101
}
102+
103+
public final boolean equals(String other) {
104+
return this == of(other);
105+
}
102106
}

src/main/java/com/alibaba/druid/pool/DruidAbstractDataSource.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -867,7 +867,7 @@ public int getValidationQueryTimeout() {
867867
}
868868

869869
public void setValidationQueryTimeout(int validationQueryTimeout) {
870-
if (validationQueryTimeout < 0 && JdbcConstants.SQL_SERVER.equals(dbTypeName)) {
870+
if (validationQueryTimeout < 0 && DbType.of(dbTypeName) == DbType.sqlserver) {
871871
LOG.error("validationQueryTimeout should be >= 0");
872872
}
873873
this.validationQueryTimeout = validationQueryTimeout;

src/main/java/com/alibaba/druid/pool/DruidConnectionHolder.java

+6-4
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import javax.sql.ConnectionEventListener;
3030
import javax.sql.StatementEventListener;
3131

32+
import com.alibaba.druid.DbType;
3233
import com.alibaba.druid.pool.DruidAbstractDataSource.PhysicalConnectionInfo;
3334
import com.alibaba.druid.proxy.jdbc.WrapperProxy;
3435
import com.alibaba.druid.support.logging.Log;
@@ -112,10 +113,11 @@ public DruidConnectionHolder(DruidAbstractDataSource dataSource, Connection conn
112113

113114
{
114115
boolean initUnderlyHoldability = !holdabilityUnsupported;
115-
if (JdbcConstants.SYBASE.equals(dataSource.dbTypeName) //
116-
|| JdbcConstants.DB2.equals(dataSource.dbTypeName) //
117-
|| JdbcConstants.HIVE.equals(dataSource.dbTypeName) //
118-
|| JdbcConstants.ODPS.equals(dataSource.dbTypeName) //
116+
DbType dbType = DbType.of(dataSource.dbTypeName);
117+
if (dbType == DbType.sybase //
118+
|| dbType == DbType.db2 //
119+
|| dbType == DbType.hive //
120+
|| dbType == DbType.odps //
119121
) {
120122
initUnderlyHoldability = false;
121123
}

0 commit comments

Comments
 (0)