lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Miller (JIRA)" <>
Subject [jira] Commented: (LUCENE-1821) Weight.scorer() not passed doc offset for "sub reader"
Date Wed, 19 Aug 2009 03:31:15 GMT


Mark Miller commented on LUCENE-1821:

You may get furthers with others than me Tim, so don't get too, too caught up with me. McCandless
is still on vacation for one, and he may have ideas other than mine (and certainly better
ideas even if they are not other) - others may still jump in too. The two of us did the majority
of the per segment work though. Yonik has also fought through a lot of this type of stuff
with Solr - I'm sure he has some stance on this stuff.

bq. Whereever an IndexReader is exposed in API calls, it should be possible to walk the IndexReader's
parent IndexReaders until you get the top level reader in order to have the full context of
that IndexReader

Solr now works this way to get around some of the per segment issues. I'm not sure if it makes
sense to support that fully in Lucene or not. Perhaps so. Too late for me to properly think
though - time for bed.

Any downsides I wonder ...

I think my main issue is that it will encourage people to work per top level reader and it
will force us to take that into account ...

> Weight.scorer() not passed doc offset for "sub reader"
> ------------------------------------------------------
>                 Key: LUCENE-1821
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Search
>    Affects Versions: 2.9
>            Reporter: Tim Smith
> Now that searching is done on a per segment basis, there is no way for a Scorer to know
the "actual" doc id for the document's it matches (only the relative doc offset into the segment)
> If using caches in your scorer that are based on the "entire" index (all segments), there
is now no way to index into them properly from inside a Scorer because the scorer is not passed
the needed offset to calculate the "real" docid
> suggest having Weight.scorer() method also take a integer for the doc offset
> Abstract Weight class should have a constructor that takes this offset as well as a method
to get the offset
> All Weights that have "sub" weights must pass this offset down to created "sub" weights

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message