Skip to content

Resolve column name in ResultSetIterator.set#426

Open
rootvector2 wants to merge 1 commit into
apache:masterfrom
rootvector2:resultsetiterator-set-column-name
Open

Resolve column name in ResultSetIterator.set#426
rootvector2 wants to merge 1 commit into
apache:masterfrom
rootvector2:resultsetiterator-set-column-name

Conversation

@rootvector2

Copy link
Copy Markdown
Contributor

set passes the raw lower-cased property name to ResultSet.updateObject while the read path resolves it through getColumnName first, so under the default lowerCase an update to a mixed-case column targets the wrong column or throws on a case-sensitive driver; found diffing the get and set paths against getObject.

  • Read the contribution guidelines for this project.
  • Read the ASF Generative Tooling Guidance if you use Artificial Intelligence (AI).
  • I used AI to create any part of, or all of, this pull request. Which AI tool was used to create this pull request, and to what extent did it contribute?
  • Run a successful build using the default Maven goal with mvn; that's mvn on the command line by itself.
  • Write unit tests that match behavioral changes, where the tests fail if the changes to the runtime are not applied. This may not always be possible, but it is a best practice.
  • Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
  • Each commit in the pull request should have a meaningful subject line and body. Note that a maintainer may squash commits during the merge process.

the read path resolves the dyna-property name to the real column name via getColumnName, but set passed the raw name to updateObject, so with the default lowerCase a mixed-case column update targeted the wrong column.
@garydgregory garydgregory changed the title resolve column name in ResultSetIterator.set Resolve column name in ResultSetIterator.set Jul 22, 2026

@garydgregory garydgregory left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @rootvector2
Please see my comment.

*/
@Test
void testSetUsesColumnName() throws Exception {
final String[] updatedColumn = new String[1];

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rootvector2
Use an AtomicReference instead of the old-school array hack ;)

@garydgregory

Copy link
Copy Markdown
Member

@rootvector2 Ping 🔔

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.

2 participants