diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt index 028ea8b71ca..7949a5f1d50 100644 --- a/solr/CHANGES.txt +++ b/solr/CHANGES.txt @@ -33,6 +33,8 @@ Upgrade Notes * SOLR-14026: Upgrade Jetty to 9.4.24.v20191120 and dropwizard to 4.1.2 (Erick Erickson) +* SOLR-14092: BlockJoinFacetComponent is marked for deprecation and will be removed in 9.0. + Users are encouraged to migrate to uniqueBlock() in JSON Facet API. (Mikhail Khludnev) New Features --------------------- diff --git a/solr/core/src/java/org/apache/solr/search/join/BlockJoinDocSetFacetComponent.java b/solr/core/src/java/org/apache/solr/search/join/BlockJoinDocSetFacetComponent.java index b8f303491f2..b4e434ca612 100644 --- a/solr/core/src/java/org/apache/solr/search/join/BlockJoinDocSetFacetComponent.java +++ b/solr/core/src/java/org/apache/solr/search/join/BlockJoinDocSetFacetComponent.java @@ -40,7 +40,11 @@ import org.apache.solr.search.join.BlockJoinFieldFacetAccumulator.AggregatableDo * Calculates facets on children documents and aggregates hits by parent documents. * Enables when child.facet.field parameter specifies a field name for faceting. * So far it supports string fields only. It requires to search by {@link ToParentBlockJoinQuery}. - * */ + * + * @deprecated This functionality is considered deprecated and will be removed at 9.0 + * Users are encouraged to use "uniqueBlock(\_root_)" aggregation + * under "terms" facet and "domain": { "blockChildren":...} */ +@Deprecated public class BlockJoinDocSetFacetComponent extends BlockJoinFacetComponentSupport { private final String bjqKey = this.getClass().getSimpleName()+".bjq"; diff --git a/solr/core/src/java/org/apache/solr/search/join/BlockJoinFacetComponent.java b/solr/core/src/java/org/apache/solr/search/join/BlockJoinFacetComponent.java index 16f84cc71e4..47456a02b27 100644 --- a/solr/core/src/java/org/apache/solr/search/join/BlockJoinFacetComponent.java +++ b/solr/core/src/java/org/apache/solr/search/join/BlockJoinFacetComponent.java @@ -17,7 +17,12 @@ package org.apache.solr.search.join; /** this is just a stub refers to {@link BlockJoinDocSetFacetComponent} to avoid - * changes in configs */ + * changes in configs + * + * @deprecated This functionality is considered deprecated and will be removed at 9.0 + * Users are encouraged to use "uniqueBlock(\_root_)" aggregation + * under "terms" facet and "domain": { "blockChildren":...} */ +@Deprecated public class BlockJoinFacetComponent extends BlockJoinDocSetFacetComponent { } diff --git a/solr/solr-ref-guide/src/blockjoin-faceting.adoc b/solr/solr-ref-guide/src/blockjoin-faceting.adoc index 94b51108f4d..e6478342e16 100644 --- a/solr/solr-ref-guide/src/blockjoin-faceting.adoc +++ b/solr/solr-ref-guide/src/blockjoin-faceting.adoc @@ -20,7 +20,8 @@ BlockJoin facets allow you to aggregate children facet counts by their parents. It is a common requirement that if a parent document has several children documents, all of them need to increment facet value count only once. This functionality is provided by `BlockJoinDocSetFacetComponent`, and `BlockJoinFacetComponent` just an alias for compatibility. -CAUTION: This functionality is considered deprecated. Users are encouraged to use `uniqueBlock(\_root_)` aggregation under a `terms` facet in the <>. +CAUTION: This functionality is considered deprecated and will be removed at 9.0. + Users are encouraged to use `uniqueBlock(\_root_)` aggregation under a `terms` facet in the <>. If this component is used, it must be explicitly enabled for a request handler in `solrconfig.xml`, in the same way as any other <>. This example shows how you could add this search components to `solrconfig.xml` and define it in request handler: