apache / apache/arrow-java

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

Abierto
#157 2 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Java
Estrellas
94
Forks
152
Merge medio
3 d 16 h
PR fusionados (30 d)
11

Descripción

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

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Empieza siguiendo la ruta de getFlightInfo del controlador Java JDBC e investigando cómo crea FlightClients para las Locations devueltas. Investiga Caffeine como se sugiere y, después, define una opción de configuración para el almacenamiento en caché o el pooling de clientes, y verifica que se reutilice la Location original sin crear un cliente duplicado. Se considera terminado cuando los clientes de los endpoints se reutilizan para las consultas posteriores y la Location original evita la creación de un cliente adicional.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java
Área
api
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.