Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Provide non blocking getFlightInfo

Abierto
#719 2 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

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

Línea de trabajo

Comienza leyendo la interfaz FlightProducer y cómo FlightService gestiona getFlightInfo; después, compara cómo están implementados los otros métodos no bloqueantes de FlightProducer. Confirma cómo la sobrecarga de listener propuesta y el indicador isBlockingFlightInfo pueden preservar las implementaciones existentes; el trabajo estará terminado cuando FlightService pueda usar la ruta no bloqueante sin romper los productores bloqueantes.

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

Descripción

Type: enhancement
Describe the enhancement requested

We have a use case in our production environment where getFlightInfo can take longer than a second and having a blocking getFlightInfo is a problem. Since many other methods in FlightProducer is non blocking we should also have a non blocking getFlightInfo

The code would look something like this with minimum impact to all the implementations

 /**
   * Get information about a particular data stream.
   *
   * @param context Per-call context.
   * @param descriptor The descriptor identifying the data stream.
   * @return Metadata about the stream.
   */
  FlightInfo getFlightInfo(CallContext context, FlightDescriptor descriptor);

  /**
   *  Get information about a particular data stream.
   *  
   * @param context Per-call context.
   * @param descriptor The descriptor identifying the data stream.
   * @param listener An interface for sending data back to the client.
   */
  default void getFlightInfo(CallContext context, FlightDescriptor descriptor, StreamListener<FlightInfo> listener ){
    FlightInfo flightInfo = getFlightInfo(context, descriptor);
    listener.onNext(flightInfo);
    listener.onCompleted();
  }

  /**
   *
   * @return true if blocking (default) version of getFlightInfo needs to be used by FlightService.
   */
  default boolean isBlockingFlightInfo() {
    return true;
  }
Lenguaje dominante
Java
Estrellas
95
Forks
154
Merge medio
2 d 10 h
PR fusionados (30 d)
11

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de apache/arrow-java

Todos los issues de apache/arrow-java

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.