Visitar URL original
GH-782: Preserve column nullability in Flight SQL JDBC metadata by mjuarros · Pull Request #1335 · apache/arrow-java · GitHub
Skip to content

GH-782: Preserve column nullability in Flight SQL JDBC metadata - #1335

Open
mjuarros wants to merge 2 commits into
apache:mainfrom
mjuarros:fix/782-flight-sql-nullability
Open

mjuarros wants to merge 2 commits into
apache:mainfrom
mjuarros:fix/782-flight-sql-nullability

Conversation

@mjuarros

@mjuarros mjuarros commented Oct 7, 2026

Copy link
Copy Markdown

What's Changed

  • Preserve Arrow field nullability when converting Flight SQL result fields into JDBC column metadata, using the JDBC columnNullable and columnNoNulls values.
  • Cover nullable and non-nullable columns in both converter tests and the JDBC prepared-statement metadata path.

Verification

  • mvn -o -pl :flight-sql-jdbc-core test (JDK 17): 1,247 tests run, 0 failures, 0 errors, 44 skipped.
  • mvn -o -pl :flight-sql-jdbc-core -Dtest=ConvertUtilsTest,ArrowFlightPreparedStatementTest -Dsurefire.failIfNoSpecifiedTests=false test (JDK 17, after formatting): 16 run, 0 failures, 0 errors, 1 pre-existing skip.
  • mvn -o -pl :flight-sql-jdbc-core spotless:check (JDK 21): passed.
  • Standalone JDBC smoke check against a local Derby-backed Flight SQL example: ID=0 (not nullable), KEYNAME=1 (nullable) from PreparedStatement.getMetaData().

Closes #782.

@mjuarros
mjuarros force-pushed the fix/782-flight-sql-nullability branch from 5fee743 to dbcaa3c Compare October 7, 2026 21:19
@jbonofre jbonofre added the bug-fix PRs that fix a big. label Oct 8, 2026
@jbonofre jbonofre added this to the 20.0.0 milestone Oct 8, 2026
@apache apache deleted a comment from github-actions Bot Oct 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug-fix PRs that fix a big.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug Report: Column Nullability Not Honored in FlightSqlProducer Schema

2 participants