On Thu, Apr 23, 2009 at 10:39 PM, <bill.che...@sungard.com> wrote:

> I'm getting a strange error when I make a Lucene (2.2.0) query:
>
> java.lang.RuntimeException: there are more terms than documents in field
> "objectId", but it's impossible to sort on tokenized fields
>

Is it possible that, for at least one document, multiple "objectId" fields
were created?
This would also create this problem.

PS. Just as an aside, what does it mean for a field to be stored or not
> stored.  Looking at the output above, the 'id' field is stored and the
> 'objectId' is not.  Yet both of them get displayed by the
> Document.toString() method.  So even the objectId field got "stored" at
> least in the sense that I understand the term (otherwise how did it get
> displayed) so I'm obviously missing something about what "stored" means
> in the Lucene context.
>

The printed document object is the same document object that was created
for indexing. But when a document is read from the index (via IndexReader
API)
it will only contain the stored fields. For instance, assume that at search
time you
would like to get the URL of a result document and display it to the user.
For this
you can at indexing time add the URL to a stored field.

Doron

Reply via email to