HHH-14024 Allow the creation of a different QueryPlanCache
This commit is contained in:
parent
e709685e16
commit
38d9f3738c
|
@ -18,6 +18,7 @@ import java.util.List;
|
|||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.TimeZone;
|
||||
import java.util.function.Function;
|
||||
import java.util.function.Supplier;
|
||||
import javax.naming.Reference;
|
||||
import javax.naming.StringRefAddr;
|
||||
|
@ -195,9 +196,13 @@ public class SessionFactoryImpl implements SessionFactoryImplementor {
|
|||
private final transient SessionBuilder defaultSessionOpenOptions;
|
||||
private final transient SessionBuilder temporarySessionOpenOptions;
|
||||
|
||||
public SessionFactoryImpl(
|
||||
public SessionFactoryImpl(final MetadataImplementor metadata, SessionFactoryOptions options) {
|
||||
this( metadata, options, QueryPlanCache::new );
|
||||
}
|
||||
|
||||
protected SessionFactoryImpl(
|
||||
final MetadataImplementor metadata,
|
||||
SessionFactoryOptions options) {
|
||||
SessionFactoryOptions options, Function<SessionFactoryImplementor, QueryPlanCache> queryPlanCacheFunction) {
|
||||
LOG.debug( "Building session factory" );
|
||||
|
||||
this.sessionFactoryOptions = options;
|
||||
|
@ -256,7 +261,7 @@ public class SessionFactoryImpl implements SessionFactoryImplementor {
|
|||
LOG.debugf( "Session factory constructed with filter configurations : %s", filters );
|
||||
LOG.debugf( "Instantiating session factory with properties: %s", properties );
|
||||
|
||||
this.queryPlanCache = new QueryPlanCache( this );
|
||||
this.queryPlanCache = queryPlanCacheFunction.apply( this );
|
||||
|
||||
class IntegratorObserver implements SessionFactoryObserver {
|
||||
private ArrayList<Integrator> integrators = new ArrayList<>();
|
||||
|
|
Loading…
Reference in New Issue