Currently I evaluate the Block Join Children Query Parser as described here.
Therefore I have created the following collection:
curl "http://localhost:8983/solr/admin/collections?action=CREATE&name=nestedPerson&numShards=6"`
Then I have inserted these two documents:
curl http://localhost:8983/solr/nestedPerson/update?commitWithin=3000 -d '<add>
<doc>
<field name="id">p1</field>
<field name="deceased">false</field>
<doc>
<field name="id">c1</field>
<field name="firstName">Bob</field>
</doc>
</doc>
<doc>
<field name="id">p2</field>
<field name="deceased">true</field>
<doc>
<field name="id">c2</field>
<field name="firstName">Max</field>
</doc>
</doc>
</add>'
Now I issue this query:
{!child of="id:p1"}firstName:Bob
Unfortunately this results in this error:
"msg": "Parent query yields document which is not matched by parents filter, docID=0",
How can the parent query (I guess that the part id:p1
is meant) yield a document that is not matched by the filter?