apache / apache/arrow-java

[Java] Ability to use a path based host when using the JDBC driver

オープン
#208 コメント 9 件 リアクション 3 件 担当者 0 名 GitHub で見る
Type: enhancement
主要言語
Java
スター
94
フォーク
152
平均マージ
3日 16時間
マージ済み PR(30日)
11

説明

### Describe the enhancement requested

From an infrastructure perspective, it would be easier for us to do path based routing for our Flight server instead of sub-domain based routing. For example, `https://mydomain.com/grpc/flight`. A model like this would allow us to create routing rules for all grpc services we expose within our company using shared architecture.

Looking around at `getUrlsArgs` , there seems to be no use for the `path` part of the JDBC URI, so I see a few ways this could be implemented:

```
jdbc:arrow-flight-sql://mydomain.com/grpc/flight:443
jdbc:arrow-flight-sql://https://mydomain.com/grpc/flight:443
jdbc:arrow-flight-sql://mydomain.com:443/grpc/flight
jdbc:arrow-flight-sql://https://mydomain.com:443/grpc/flight
```

This seems to be fairly uncommon, but there's at least one other driver that does this. For example, the Simba BigQuery connection looks like this:

```
jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;ProjectId=;OAuthType=0;OAuthServiceAcctEmail=;OAuthPvtKeyPath=;
```

I'm not sure if this is already supported by the `Avatica` driver, so it may also need some changes there.

### Component(s)

Java

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

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

調査の方向性

まず、issue で言及されている getUrlsArgs のロジックを読み、Java JDBC URI がどのようにパースされるかを追跡します。Avatica driver がパスベースの host をサポートしているかを確認し、その後、受け入れられる URI の形式を定義して、結果として生じるルーティング動作をテストで検証します。issue では具体的なファイルやテストは指定されていません。

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

評価

技術スタック
grpc, java
領域
api
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
28/100

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

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