ClickHouse / ClickHouse/clickhouse-java

[jdbc-v2] DatabaseMetadata fails if server has a new type

オープン
#2,394 コメント 4 件 リアクション 2 件 担当者 0 名 GitHub で見る
area:jdbc-metadata bug jdbc-v2
主要言語
Java
スター
1.6k
フォーク
636
平均マージ
2日 23時間
マージ済み PR(30日)
29

説明

## Description

Stacktrace:

```
java.lang.IllegalArgumentException: Unknown data type: Time64
at com.clickhouse.data.ClickHouseDataType.of(ClickHouseDataType.java:460)
at com.clickhouse.jdbc.metadata.DatabaseMetaDataTest.testGetTypeInfo(DatabaseMetaDataTest.java:234)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
```

This means that old client would not work with a new server even if type is never used.

### Expected Behaviour

Warning but no exception when client reads a new type from a server.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

com.clickhouse.data.ClickHouseDataType.of と DatabaseMetaDataTest.java:234 の DatabaseMetaDataTest.testGetTypeInfo から始め、その後、新しい型を公開するサーバーに対して失敗を再現します。未知のサーバー型を読み取っても例外がスローされず、代わりに想定された警告が生成されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java
領域
databases
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
明確に書かれている
初心者へのやさしさ
45/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。