apache / apache/arrow-java

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

Ouverte
#157 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Java
Étoiles
94
Forks
152
Merge moyen
3 j 16 h
PR mergées (30 j)
11

Description

### 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

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par retracer le chemin de getFlightInfo du pilote Java JDBC et examinez comment il crée des FlightClients pour les Locations renvoyées. Étudiez Caffeine comme suggéré, puis définissez une option de configuration pour la mise en cache ou le pooling des clients et vérifiez que la Location d’origine est réutilisée sans créer de client en double. Le travail est terminé lorsque les clients des endpoints sont réutilisés pour les requêtes suivantes et que la Location d’origine n’entraîne pas la création d’un client supplémentaire.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
api
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.