I'm querying an Index which has two types of child documents (let's call
them ChildTypeA and ChildTypeB)
I wrap the subqueries for each of these documents in a boolean clause,
something like this:

*q=+{! parent which=type:parent <query_on_child_type_B>} +{! parent
which=type:parent <query_on_child_type_B>}*


I've been trying to get facet counts on documents of ChildTypeA (rolled up
by parent) and I've tried the following approaches


   - Tried Block Join Faceting using the JSON API  i.e. using the
   unique(_root_) approach.
      -  Enabled docValues on _root_
      - *This did not scale well*
   - Tried using the BlockJoinFacet component.
      - Had to customize it since it expects that only one
      *ToParentBlockJoinQuery* clause to be present in the query.
      - Since I needed facet counts only on ChildTypeA, I changed it to
      ignore the clause on ChildTypeB
      - I did not enable docValues on _root_ since it was not mentioned in
      the documentation.
      - *This approach did not scale well*

I needed advice on whether I could have done anything better in any one of
the two approached I've tried so far. Also if there exists some other
approached I could try.
Would using the uniqueBlock in 7.4 help? (Though this would require me to
upgrade my Solr version)

Reply via email to