[FlightRPC][FlightSQL][Java] Make FlightSqlClientDemo a general purpose tool
- Lenguaje dominante
- Java
- Estrellas
- 94
- Forks
- 152
- Merge medio
- 3 d 16 h
- PR fusionados (30 d)
- 11
Descripción
The FlightSqlClientDemo test program has a limited set of options that prevents it from being used against production databases. It does work against the Derby and SQLite examples though.
The major limitation is that there is no way to supply authentication information. The proposal here is to add support for passing in HTTP basic credentials and Authorization: Bearer headers.
Another useful feature would be an option to supply arbitrary headers (as a way of support server-specific options).
Lastly, it would be good to add an interactive mode that just ran the tool in a loop based on user input (and use ClientCookieMiddleware in this mode to persist state).
A shaded configuration of the flight-sql module that set this tool's main function as the JAR entry point would make it more friendly to run as well.
This would make the tool comparable to SQLLine.
**Reporter**: [James Duong](https://issues.apache.org/jira/browse/ARROW-15843) / @jduo
**Note**: *This issue was originally created as [ARROW-15843](https://issues.apache.org/jira/browse/ARROW-15843). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*
Guía de contribución
Línea de trabajo
Empieza por localizar el programa de prueba FlightSqlClientDemo y la configuración del módulo flight-sql. Revisa cómo ClientCookieMiddleware podría admitir el modo interactivo propuesto y, después, define el alcance de las credenciales, los encabezados bearer y arbitrarios, la ejecución interactiva y el punto de entrada del shaded JAR. Se considera terminado cuando la herramienta admite las opciones seleccionadas y se puede ejecutar cómodamente contra bases de datos de producción.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- cli, tooling
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100