Skip to content

HHH-19704 provides test cases for LISTAGG function variants #10738

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
a75fa5b
HHH-19704 provides test cases for LISTAGG function variants, some of …
Aug 11, 2025
de7cf39
delete an unused exception type
gavinking Aug 11, 2025
44a80be
HHH-19688 better comments on a tricky and actually incorrect piece of…
gavinking Aug 12, 2025
89d7ee0
HHH-19688 add test for issue
gavinking Aug 12, 2025
d0c3aa4
HHH-19688 fix for @IdClass with a single @ManyToOne or @OneToOne
gavinking Aug 12, 2025
3926121
more use of 'var'
gavinking Aug 12, 2025
312287a
HHH-19703 Test case -add scalar with Class parameter when UserType is…
cigaly Aug 8, 2025
9cb1851
HHH-19703 In addScala(String, Class) implementation first check there…
cigaly Aug 8, 2025
877e4f0
HHH-19701 add 'if exists' to 'drop sequence' on Maria
gavinking Aug 12, 2025
757c2de
HHH-18941 Fix MonetaryAmountUserType example in JavaDoc
mkobel Aug 12, 2025
e97274e
HHH-18941 Fix EmbeddableInstantiator JavaDoc
mkobel Aug 12, 2025
149865b
Revert "HHH-19701 add 'if exists' to 'drop sequence' on Maria"
gavinking Aug 12, 2025
045a83a
HHH-19701 add 'if exists' to 'drop sequence' on Maria
gavinking Aug 12, 2025
165472c
HHH-19692 - Drop org.hibernate.boot.jaxb.spi.XmlSource
sebersole Aug 7, 2025
18499fa
HHH-19707 - Include value column name in TableStructure InitCommand
rayudu3745 Aug 12, 2025
2e7ede2
HHH-19326 Generic parameters types in data repository metamodel class…
cigaly Apr 17, 2025
b321840
HHH-19326 Properly handling generics parameter types
cigaly Jun 10, 2025
f2947c3
7.1 branch
sebersole Aug 13, 2025
b063cd7
HHH-19702 rename back to DriverManagerConnectionProvider/DataSourceCo…
gavinking Aug 10, 2025
a8cc9e1
HHH-19702 leave stub implementations behind
gavinking Aug 10, 2025
545c0a4
Fix Cockroach CI failures
beikov Aug 14, 2025
ca1d705
HHH-19704
Aug 11, 2025
00f0af4
Merge remote-tracking branch 'origin/HHH-19704-listagg-on-overflow' i…
Aug 14, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ service is defined by the interface (service role) +org.hibernate.engine.jdbc.co
which declares methods for obtaining and releasing the Connections. There are then multiple implementations of that
service contract, varying in how they actually manage the Connections:

* +org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl+ for using a +javax.sql.DataSource+
* +org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider+ for using a +javax.sql.DataSource+
* +org.hibernate.c3p0.internal.C3P0ConnectionProvider+ for using a C3P0 Connection pool
* etc.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,6 @@
import org.hibernate.type.descriptor.jdbc.BlobJdbcType;
import org.hibernate.type.descriptor.jdbc.ClobJdbcType;
import org.hibernate.type.descriptor.jdbc.JdbcType;
import org.hibernate.type.descriptor.jdbc.NClobJdbcType;
import org.hibernate.type.descriptor.jdbc.ObjectNullAsBinaryTypeJdbcType;
import org.hibernate.type.descriptor.jdbc.spi.JdbcTypeRegistry;
import org.hibernate.type.descriptor.sql.internal.DdlTypeImpl;
Expand Down Expand Up @@ -421,7 +420,7 @@ protected void contributeCockroachTypes(TypeContributions typeContributions, Ser
// Force Blob binding to byte[] for CockroachDB
jdbcTypeRegistry.addDescriptor( Types.BLOB, BlobJdbcType.MATERIALIZED );
jdbcTypeRegistry.addDescriptor( Types.CLOB, ClobJdbcType.MATERIALIZED );
jdbcTypeRegistry.addDescriptor( Types.NCLOB, NClobJdbcType.MATERIALIZED );
jdbcTypeRegistry.addDescriptor( Types.NCLOB, ClobJdbcType.MATERIALIZED );

// The next two contributions are the same as for Postgresql
typeContributions.contributeJdbcType( ObjectNullAsBinaryTypeJdbcType.INSTANCE );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,20 @@
*/
package org.hibernate.boot;

import java.io.File;
import java.io.InputStream;
import java.io.Serializable;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;

import org.hibernate.HibernateException;
import org.hibernate.Internal;
import org.hibernate.boot.archive.spi.InputStreamAccess;
import org.hibernate.boot.internal.MetadataBuilderImpl;
import org.hibernate.boot.jaxb.hbm.spi.JaxbHbmHibernateMapping;
import org.hibernate.boot.jaxb.internal.XmlSources;
import org.hibernate.boot.jaxb.internal.CacheableFileXmlSource;
import org.hibernate.boot.jaxb.internal.FileXmlSource;
import org.hibernate.boot.jaxb.internal.InputStreamAccessXmlSource;
import org.hibernate.boot.jaxb.internal.InputStreamXmlSource;
import org.hibernate.boot.jaxb.internal.JarFileEntryXmlSource;
import org.hibernate.boot.jaxb.internal.UrlXmlSource;
import org.hibernate.boot.jaxb.mapping.spi.JaxbEntityMappingsImpl;
import org.hibernate.boot.jaxb.spi.Binding;
import org.hibernate.boot.jaxb.spi.JaxbBindableMappingDescriptor;
import org.hibernate.boot.jaxb.spi.XmlSource;
import org.hibernate.boot.registry.BootstrapServiceRegistry;
import org.hibernate.boot.registry.BootstrapServiceRegistryBuilder;
import org.hibernate.boot.registry.StandardServiceRegistry;
Expand All @@ -36,6 +29,17 @@
import org.hibernate.service.ServiceRegistry;
import org.hibernate.type.SerializationException;

import java.io.File;
import java.io.InputStream;
import java.io.Serializable;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;

import static java.util.Collections.addAll;
import static java.util.Collections.emptyList;
import static java.util.Collections.emptySet;
Expand Down Expand Up @@ -358,9 +362,8 @@ public MetadataSources addPackage(Package packageRef) {
* @return this (for method chaining purposes)
*/
public MetadataSources addResource(String name) {
final XmlSource xmlSource = XmlSources.fromResource( name, classLoaderService );
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) );
addXmlBinding( UrlXmlSource.fromResource( name, classLoaderService, binderAccess.getMappingBinder() ) );
return this;
}

Expand Down Expand Up @@ -388,9 +391,8 @@ public MetadataSources addFile(String path) {
* @return this (for method chaining purposes)
*/
public MetadataSources addFile(File file) {
final XmlSource xmlSource = XmlSources.fromFile( file );
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) );
addXmlBinding( FileXmlSource.fromFile( file, binderAccess.getMappingBinder() ) );
return this;
}

Expand Down Expand Up @@ -510,9 +512,13 @@ public MetadataSources addCacheableFile(File file) {
* @return this (for method chaining purposes)
*/
public MetadataSources addCacheableFile(File file, File cacheDirectory) {
final XmlSource xmlSource = XmlSources.fromCacheableFile( file, cacheDirectory );
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) );
addXmlBinding( CacheableFileXmlSource.fromCacheableFile(
file,
cacheDirectory,
false,
binderAccess.getMappingBinder()
) );
return this;
}

Expand All @@ -530,9 +536,13 @@ public MetadataSources addCacheableFile(File file, File cacheDirectory) {
* @throws MappingNotFoundException Indicates that the cached file was not found or was not usable.
*/
public MetadataSources addCacheableFileStrictly(File file) throws SerializationException {
final XmlSource xmlSource = XmlSources.fromCacheableFile( file, true );
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) );
addXmlBinding( CacheableFileXmlSource.fromCacheableFile(
file,
null,
true,
binderAccess.getMappingBinder()
) );
return this;
}

Expand All @@ -550,9 +560,13 @@ public MetadataSources addCacheableFileStrictly(File file) throws SerializationE
* @throws MappingNotFoundException Indicates that the cached file was not found or was not usable.
*/
public MetadataSources addCacheableFileStrictly(File file, File cacheDir) throws SerializationException {
final XmlSource xmlSource = XmlSources.fromCacheableFile( file, cacheDir, true );
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) );
addXmlBinding( CacheableFileXmlSource.fromCacheableFile(
file,
cacheDir,
true,
binderAccess.getMappingBinder()
) );
return this;
}

Expand All @@ -564,9 +578,8 @@ public MetadataSources addCacheableFileStrictly(File file, File cacheDir) throws
* @return this (for method chaining purposes)
*/
public MetadataSources addInputStream(InputStreamAccess xmlInputStreamAccess) {
final XmlSource xmlSource = XmlSources.fromStream( xmlInputStreamAccess );
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) );
addXmlBinding( InputStreamAccessXmlSource.fromStreamAccess( xmlInputStreamAccess, binderAccess.getMappingBinder() ) );
return this;
}

Expand All @@ -578,9 +591,8 @@ public MetadataSources addInputStream(InputStreamAccess xmlInputStreamAccess) {
* @return this (for method chaining purposes)
*/
public MetadataSources addInputStream(InputStream xmlInputStream) {
final XmlSource xmlSource = XmlSources.fromStream( xmlInputStream );
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) );
addXmlBinding( InputStreamXmlSource.fromStream( xmlInputStream, binderAccess.getMappingBinder() ) );
return this;
}

Expand All @@ -592,9 +604,8 @@ public MetadataSources addInputStream(InputStream xmlInputStream) {
* @return this (for method chaining purposes)
*/
public MetadataSources addURL(URL url) {
final XmlSource xmlSource = XmlSources.fromUrl( url );
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) );
addXmlBinding( UrlXmlSource.fromUrl( url, binderAccess.getMappingBinder() ) );
return this;
}

Expand All @@ -610,10 +621,7 @@ public MetadataSources addURL(URL url) {
*/
public MetadataSources addJar(File jar) {
final XmlMappingBinderAccess binderAccess = getXmlMappingBinderAccess();
XmlSources.fromJar(
jar,
xmlSource -> addXmlBinding( xmlSource.doBind( binderAccess.getMappingBinder() ) )
);
JarFileEntryXmlSource.fromJar( jar, binderAccess.getMappingBinder(), this::addXmlBinding );
return this;
}

Expand Down
Loading