Description
when we have rows>0 every shard receive:
ids=2,3,6,7,9&isShard=true&shards.purpose=64&distrib=false
this is ShardRequest.PURPOSE_GET_TOP_IDS
In this case child_facet_fields are merged once again unnecessary.
failure is
java.lang.AssertionError: don't({3=[1], s=[6], white=[0, 3, 5, 6, 7, 8, 9, 10], xl=[8], don't=[0, 1, 2, 5, 6, 8, 10], 6=[0, 2, 7], xml=[3, 6, 8], xxxl=[0, 7, 9], l=[8, 10], m=[5, 9, 10], xxl=[5], grey=[9]} COLOR_s:[don't (14), white (16), grey (2)] SIZE_s:[m (6), xxl (2), 6 (6), s (2), xml (6), xxxl (6), 3 (2), l (4), xl (2)]) expected:<7> but was:<14>
at __....
org.apache.solr.search.join.BlockJoinFacetDistribTest.testBJQFacetComponent(BlockJoinFacetDistribTest.java:148)
see test patch attached
I suppose it's worth to exclude not only PURPOSE_GET_TOP_IDS but any other too, and make sure that reduce is done only once on distributed search.