ClickHouse / ClickHouse/clickhouse-java
In the JDBC query result set, columns of type AggregateFunction cannot be parsed normally
- Vorherrschende Sprache
- Java
- Sterne
- 1.6k
- Forks
- 636
- Ø Merge
- 2 T. 23 Std.
- Gemergte PRs (30 T.)
- 29
Beschreibung
## Description
When creating a materialized view, specify the Select statement as follows:
```sql
SELECT
toDate(timestamp) AS date,
countState(*) AS count,
quantileState(0.9)(duration) AS tp90_duration_ms,
quantileState(0.99)(duration) AS tp99_duration_ms,
avgState(duration) AS avg_duration_ms,
maxState(duration) AS max_duration_ms,
minState(duration) AS min_duration_ms
FROM test.test_table_local
GROUP BY
date
```
This statement is queried directly with JDBC, and the final error is:
java.sql.SQLException: Failed to read value for column count
final debug result:
1. BinaryStreamReader.java -> readValue method
case AggregateFunction:
return (T)this.readBitmap(actualColumn);
2. readBitmap method
```java
private ClickHouseBitmap readBitmap(ClickHouseColumn column) throws IOException {
return ClickHouseBitmap.deserialize(this.input, ((ClickHouseColumn)column.getNestedColumns().get(0)).getDataType());
}
```
column.getNestedColumns() is empty
3.
### Error Log or Exception StackTrace
```
This statement is queried directly with JDBC, and the final error is:
java.sql.SQLException: Failed to read value for column count
```
### Expected Behaviour
### Code Example
```java
```
### Configuration
#### Client Configuration
```java
```
#### Environment
* [ ] Cloud
* Client version: 0.9.4
* Language version: 1.8
* OS: mac
#### ClickHouse Server
* ClickHouse Server version: 25.5.1
Beitragsleitfaden
Rechercherichtung
Beginne mit BinaryStreamReader.java, insbesondere mit readValue und readBitmap, und reproduziere die Abfrage der materialisierten Sicht mit dem ClickHouse Java client 0.9.4 gegen ClickHouse 25.5.1. Untersuche, warum AggregateFunction keine verschachtelten Spalten hat; abgeschlossen ist es, wenn JDBC die Spalten des Aggregationsergebnisses ohne die SQLException lesen kann.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java, sql
- Bereich
- database
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100