Hi,
I am using solr 8.6.2
I have the following doc types marked by a type attribute :
TR -> has child doc -> IN
PB -> has child doc -> AU
So the type IN docs exist only under TR and type AU only under PB
But when I run a query like type:IN AND {!child of='type:PB'}type:PB, I get a
subset of IN results,
when actually I expect that there should be none
In these results, I see the root correctly pointing to the TR type doc
Also, fetching IN children of the TR type works correctly.
So it seems to be a issue with the block join query parser.
I found a weird solution at the link below, which says union of all parent
types has to be used
https://stackoverflow.com/questions/37905553/are-solr-nested-objects-broken-for-multilevel-nesting
so if I include TR in the mask :
type:PTASC AND id:IN* AND {!child of='type:(PB TR)'}type:PB,
then it returns 0 rows as expected.
Can somebody explain why this happens ? And whether there is a better way to
address this ?
Regards,
manoj
Confidentiality Notice
====================
This email message, including any attachments, is for the sole use of the
intended recipient and may contain confidential and privileged information. Any
unauthorized view, use, disclosure or distribution is prohibited. If you are
not the intended recipient, please contact the sender by reply email and
destroy all copies of the original message. Anju Software, Inc. 4500 S.
Lakeshore Drive, Suite 620, Tempe, AZ USA 85282.