apache / apache/arrow-java

[Java][Flight] Add caching of FlightClients to JDBC

Offen
#157 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Java
Sterne
94
Forks
152
Ø Merge
3 T. 16 Std.
Gemergte PRs (30 T.)
11

Beschreibung

### Describe the enhancement requested

When getFlightInfo reports a list of endpoints, the driver internally creates a FlightClient for each endpoint that reports a Location. These clients can benefit from being cached/pooled since a server will likely re-use endpoints for subsequent queries. This should likely be a configuration option.

The driver should also check if the Location at an endpoint is the same as the original location used when calling getFlightInfo and avoid creating a new FlightClient in this case.

Investigate using https://github.com/ben-manes/caffeine for caching.

### Component(s)

FlightRPC, Java

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, den getFlightInfo-Pfad des Java JDBC-Treibers nachzuverfolgen und zu untersuchen, wie er FlightClients für zurückgegebene Locations erstellt. Untersuche Caffeine wie vorgeschlagen und definiere anschließend eine Konfigurationsoption für das Caching oder Pooling von Clients. Verifiziere, dass die ursprüngliche Location wiederverwendet wird, ohne einen doppelten Client zu erstellen. Erledigt ist dies, wenn Endpoint-Clients für nachfolgende Abfragen wiederverwendet werden und die ursprüngliche Location keinen zusätzlichen Client verursacht.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
api
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.