@@ -127,7 +127,7 @@ public class JoinedSubclassEntityPersister extends AbstractEntityPersister {
127
127
128
128
// the closure of all columns used by the entire hierarchy including
129
129
// subclasses and superclasses of this class
130
- private final int [] subclassColumnTableNumberClosure ;
130
+ private final int [] subclassColumnNaturalOrderTableNumberClosure ;
131
131
// private final int[] subclassFormulaTableNumberClosure;
132
132
private final String [] subclassColumnClosure ;
133
133
@@ -470,11 +470,12 @@ public JoinedSubclassEntityPersister(
470
470
final String tableName = property .getValue ().getTable ().
471
471
getQualifiedName ( creationContext .getSqlStringGenerationContext () );
472
472
final Integer tableNumber = getTableId ( tableName , subclassTableNameClosure );
473
+ final Integer naturalTableNumber = getTableId ( tableName , naturalOrderSubclassTableNameClosure );
473
474
propTableNumbers .add ( tableNumber );
474
475
475
476
for ( Selectable selectable : property .getSelectables () ) {
476
477
if ( !selectable .isFormula () ) {
477
- columnTableNumbers .add ( tableNumber );
478
+ columnTableNumbers .add ( naturalTableNumber );
478
479
Column column = (Column ) selectable ;
479
480
columns .add ( column .getQuotedName ( dialect ) );
480
481
}
@@ -484,7 +485,7 @@ public JoinedSubclassEntityPersister(
484
485
}
485
486
}
486
487
487
- subclassColumnTableNumberClosure = toIntArray ( columnTableNumbers );
488
+ subclassColumnNaturalOrderTableNumberClosure = toIntArray ( columnTableNumbers );
488
489
subclassPropertyTableNumberClosure = toIntArray ( propTableNumbers );
489
490
// subclassFormulaTableNumberClosure = ArrayHelper.toIntArray( formulaTableNumbers );
490
491
subclassColumnClosure = toStringArray ( columns );
@@ -1069,12 +1070,12 @@ public int determineTableNumberForColumn(String columnName) {
1069
1070
&& subclassColumnClosure [i ].endsWith ( "\" " );
1070
1071
if ( quoted ) {
1071
1072
if ( subclassColumnClosure [i ].equals ( columnName ) ) {
1072
- return subclassColumnTableNumberClosure [i ];
1073
+ return subclassColumnNaturalOrderTableNumberClosure [i ];
1073
1074
}
1074
1075
}
1075
1076
else {
1076
1077
if ( subclassColumnClosure [i ].equalsIgnoreCase ( columnName ) ) {
1077
- return subclassColumnTableNumberClosure [i ];
1078
+ return subclassColumnNaturalOrderTableNumberClosure [i ];
1078
1079
}
1079
1080
}
1080
1081
}
0 commit comments