This is an automated email from the ASF dual-hosted git repository.
haonan pushed a commit to branch rel/0.13
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/rel/0.13 by this push:
new ff96de6f80 [To rel/0.13][ISSUE-6774]connection error when using
DBeaver with JDBC driver (#6963)
ff96de6f80 is described below
commit ff96de6f8077e069b0050201c8b3754260f20aae
Author: Summer <[email protected]>
AuthorDate: Fri Aug 12 09:14:49 2022 +0800
[To rel/0.13][ISSUE-6774]connection error when using DBeaver with JDBC
driver (#6963)
---
.../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java | 34 ++++++++++++++++++++++
.../tsfile/read/query/dataset/QueryDataSet.java | 4 +++
2 files changed, 38 insertions(+)
diff --git
a/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBDatabaseMetadata.java
b/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBDatabaseMetadata.java
index 8f9778ab7e..01d999d378 100644
--- a/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBDatabaseMetadata.java
+++ b/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBDatabaseMetadata.java
@@ -672,6 +672,7 @@ public class IoTDBDatabaseMetadata implements
DatabaseMetaData {
dataSet.putRecord(record);
}
dataSet.setDataTypes(listType);
+ dataSet.setColumnNum(listType.size());
}
@Override
@@ -736,14 +737,23 @@ public class IoTDBDatabaseMetadata implements
DatabaseMetaData {
String sql = "SHOW STORAGE GROUP";
if (catalog != null && catalog.length() > 0) {
+ if (catalog.contains("%")) {
+ catalog = catalog.replaceAll("%", "*");
+ }
sql = sql + " " + catalog;
} else if (schemaPattern != null && schemaPattern.length() > 0) {
+ if (schemaPattern.contains("%")) {
+ schemaPattern = schemaPattern.replaceAll("%", "*");
+ }
sql = sql + " " + schemaPattern;
}
if (((catalog != null && catalog.length() > 0)
|| schemaPattern != null && schemaPattern.length() > 0)
&& tableNamePattern != null
&& tableNamePattern.length() > 0) {
+ if (tableNamePattern.contains("%")) {
+ tableNamePattern = tableNamePattern.replaceAll("%", "*");
+ }
sql = sql + "." + tableNamePattern;
}
@@ -1878,14 +1888,23 @@ public class IoTDBDatabaseMetadata implements
DatabaseMetaData {
String sql = "SHOW STORAGE GROUP";
if (catalog != null && catalog.length() > 0) {
+ if (catalog.contains("%")) {
+ catalog = catalog.replaceAll("%", "*");
+ }
sql = sql + " " + catalog;
} else if (schemaPattern != null && schemaPattern.length() > 0) {
+ if (schemaPattern.contains("%")) {
+ schemaPattern = schemaPattern.replaceAll("%", "*");
+ }
sql = sql + " " + schemaPattern;
}
if (((catalog != null && catalog.length() > 0)
|| schemaPattern != null && schemaPattern.length() > 0)
&& tableNamePattern != null
&& tableNamePattern.length() > 0) {
+ if (tableNamePattern.contains("%")) {
+ tableNamePattern = tableNamePattern.replaceAll("%", "*");
+ }
sql = sql + "." + tableNamePattern;
}
@@ -2017,8 +2036,14 @@ public class IoTDBDatabaseMetadata implements
DatabaseMetaData {
String sql = "SHOW STORAGE GROUP";
if (catalog != null && catalog.length() > 0) {
+ if (catalog.contains("%")) {
+ catalog = catalog.replaceAll("%", "*");
+ }
sql = sql + " " + catalog;
} else if (schemaPattern != null && schemaPattern.length() > 0) {
+ if (schemaPattern.contains("%")) {
+ schemaPattern = schemaPattern.replaceAll("%", "*");
+ }
sql = sql + " " + schemaPattern;
}
if (((catalog != null && catalog.length() > 0)
@@ -2262,14 +2287,23 @@ public class IoTDBDatabaseMetadata implements
DatabaseMetaData {
String sql = "SHOW timeseries";
if (catalog != null && catalog.length() > 0) {
+ if (catalog.contains("%")) {
+ catalog = catalog.replaceAll("%", "*");
+ }
sql = sql + " " + catalog;
} else if (schemaPattern != null && schemaPattern.length() > 0) {
+ if (schemaPattern.contains("%")) {
+ schemaPattern = schemaPattern.replaceAll("%", "*");
+ }
sql = sql + " " + schemaPattern;
}
if (((catalog != null && catalog.length() > 0)
|| schemaPattern != null && schemaPattern.length() > 0)
&& tableNamePattern != null
&& tableNamePattern.length() > 0) {
+ if (tableNamePattern.contains("%")) {
+ tableNamePattern = tableNamePattern.replaceAll("%", "*");
+ }
sql = sql + "." + tableNamePattern;
}
ResultSet rs = stmt.executeQuery(sql);
diff --git
a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/query/dataset/QueryDataSet.java
b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/query/dataset/QueryDataSet.java
index 47376c68ad..40e6ee3d8f 100644
---
a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/query/dataset/QueryDataSet.java
+++
b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/query/dataset/QueryDataSet.java
@@ -259,4 +259,8 @@ public abstract class QueryDataSet {
public int getColumnNum() {
return columnNum;
}
+
+ public void setColumnNum(int columnNum) {
+ this.columnNum = columnNum;
+ }
}