[ https://issues.apache.org/jira/browse/SOLR-12519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16541487#comment-16541487 ]
mosh commented on SOLR-12519: ----------------------------- Thanks a lot [~dsmiley], I have uploaded a WIP [pull request|https://github.com/apache/lucene-solr/pull/416], which is far from ready, just to see we are all on the same track. Consider it an alpha version of the transformer. {quote}If we also want to use the same field for finding ancestors{quote} One major [obstacle|https://github.com/apache/lucene-solr/pull/416/files#diff-1477ca79d167daa1ca838fc323ef1badR97] I have yet to conquer is a way return only the ancestors of children that matched the child filter. Currently I have only thought of doing a reverse lookup using the _nest_parent_ field, iterating over the ancestor keys' values, but that seems slow and cumbersome. Hopefully we will be able to find a better way. > Support Deeply Nested Docs In Child Documents Transformer > --------------------------------------------------------- > > Key: SOLR-12519 > URL: https://issues.apache.org/jira/browse/SOLR-12519 > Project: Solr > Issue Type: Sub-task > Security Level: Public(Default Security Level. Issues are Public) > Reporter: mosh > Priority: Major > Attachments: SOLR-12519-no-commit.patch > > Time Spent: 10m > Remaining Estimate: 0h > > As discussed in SOLR-12298, to make use of the meta-data fields in > SOLR-12441, there needs to be a smarter child document transformer, which > provides the ability to rebuild the original nested documents' structure. > In addition, I also propose the transformer will also have the ability to > bring only some of the original hierarchy, to prevent unnecessary block join > queries. e.g. > {code} {"a": "b", "c": [ {"e": "f"}, {"e": "g"} , {"h": "i"} ]} {code} > Incase my query is for all the children of "a:b", which contain the key "e" > in them, the query will be broken in to two parts: > 1. The parent query "a:b" > 2. The child query "e:*". > If the only children flag is on, the transformer will return the following > documents: > {code}[ {"e": "f"}, {"e": "g"} ]{code} > In case the flag was not turned on(perhaps the default state), the whole > document hierarchy will be returned, containing only the matching children: > {code}{"a": "b", "c": [ {"e": "f"}, {"e": "g"} ]{code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org