Hi,
When using Lucene’s query-time join feature [1], how can the hits from the
first phase which determine / contribute to the returned results be
retrieved?
This topic has been brought up before [2], and at the time the
recommendation was to re-run the query with added constraints based on the
join fields values. Is there any alternative way of doing this when trying
to get the contributing hits for every returned result and in the context
of having multiple terms in the toField?
I see that the info that is being tracked by the Join API refers to the
scores and the terms collected in the first phase. During this feature’s
development [3] there was also a 3-phased approach taken into
consideration, which involved recording fromSearcher’s docIds, translating
them into joinable terms and then recording toSearcher’s docIds. However,
even if docId info would be recorded between phases, it would then have to
be exposed somehow.
Thanks,
Stefan Onofrei
[1]
https://lucene.apache.org/core/8_5_1/join/org/apache/lucene/search/join/JoinUtil.html
[2]
https://lucene.472066.n3.nabble.com/access-to-joined-documents-td4412376.html
[3] https://issues.apache.org/jira/browse/LUCENE-3602
When using Lucene’s query-time join feature [1], how can the hits from the
first phase which determine / contribute to the returned results be
retrieved?
This topic has been brought up before [2], and at the time the
recommendation was to re-run the query with added constraints based on the
join fields values. Is there any alternative way of doing this when trying
to get the contributing hits for every returned result and in the context
of having multiple terms in the toField?
I see that the info that is being tracked by the Join API refers to the
scores and the terms collected in the first phase. During this feature’s
development [3] there was also a 3-phased approach taken into
consideration, which involved recording fromSearcher’s docIds, translating
them into joinable terms and then recording toSearcher’s docIds. However,
even if docId info would be recorded between phases, it would then have to
be exposed somehow.
Thanks,
Stefan Onofrei
[1]
https://lucene.apache.org/core/8_5_1/join/org/apache/lucene/search/join/JoinUtil.html
[2]
https://lucene.472066.n3.nabble.com/access-to-joined-documents-td4412376.html
[3] https://issues.apache.org/jira/browse/LUCENE-3602