GH-38024: [Java][FlightRPC] Expose appMetadata through JDBC ResultSet#38781
Conversation
|
|
|
CC @jduo One question: we distribute shaded driver JARs, so people will have to reference a shaded name. It may be better to define a non-shaded interface that people can cast to? |
I agree. Also, it would be good to have a non-shaded build target to reduce the binary size for users that aren't concerned about dependency collisions (for example, embedding the driver into a stack that they have full control of the dependencies). |
flight-sql-jdbc-core should do that and is distributed: https://central.sonatype.com/artifact/org.apache.arrow/flight-sql-jdbc-core/overview |
|
Interesting. I seem to be able to cast it just fine when using the shaded jar. That being said, I agree having some sort of |
|
Ah, yes, the shaded JAR should work fine - but you have to 'peek' into the shaded JAR and use the shaded name, right? It would be best to provide a 'normal' name for people to reference instead of some odd shaded thing |
|
That said if you want to defer that we can just focus on this change here |
|
Alright, we can add the interface if someone complains about having to use the mangled name. |
|
@lidavidm hey! sorry just got back from a long vacation last night. I think this is fine for now. I was thinking at some point we might want to expose a way to get the Arrow batches directly as well, and at that point we can reconsider the interface/class name. |
|
Ah, sounds good. And yes, some way to convert a ResultSet to an Arrow or ADBC interface would be a perfect way to slowly introduce Arrow to a JDBC-based application. |
|
After merging your PR, Conbench analyzed the 5 benchmarking runs that have been run so far on merge-commit b6a9f6b. There were no benchmark performance regressions. 🎉 The full Conbench report has more details. It also includes information about 4 possible false positives for unstable benchmarks that are known to sometimes produce them. |
…ultSet (apache#38781) FlightInfo can now contain appMetadata. This PR exposes that metadata through the JDBC interface through `ArrowFlightJdbcFlightStreamResultSet.getAppMetadata`. * Closes: apache#38024 Authored-by: Diego Fernandez <aiguo.fernandez@gmail.com> Signed-off-by: David Li <li.davidm96@gmail.com>
…ultSet (apache#38781) FlightInfo can now contain appMetadata. This PR exposes that metadata through the JDBC interface through `ArrowFlightJdbcFlightStreamResultSet.getAppMetadata`. * Closes: apache#38024 Authored-by: Diego Fernandez <aiguo.fernandez@gmail.com> Signed-off-by: David Li <li.davidm96@gmail.com>
FlightInfo can now contain appMetadata. This PR exposes that metadata through the JDBC interface through
ArrowFlightJdbcFlightStreamResultSet.getAppMetadata.