HHH-19202 fix array_intersects with parameter #11679
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description:
Hello, I tried fix bug with array_intersects which doesn't work with an array as a parameter for JIRA issue - https://hibernate.atlassian.net/browse/HHH-19202.
Where H2 database throws:
org.hibernate.exception.GenericJDBCException: could not prepare statement [Unknown data type: "?3"; SQL statementThis contains fix for H2, HSQL and possible PostgreSQL with nullable.
Changes:
H2ArrayIntersectsFunction.java- use walker.render with SqlAstNodeRenderingMode.NO_PLAIN_PARAMETERArrayIntersectsUnnestFunction.java- use walker.render with SqlAstNodeRenderingMode.NO_PLAIN_PARAMETERArrayIntersectsTest.java- add tests for testIntersectsArrayParameter, testIntersectsArrayParameterNullFully and testIntersectsArrayParameterNullBy submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license
and can be relicensed under the terms of the LGPL v2.1 license in the future at the maintainers' discretion.
For more information on licensing, please check here.
Please make sure that the following tasks are completed:
Tasks specific to HHH-19202 (Bug):
migration-guide.adocOR check there are no breaking changes