remove hibernate.query.omit_join_of_superclass_tables
This commit is contained in:
parent
6ddb12412c
commit
766483e46d
|
@ -522,12 +522,6 @@ For this reason, we can expand the bind parameters to power-of-two: 4, 8, 16, 32
|
||||||
This way, an IN clause with 5, 6, or 7 bind parameters will use the 8 IN clause,
|
This way, an IN clause with 5, 6, or 7 bind parameters will use the 8 IN clause,
|
||||||
therefore reusing its execution plan.
|
therefore reusing its execution plan.
|
||||||
|
|
||||||
`*hibernate.query.omit_join_of_superclass_tables*` (e.g. `false` or `true` (default value))::
|
|
||||||
When you use `jakarta.persistence.InheritanceType#JOINED` strategy for inheritance mapping and query
|
|
||||||
a value from an entity, all superclass tables are joined in the query regardless you need them.
|
|
||||||
+
|
|
||||||
With this setting set to true only superclass tables which are really needed are joined.
|
|
||||||
|
|
||||||
==== Multi-table bulk HQL operations
|
==== Multi-table bulk HQL operations
|
||||||
|
|
||||||
`*hibernate.hql.bulk_id_strategy*` (e.g. A fully-qualified class name, an instance, or a `Class` object reference)::
|
`*hibernate.hql.bulk_id_strategy*` (e.g. A fully-qualified class name, an instance, or a `Class` object reference)::
|
||||||
|
|
|
@ -110,7 +110,6 @@ import static org.hibernate.cfg.AvailableSettings.JTA_TRACK_BY_THREAD;
|
||||||
import static org.hibernate.cfg.AvailableSettings.LOG_SESSION_METRICS;
|
import static org.hibernate.cfg.AvailableSettings.LOG_SESSION_METRICS;
|
||||||
import static org.hibernate.cfg.AvailableSettings.MAX_FETCH_DEPTH;
|
import static org.hibernate.cfg.AvailableSettings.MAX_FETCH_DEPTH;
|
||||||
import static org.hibernate.cfg.AvailableSettings.MULTI_TENANT_IDENTIFIER_RESOLVER;
|
import static org.hibernate.cfg.AvailableSettings.MULTI_TENANT_IDENTIFIER_RESOLVER;
|
||||||
import static org.hibernate.cfg.AvailableSettings.OMIT_JOIN_OF_SUPERCLASS_TABLES;
|
|
||||||
import static org.hibernate.cfg.AvailableSettings.ORDER_INSERTS;
|
import static org.hibernate.cfg.AvailableSettings.ORDER_INSERTS;
|
||||||
import static org.hibernate.cfg.AvailableSettings.ORDER_UPDATES;
|
import static org.hibernate.cfg.AvailableSettings.ORDER_UPDATES;
|
||||||
import static org.hibernate.cfg.AvailableSettings.PREFER_USER_TRANSACTION;
|
import static org.hibernate.cfg.AvailableSettings.PREFER_USER_TRANSACTION;
|
||||||
|
@ -218,7 +217,6 @@ public class SessionFactoryOptionsBuilder implements SessionFactoryOptions {
|
||||||
private SqmTranslatorFactory sqmTranslatorFactory;
|
private SqmTranslatorFactory sqmTranslatorFactory;
|
||||||
private Boolean useOfJdbcNamedParametersEnabled;
|
private Boolean useOfJdbcNamedParametersEnabled;
|
||||||
private boolean namedQueryStartupCheckingEnabled;
|
private boolean namedQueryStartupCheckingEnabled;
|
||||||
private final boolean omitJoinOfSuperclassTablesEnabled;
|
|
||||||
private final int preferredSqlTypeCodeForBoolean;
|
private final int preferredSqlTypeCodeForBoolean;
|
||||||
private final TimeZoneStorageStrategy defaultTimeZoneStorageStrategy;
|
private final TimeZoneStorageStrategy defaultTimeZoneStorageStrategy;
|
||||||
|
|
||||||
|
@ -425,7 +423,6 @@ public class SessionFactoryOptionsBuilder implements SessionFactoryOptions {
|
||||||
this.useOfJdbcNamedParametersEnabled = cfgService.getSetting( CALLABLE_NAMED_PARAMS_ENABLED, BOOLEAN, true );
|
this.useOfJdbcNamedParametersEnabled = cfgService.getSetting( CALLABLE_NAMED_PARAMS_ENABLED, BOOLEAN, true );
|
||||||
|
|
||||||
this.namedQueryStartupCheckingEnabled = cfgService.getSetting( QUERY_STARTUP_CHECKING, BOOLEAN, true );
|
this.namedQueryStartupCheckingEnabled = cfgService.getSetting( QUERY_STARTUP_CHECKING, BOOLEAN, true );
|
||||||
this.omitJoinOfSuperclassTablesEnabled = cfgService.getSetting( OMIT_JOIN_OF_SUPERCLASS_TABLES, BOOLEAN, true );
|
|
||||||
this.preferredSqlTypeCodeForBoolean = ConfigurationHelper.getPreferredSqlTypeCodeForBoolean( serviceRegistry );
|
this.preferredSqlTypeCodeForBoolean = ConfigurationHelper.getPreferredSqlTypeCodeForBoolean( serviceRegistry );
|
||||||
this.defaultTimeZoneStorageStrategy = context.getMetadataBuildingOptions().getDefaultTimeZoneStorage();
|
this.defaultTimeZoneStorageStrategy = context.getMetadataBuildingOptions().getDefaultTimeZoneStorage();
|
||||||
|
|
||||||
|
@ -1198,11 +1195,6 @@ public class SessionFactoryOptionsBuilder implements SessionFactoryOptions {
|
||||||
return collectionsInDefaultFetchGroupEnabled;
|
return collectionsInDefaultFetchGroupEnabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean isOmitJoinOfSuperclassTablesEnabled() {
|
|
||||||
return omitJoinOfSuperclassTablesEnabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getPreferredSqlTypeCodeForBoolean() {
|
public int getPreferredSqlTypeCodeForBoolean() {
|
||||||
return preferredSqlTypeCodeForBoolean;
|
return preferredSqlTypeCodeForBoolean;
|
||||||
|
|
|
@ -445,11 +445,6 @@ public class AbstractDelegatingSessionFactoryOptions implements SessionFactoryOp
|
||||||
return delegate().getCustomSqmFunctionRegistry();
|
return delegate().getCustomSqmFunctionRegistry();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean isOmitJoinOfSuperclassTablesEnabled() {
|
|
||||||
return delegate.isOmitJoinOfSuperclassTablesEnabled();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getPreferredSqlTypeCodeForBoolean() {
|
public int getPreferredSqlTypeCodeForBoolean() {
|
||||||
return delegate.getPreferredSqlTypeCodeForBoolean();
|
return delegate.getPreferredSqlTypeCodeForBoolean();
|
||||||
|
|
|
@ -344,8 +344,6 @@ public interface SessionFactoryOptions extends QueryEngineOptions {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean isOmitJoinOfSuperclassTablesEnabled();
|
|
||||||
|
|
||||||
int getPreferredSqlTypeCodeForBoolean();
|
int getPreferredSqlTypeCodeForBoolean();
|
||||||
|
|
||||||
TimeZoneStorageStrategy getDefaultTimeZoneStorageStrategy();
|
TimeZoneStorageStrategy getDefaultTimeZoneStorageStrategy();
|
||||||
|
|
|
@ -2286,18 +2286,6 @@ public interface AvailableSettings {
|
||||||
*/
|
*/
|
||||||
String SEQUENCE_INCREMENT_SIZE_MISMATCH_STRATEGY = "hibernate.id.sequence.increment_size_mismatch_strategy";
|
String SEQUENCE_INCREMENT_SIZE_MISMATCH_STRATEGY = "hibernate.id.sequence.increment_size_mismatch_strategy";
|
||||||
|
|
||||||
/**
|
|
||||||
* When you use {@link jakarta.persistence.InheritanceType#JOINED} strategy for
|
|
||||||
* inheritance mapping and query a value from an entity, all superclass tables
|
|
||||||
* are joined in the query regardless you need them. With this setting set to
|
|
||||||
* true only superclass tables which are really needed are joined.
|
|
||||||
* <p>
|
|
||||||
* The default value is true.
|
|
||||||
*
|
|
||||||
* @since 5.4
|
|
||||||
*/
|
|
||||||
String OMIT_JOIN_OF_SUPERCLASS_TABLES = "hibernate.query.omit_join_of_superclass_tables";
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Specifies the preferred JDBC type code for storing boolean values. When no
|
* Specifies the preferred JDBC type code for storing boolean values. When no
|
||||||
* type code is explicitly specified, a sensible
|
* type code is explicitly specified, a sensible
|
||||||
|
|
Loading…
Reference in New Issue