[
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: [email protected]
For additional commands, e-mail: [email protected]