Skip to content

Commit 3115bd1

Browse files
committed
HHH-19675 Fix JdbcTypeRegistry#hasRegisteredDescriptor for constructed types
1 parent 4b63f1a commit 3115bd1

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

hibernate-core/src/main/java/org/hibernate/type/descriptor/jdbc/spi/JdbcTypeRegistry.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import java.io.Serializable;
1010
import java.sql.Types;
1111
import java.util.Locale;
12+
import java.util.Map;
1213
import java.util.Objects;
1314
import java.util.concurrent.ConcurrentHashMap;
1415

@@ -271,7 +272,17 @@ private JdbcType resolveTypeConstructorDescriptor(
271272
public boolean hasRegisteredDescriptor(int jdbcTypeCode) {
272273
return descriptorMap.containsKey( jdbcTypeCode )
273274
|| JdbcTypeNameMapper.isStandardTypeCode( jdbcTypeCode )
274-
|| JdbcTypeFamilyInformation.INSTANCE.locateJdbcTypeFamilyByTypeCode( jdbcTypeCode ) != null;
275+
|| JdbcTypeFamilyInformation.INSTANCE.locateJdbcTypeFamilyByTypeCode( jdbcTypeCode ) != null
276+
|| locateConstructedJdbcType( jdbcTypeCode );
277+
}
278+
279+
private boolean locateConstructedJdbcType(int jdbcTypeCode) {
280+
for ( TypeConstructedJdbcTypeKey key : typeConstructorDescriptorMap.keySet() ) {
281+
if ( key.typeCode == jdbcTypeCode ) {
282+
return true;
283+
}
284+
}
285+
return false;
275286
}
276287

277288
public JdbcTypeConstructor getConstructor(int jdbcTypeCode) {

0 commit comments

Comments
 (0)