Re: How to correctly get the value given a DocId

2020-03-01 Thread Michael Sokolov
If `advanceExact(docid)` returns false it means that the field does not have a value for the given doc, or it could mean that you attempted to iterate backwards. `advance(docid)` is there to assist with iterating over values in forward order - it's more efficient than callig advanceExact multiple t

Re: How to correctly get the value given a DocId

2020-02-28 Thread Sergio Bilello
Given a docId if I call advanceExact(docId) and if this will return true. Can I call https://github.com/apache/lucene-solr/blob/releases/lucene-solr/8.4.1/lucene/core/src/java/org/apache/lucene/index/NumericDocValues.java#L32-L35 to retrieve the value? If YES I am fine with it if NO what shoul

Re: How to correctly get the value given a DocId

2020-02-28 Thread Alan Woodward
You’re dealing with cases where the document in question doesn’t have a value in the iterator. So `advance(doc)` will return a docId greater than doc, as it moves to the next doc that does have a value, and `advanceExact(doc)` returns `false` because you can’t do an exact advance to a value tha

Re: How to correctly get the value given a DocId

2020-02-27 Thread Sergio Bilello
I changed the code to return a default value instead of an exception. In case the doc will not be found. I would like really to understand better why we have such comment in that iterator * Returns the numeric value for the current document ID. * It is illegal > to call this method after {@link

How to correctly get the value given a DocId

2020-02-27 Thread Sergio
Hi guys! I am a newbie and I am trying to upgrade from Lucene 6.2.1 to 8.4.1 The previous code was leveraging this https://github.com/apache/lucene-solr/blob/releases/lucene-solr/6.2.1/lucene/core/src/java/org/apache/lucene/index/NumericDocValues.java#L34 now https://github.com/apache/lucene-sol