Jan, mixing plan docs and blocks are not supported. On Thu, Jan 11, 2018 at 2:42 AM, Jan Høydahl <jan....@cominvent.com> wrote:
> Hi, > > We index several large nested documents. We found that querying the data > behaves differently depending on how the documents are indexed. > > To reproduce: > > solr start > solr create -c nested > # Index one plain document, “friend" and a nested one, “mother” and > “daughter”, in same request: > curl localhost:8983/solr/nested/update -d ‘ > <add> > <doc> > <field name="id">friend</field> > <field name="type">other</field> > </doc> > <doc> > <field name="id">mother</field> > <field name="type">parent</field> > <doc> > <field name="id">daughter</field> > <field name="type">child</field> > </doc> > </doc> > </add>' > > # Query for mother’s children using either child transformer or child > query parser > curl "localhost:8983/solr/a/query?q=id:mother&fl=%2A%2C%5Bchild% > 20parentFilter%3Dtype%3Aparent%5D” > { > "responseHeader":{ > "zkConnected":true, > "status":0, > "QTime":4, > "params":{ > "q":"id:mother", > "fl":"*,[child parentFilter=type:parent]"}}, > "response":{"numFound":1,"start":0,"docs":[ > { > "id":"mother", > "type":["parent"], > "_version_":1589249812802306048, > "type_str":["parent"], > "_childDocuments_":[ > { > "id":"friend", > "type":["other"], > "_version_":1589249812729954304, > "type_str":["other"]}, > { > "id":"daughter", > "type":["child"], > "_version_":1589249812802306048, > "type_str":["child"]}]}] > }} > > As you can see, the “friend” got included as a child of “mother”. > If you index the exact same request, putting “friend” after “mother” in > the xml, > the query works as expected. > > Inspecting the index, everything looks correct, and only “daughter” and > “mother” have _root_=mother. > Is there a rule that you should start a new update request for each type > of parent/child relationship > that you need to index, and not mix them in the same request? > > -- > Jan Høydahl, search solution architect > Cominvent AS - www.cominvent.com > > -- Sincerely yours Mikhail Khludnev