This is an automated email from the ASF dual-hosted git repository. hui pushed a commit to branch lmh/addQueryIT in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c73b9f9050bdfa3c369e7eff14794099d0e08793 Author: Minghui Liu <[email protected]> AuthorDate: Mon Jun 20 23:01:47 2022 +0800 fix bug in align by device result set --- .../src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java b/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java index 8f47547ce5..d7f11803cd 100644 --- a/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java +++ b/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java @@ -219,8 +219,9 @@ public class IoTDBJDBCDataSet { // deduplicate and map if (columnNameIndex != null) { - this.columnTypeDeduplicatedList = new ArrayList<>(columnNameIndex.size()); - for (int i = 0; i < columnNameIndex.size(); i++) { + int columnSize = (int) columnNameIndex.values().stream().distinct().count(); + this.columnTypeDeduplicatedList = new ArrayList<>(columnSize); + for (int i = 0; i < columnSize; i++) { columnTypeDeduplicatedList.add(null); } for (int i = 0; i < columnNameList.size(); i++) { @@ -238,8 +239,10 @@ public class IoTDBJDBCDataSet { // "Time".equals(name) -> to allow the Time column appear in value columns if (!columnOrdinalMap.containsKey(name) || "Time".equals(name)) { int index = columnNameIndex.get(name); + if (!columnOrdinalMap.containsValue(index + START_INDEX)) { + columnTypeDeduplicatedList.set(index, TSDataType.valueOf(columnTypeList.get(i))); + } columnOrdinalMap.put(name, index + START_INDEX); - columnTypeDeduplicatedList.set(index, TSDataType.valueOf(columnTypeList.get(i))); } } } else {
