HHH-14877 - FetchMode.SUBSELECT ignored
- fixed Oracle errors related to follow-on locking
This commit is contained in:
parent
653de50aa5
commit
96c0b04658
|
@ -34,10 +34,6 @@ public interface ExecutionContext {
|
|||
|
||||
Callback getCallback();
|
||||
|
||||
default void invokeAfterLoadActions(SharedSessionContractImplementor session, Object entity, Loadable persister) {
|
||||
// No-op because by default there is no callback
|
||||
}
|
||||
|
||||
default String getQueryIdentifier(String sql) {
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ import org.hibernate.event.spi.PostLoadEvent;
|
|||
import org.hibernate.event.spi.PostLoadEventListener;
|
||||
import org.hibernate.event.spi.PreLoadEvent;
|
||||
import org.hibernate.persister.entity.Loadable;
|
||||
import org.hibernate.sql.exec.spi.Callback;
|
||||
import org.hibernate.sql.results.graph.Initializer;
|
||||
import org.hibernate.sql.results.graph.collection.internal.ArrayInitializer;
|
||||
import org.hibernate.query.spi.QueryOptions;
|
||||
|
@ -190,17 +191,18 @@ public class JdbcValuesSourceProcessingStateStandardImpl implements JdbcValuesSo
|
|||
postLoadEvent.setEntity( loadingEntityEntry.getEntityInstance() )
|
||||
.setId( entityKey.getIdentifier() )
|
||||
.setPersister( loadingEntityEntry.getDescriptor() );
|
||||
for ( PostLoadEventListener listener : listenerGroup.listeners() ) {
|
||||
listener.onPostLoad( postLoadEvent );
|
||||
}
|
||||
listenerGroup.fireEventOnEachListener( postLoadEvent, PostLoadEventListener::onPostLoad );
|
||||
}
|
||||
|
||||
executionContext.invokeAfterLoadActions(
|
||||
final Callback callback = executionContext.getCallback();
|
||||
if ( callback != null ) {
|
||||
callback.invokeAfterLoadActions(
|
||||
getSession(),
|
||||
loadingEntityEntry.getEntityInstance(),
|
||||
(Loadable) loadingEntityEntry.getDescriptor()
|
||||
);
|
||||
}
|
||||
}
|
||||
);
|
||||
loadingEntityMap = null;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue