Skip to content

GH-62: Optimize Flight SQL JDBC Statement execution paths#1090

Open
xborder wants to merge 3 commits intoapache:mainfrom
xborder:optimize-queries-3
Open

GH-62: Optimize Flight SQL JDBC Statement execution paths#1090
xborder wants to merge 3 commits intoapache:mainfrom
xborder:optimize-queries-3

Conversation

@xborder
Copy link
Contributor

@xborder xborder commented Mar 24, 2026

What Changed

  • This change simplifies the Flight SQL JDBC request flow for Statement.executeQuery/executeUpdate avoiding the PreparedStatement request flow
  • Preserved the current requirement that Statement.execute(String) still flows through PreparedStatement
    • Right now, Arrow Flight does not offer a good solution for this use case. There is no way for the client to disambiguate between a CommandStatementUpdate or CommandStatemenQuery without doing a server call
  • Moved prepared-statement-specific creation and execution concerns into ArrowFlightPreparedStatement
  • Similarly, created ArrowFlightStatement with specific logic to handle Statements
  • Removed statement/prepared-statement construction details and logic from ArrowFlightMetaImpl. ArrowFlightMetaImpl was left it focused on orchestration

Closes #62.

xborder and others added 3 commits March 13, 2026 23:54
* reduced number of requests for Statement

* move meta orchestration

* detect prepared statement
@xborder xborder marked this pull request as ready for review March 24, 2026 22:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Java][FlightSQL] Arrow Flight SQL JDBC Driver makes ActionCreatePreparedStatementRequest even for Statement.executeQuery() and Statement.exeute().

1 participant