Skip to content

Commit 2f50e98

Browse files
committed
HHH-19712 Reproduce faulty native query alias expansion with column selection deduplication
1 parent eadd666 commit 2f50e98

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
/*
2+
* SPDX-License-Identifier: Apache-2.0
3+
* Copyright Red Hat Inc. and Hibernate Authors
4+
*/
5+
package org.hibernate.orm.test.query.sql;
6+
7+
import jakarta.persistence.Column;
8+
import jakarta.persistence.Embeddable;
9+
import jakarta.persistence.EmbeddedId;
10+
import jakarta.persistence.Entity;
11+
import org.hibernate.testing.orm.junit.DomainModel;
12+
import org.hibernate.testing.orm.junit.Jira;
13+
import org.hibernate.testing.orm.junit.SessionFactory;
14+
import org.hibernate.testing.orm.junit.SessionFactoryScope;
15+
import org.junit.jupiter.api.Test;
16+
17+
@DomainModel(annotatedClasses = {
18+
NativeQueryResultBuilderColumnDeduplicationTest.MyEntity.class
19+
})
20+
@SessionFactory
21+
@Jira("https://hibernate.atlassian.net/browse/HHH-19712")
22+
public class NativeQueryResultBuilderColumnDeduplicationTest {
23+
24+
@Test
25+
public void test(SessionFactoryScope scope) {
26+
scope.inTransaction(
27+
session -> {
28+
session.createNativeQuery( "select {t.*} from MyEntity t", Object.class )
29+
.addEntity( "t", MyEntity.class )
30+
.getResultList();
31+
}
32+
);
33+
}
34+
35+
@Entity(name = "MyEntity")
36+
public static class MyEntity {
37+
@EmbeddedId
38+
private MyEntityPk id;
39+
@Column(insertable = false, updatable = false)
40+
private String name;
41+
private String description;
42+
}
43+
44+
@Embeddable
45+
public static class MyEntityPk {
46+
private String id;
47+
private String name;
48+
}
49+
}

0 commit comments

Comments
 (0)