Hum I did the same test this morning with different results than yours
diff --git a/hibernate-core/src/test/java/org/hibernate/test/discriminator/DiscriminatorTest.java b/hibernate-core/src/test/java/org/hi
index f54b731..dba5ca9 100755
— a/hibernate-core/src/test/java/org/hibernate/test/discriminator/DiscriminatorTest.java
+++ b/hibernate-core/src/test/java/org/hibernate/test/discriminator/DiscriminatorTest.java
@@ -88,6 +88,10 @@ public class DiscriminatorTest extends BaseCoreFunctionalTestCase {
assertEquals( s.createQuery("from Person p where p.class = Customer").list().size(), 1 );
s.clear();
+ Person p = (Person) s.load(Person.class, mark.getId());
+ assertNotNull( p );
+ assertTrue( p instanceof Employee );
+
List customers = s.createQuery("from Customer c left join fetch c.salesperson").list();
for ( Object customer : customers ) {
Customer c = (Customer) customer;
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
Hum I did the same test this morning with different results than yours
diff --git a/hibernate-core/src/test/java/org/hibernate/test/discriminator/DiscriminatorTest.java b/hibernate-core/src/test/java/org/hi
index f54b731..dba5ca9 100755
— a/hibernate-core/src/test/java/org/hibernate/test/discriminator/DiscriminatorTest.java
+++ b/hibernate-core/src/test/java/org/hibernate/test/discriminator/DiscriminatorTest.java
@@ -88,6 +88,10 @@ public class DiscriminatorTest extends BaseCoreFunctionalTestCase {
assertEquals( s.createQuery("from Person p where p.class = Customer").list().size(), 1 );
s.clear();
+ Person p = (Person) s.load(Person.class, mark.getId());
+ assertNotNull( p );
+ assertTrue( p instanceof Employee );
+
List customers = s.createQuery("from Customer c left join fetch c.salesperson").list();
for ( Object customer : customers ) {
Customer c = (Customer) customer;