Hibernate Search 5 APIs Deprecated in JBoss EAP 7.4 and removed in EAP 8.0

Updated

Migration

The Hibernate Search 6 API has changed and applications using the API will need to migrate, see the Content from docs.jboss.org is not included.Hibernate Search migration guide for details.

Deprecated in EAP 7.4 / Removed in EAP 8.0 details

Already deprecated in the version of Hibernate Search 5.10 that is included in EAP 7.4:

Index-time boosting


Index-time boosting is deprecated and will be removed in Hibernate Search 6. Use query-time boosting instead, i.e. .boostedTo(float) in the query DSL: [https://docs.jboss.org/hibernate/search/5.10/reference/en-US/html_single/#_query_options](https://docs.jboss.org/hibernate/search/5.10/reference/en-US/html_single/#_query_options)

The following classes and methods are deprecated as a result:

  • org.hibernate.search.annotations.Boost
  • org.hibernate.search.annotations.DynamicBoost
  • org.hibernate.search.engine.BoostStrategy
  • org.hibernate.search.annotations.Field#boost
  • org.hibernate.search.annotations.Spatial#boost
  • org.hibernate.search.bridge.LuceneOptions#getBoost
  • org.hibernate.search.cfg.EntityMapping#dynamicBoost
  • org.hibernate.search.cfg.IndexedMapping#dynamicBoost
  • org.hibernate.search.cfg.PropertyMapping#dynamicBoost
  • org.hibernate.search.metadata.IndexedTypeDescriptor.getStaticBoost
  • org.hibernate.search.metadata.IndexedTypeDescriptor.getDynamicBoost

Custom filter cache keys


Custom filter cache keys are deprecated and will be removed in Hibernate Search 6.

The following classes and methods are deprecated as a result:

  • org.hibernate.search.annotations.Key
  • org.hibernate.search.filter.FilterKey
  • org.hibernate.search.filter.StandardFilterKey

Apache Lucene's org.apache.lucene.search.Filter


Apache Lucene's org.apache.lucene.search.Filter class is deprecated and will be removed in a future version.
Use org.apache.lucene.search.Filter instead.

The following classes and methods are deprecated as a result:

  • org.apache.lucene.search.Filter
  • org.hibernate.search.query.dsl.QueryCustomization#filteredBy(org.apache.lucene.search.Filter)
  • org.hibernate.search.jpa.FullTextQuery#setFilter

The following annotations and classes have no effect on the application, are deprecated and will be removed in Hibernate Search 6:

  • org.hibernate.search.annotations.CacheFromIndex
  • org.hibernate.search.annotations.FieldCacheType
  • org.hibernate.search.annotations.FieldCacheType
  • org.hibernate.search.annotations.ProvidedId
  • org.hibernate.search.cfg.IndexedMapping#cacheFromIndex
  • org.hibernate.search.cfg.EntityDescriptor#getCacheInMemory
  • org.hibernate.search.cfg.EntityDescriptor#setCacheInMemory
  • org.hibernate.search.MassIndexer#threadsForSubsequentFetching

Configuration Options


The following configuration options have no effect on the application, are deprecated and will be removed in Hibernate Search 6:
  • hibernate.search.[default|].indexwriter.term_index_interval
  • hibernate.search.[default|].indexwriter.max_thread_states

Deprecated in a version of Hibernate Search 5.10 that haven't made it into EAP 7.4 yet (released too recently):

@Analyzer


Support for `@Analyzer` on entity types and properties is deprecated and is going to be removed in Hibernate Search 6.
Assign an analyzer to each index field separately using `@Field(analyzer = @Analyzer(...))` instead.

Support for defining analyzers or normalizers through annotations


Support for defining analyzers or normalizers through annotations is deprecated, and will be removed in Hibernate Search 6. Use an analysis definition provider instead: https://docs.jboss.org/hibernate/search/5.10/reference/en-US/html_single/#section-programmatic-analyzer-definition

The following classes and methods are deprecated as a result:

  • org.hibernate.search.annotations.AnalyzerDef
  • org.hibernate.search.annotations.AnalyzerDefs
  • org.hibernate.search.annotations.NormalizerDef
  • org.hibernate.search.annotations.NormalizerDefs
  • org.hibernate.search.annotations.CharFilterDef
  • org.hibernate.search.annotations.TokenizerDef
  • org.hibernate.search.annotations.TokenFilterDef
  • org.hibernate.search.cfg.AnalyzerDefMapping
  • org.hibernate.search.cfg.CharFilterDefMapping
  • org.hibernate.search.cfg.TokenFilterDefMapping
  • org.hibernate.search.cfg.NormalizerDefMapping
  • org.hibernate.search.cfg.CalendarBridgeMapping#analyzerDef
  • org.hibernate.search.cfg.CalendarBridgeMapping#normalizerDef
  • org.hibernate.search.cfg.ClassBridgeMapping#analyzerDef
  • org.hibernate.search.cfg.ClassBridgeMapping#normalizerDef
  • org.hibernate.search.cfg.ContainedInMapping#analyzerDef
  • org.hibernate.search.cfg.ContainedInMapping#normalizerDef
  • org.hibernate.search.cfg.DateBridgeMapping#analyzerDef
  • org.hibernate.search.cfg.DateBridgeMapping#normalizerDef
  • org.hibernate.search.cfg.DocumentIdMapping#analyzerDef
  • org.hibernate.search.cfg.DocumentIdMapping#analyzerDef
  • org.hibernate.search.cfg.EntityMapping#analyzerDef
  • org.hibernate.search.cfg.EntityMapping#normalizerDef
  • org.hibernate.search.cfg.EntitySpatialMapping#analyzerDef
  • org.hibernate.search.cfg.EntitySpatialMapping#normalizerDef
  • org.hibernate.search.cfg.FieldBridgeMapping#analyzerDef
  • org.hibernate.search.cfg.FieldBridgeMapping#normalizerDef
  • org.hibernate.search.cfg.FieldMapping#analyzerDef
  • org.hibernate.search.cfg.FieldMapping#normalizerDef
  • org.hibernate.search.cfg.FullTextFilterDefMapping#analyzerDef
  • org.hibernate.search.cfg.FullTextFilterDefMapping#normalizerDef
  • org.hibernate.search.cfg.IndexedClassBridgeMapping#analyzerDef
  • org.hibernate.search.cfg.IndexedClassBridgeMapping#normalizerDef
  • org.hibernate.search.cfg.IndexedMapping#analyzerDef
  • org.hibernate.search.cfg.IndexedMapping#normalizerDef
  • org.hibernate.search.cfg.IndexEmbeddedMapping#analyzerDef
  • org.hibernate.search.cfg.IndexEmbeddedMapping#normalizerDef
  • org.hibernate.search.cfg.PropertyLatitudeMapping#analyzerDef
  • org.hibernate.search.cfg.PropertyLatitudeMapping#normalizerDef
  • org.hibernate.search.cfg.PropertyLongitudeMapping#analyzerDef
  • org.hibernate.search.cfg.PropertyLongitudeMapping#normalizerDef
  • org.hibernate.search.cfg.PropertyMapping#analyzerDef
  • org.hibernate.search.cfg.PropertyMapping#normalizerDef
  • org.hibernate.search.cfg.PropertySpatialMapping#analyzerDef
  • org.hibernate.search.cfg.PropertySpatialMapping#normalizerDef
  • org.hibernate.search.cfg.ProvidedIdMapping#analyzerDef
  • org.hibernate.search.cfg.ProvidedIdMapping#normalizerDef
  • org.hibernate.search.cfg.SearchMapping#analyzerDef
  • org.hibernate.search.cfg.SearchMapping#normalizerDef

Support for @Analyzer.impl/@Normalizer.impl


Support for @Analyzer.impl/@Normalizer.impl is deprecated, and will be removed in Hibernate Search 6. Use @Analyzer.definition and an analysis definition provider instead: https://docs.jboss.org/hibernate/search/5.10/reference/en-US/html_single/#section-programmatic-analyzer-definition

The following classes and methods are deprecated as a result:

  • org.hibernate.search.annotations.Analyzer#impl
  • org.hibernate.search.annotations.Normalizer#impl
  • org.hibernate.search.cfg.FieldMapping#analyzer(java.lang.Class<?>)
  • org.hibernate.search.cfg.FieldBridgeMapping#analyzer(java.lang.Class<?>)
  • org.hibernate.search.cfg.ClassBridgeMapping#analyzer(java.lang.Class<?>)
  • org.hibernate.search.cfg.FieldBridgeMapping#analyzer(java.lang.Class<?>)
  • org.hibernate.search.cfg.FieldMapping#normalizer(java.lang.Class<?>)

Support for Tika bridges


Support for Tika bridges is deprecated, and will be removed in Hibernate Search 6.

The following classes and methods are deprecated as a result:

  • org.hibernate.search.annotations.TikaBridge
  • org.hibernate.search.bridge.TikaMetadataProcessor
  • org.hibernate.search.bridge.TikaParseContextProvider
  • org.hibernate.search.bridge.TikaParserProvider
  • org.hibernate.search.bridge.builtin.TikaBridge

Support for retrieving information about indexed properties


Support for retrieving information about indexed properties will be removed in Hibernate Search 6.

The following classes and methods are deprecated as a result:

  • org.hibernate.search.metadata.IndexedTypeDescriptor.getIndexedProperties
  • org.hibernate.search.metadata.IndexedTypeDescriptor.getProperty
  • org.hibernate.search.metadata.IndexedTypeDescriptor.getFieldsForProperty
  • org.hibernate.search.metadata.IndexedTypeDescriptor.isSharded

Support for using the Sort DSL


Support for using the Sort DSL (org.hibernate.search.query.dsl.QueryBuilder#sort)
to sort on index fields whose type is unknown to Hibernate Search (not declared through MetadataProvidingFieldBridge) is deprecated and will be removed in Hibernate Search 6.

The following classes and methods are deprecated as a result:

  • org.hibernate.search.query.dsl.sort.SortAdditionalSortFieldContext.andByField(java.lang.String, org.apache.lucene.search.SortField.Type)
  • org.hibernate.search.query.dsl.sort.SortContext.byField(java.lang.String, org.apache.lucene.search.SortField.Type)

Support for more-like-this queries


Support for more-like-this queries is deprecated and will be removed in Hibernate Search 6.

The following classes and methods are deprecated as a result:

  • org.hibernate.search.query.dsl.QueryBuilder#moreLikeThis
  • org.hibernate.search.query.dsl.MoreLikeThisContext
  • org.hibernate.search.query.dsl.MoreLikeThisMatchingContext
  • org.hibernate.search.query.dsl.MoreLikeThisOpenedMatchingContext
  • org.hibernate.search.query.dsl.MoreLikeThisTerminalMatchingContext
  • org.hibernate.search.query.dsl.MoreLikeThisTermination
  • org.hibernate.search.query.dsl.MoreLikeThisToEntityContentAndTermination

Support for facet selection ("drill-down")


Support for facet selection ("drill-down") will be removed in Hibernate Search 6.
In order to drill-down and have your query return only specific facets, wrap it in a boolean query (QueryBuilder#bool()) and add a filter clause (BooleanJunction#filteredBy(Query)) to constraint values of the facet field with either a keyword query (QueryBuilder#keyword()) or a range query (QueryBuilder#range()).

The following classes and methods are deprecated as a result:

  • org.hibernate.search.query.facet.FacetSelection

Statistics


Statistics are deprecated and will be removed in Hibernate Search 6.

The following classes and methods are deprecated as a result:

  • org.hibernate.search.SearchFactory#getStatistics
  • org.hibernate.search.stat.Statistics
  • org.hibernate.search.stat.spi.StatisticsImplementor

Support for dynamic sharding


Support for dynamic sharding is deprecated and will be removed in Hibernate Search 6.

The following classes and methods are deprecated as a result:

  • org.hibernate.search.store.ShardIdentifierProvider.getShardIdentifiersForQuery
  • org.hibernate.search.store.ShardIdentifierProvider.getShardIdentifiersForDeletion
  • org.hibernate.search.store.ShardIdentifierProviderTemplate.addShard
  • org.hibernate.search.store.ShardIdentifierProviderTemplate.getShardIdentifiersForQuery
  • org.hibernate.search.store.ShardIdentifierProviderTemplate.getShardIdentifiersForDeletion

Support for indexing multiple entity types in the same index


Support for indexing multiple entity types in the same index is deprecated and will be removed in Hibernate Search 6.
Do not assign the same index to multiple entity types using @Index(index = ...).

Support for non-exclusive index use


Support for non-exclusive index use is deprecated and will be removed in Hibernate Search 6.

The following configuration properties are deprecated as a result:

  • hibernate.search.[default|].exclusive_index_use

Support for index name override through configuration properties


Support for index name override through configuration properties is deprecated and will be removed in Hibernate Search 6.

The following configuration properties are deprecated as a result:

  • hibernate.search.[fully qualified entity name].indexName

Support for statistics retrieved through JMX and indexing triggered through JMX


Support for statistics retrieved through JMX and indexing triggered through JMX is deprecated and will be removed in Hibernate Search 6.

The following configuration properties are deprecated as a result:

  • hibernate.search.jmx_enabled
  • hibernate.search.jmx_bean_suffix
Category
Components
Tags
Article Type