There's index-time and query-time boosting, perhaps that explains it?

On 20 Jun 2012, at 14:35, Rory Franklin wrote:

> The error is now gone, which is great. Thanks so much for fixing that so 
> quickly!
> 
> Looking at the results of the search (with debug on for readability), it 
> doesn't look like the boost is actually getting applied? I have a boost on 
> another field (same name, but without the sort_ prefix) and in the 
> BooleanQuery section of the search result it looks like this:
> 
> entry_human_id:1220091,boost=1.0
> The value in the index is actually 1.5. Is it the case that the boost isn't 
> taking effect or that my query doesn't manually boost that field?
> 
> Rory
> 
> 
> On Wednesday, 20 June 2012 at 13:21, Robert Newson wrote:
> 
>> anyway, I fixed it. 
>> 
>> You'll need to delete the index already built, though, and I'd love to hear 
>> back from you when you try it.
>> 
>> B.
>> 
>> On 20 Jun 2012, at 12:05, Rory Franklin wrote:
>> 
>>> Hi,
>>> 
>>> We've got a machine with couchdb-lucene 0.9 on it and various machines that 
>>> use 0.7 and there seems to be a discrepancy between the two versions.
>>> 
>>> In one of our indexes we are boosting a particular field so that it comes 
>>> above others in search results (we are searching for an ID and linked ID's 
>>> in other documents, but want the document that matches the ID directly to 
>>> return above the linked documents), and the definition looks like this:
>>> 
>>> ret.add(doc.entry_human_id, {'field':'sort_entry_human_id', 'type' : 'int', 
>>> 'boost' : 1.5})
>>> 
>>> On 0.7 this works absolutely fine, but on 0.9 we are seeing this error:
>>> 
>>> 2012-06-20 10:48:04,251 WARN [lia_development] Exiting due to exception.
>>> java.lang.UnsupportedOperationException: You cannot set an index-time 
>>> boost: norms are omitted for field 'sort_entry_human_id'
>>> at 
>>> org.apache.lucene.index.DocInverterPerField.processFields(DocInverterPerField.java:85)
>>> at 
>>> org.apache.lucene.index.DocFieldProcessorPerThread.processDocument(DocFieldProcessorPerThread.java:276)
>>> at 
>>> org.apache.lucene.index.DocumentsWriter.updateDocuments(DocumentsWriter.java:852)
>>> at 
>>> org.apache.lucene.index.IndexWriter.updateDocuments(IndexWriter.java:2167)
>>> at 
>>> com.github.rnewson.couchdb.lucene.DatabaseIndexer.handleResponse(DatabaseIndexer.java:393)
>>> at 
>>> com.github.rnewson.couchdb.lucene.DatabaseIndexer.handleResponse(DatabaseIndexer.java:83)
>>> at 
>>> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:735)
>>> at 
>>> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:709)
>>> at 
>>> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:700)
>>> at 
>>> com.github.rnewson.couchdb.lucene.DatabaseIndexer.run(DatabaseIndexer.java:473)
>>> at java.lang.Thread.run(Thread.java:680)
>>> 
>>> 
>>> 
>>> Removing the boost and restarting couchdb-lucene resolves the issue, I'm 
>>> just curious as to what the problem may be?
>>> 
>>> 
>>> 
>>> Thanks,
>>> Rory
>>> 
>> 
>> 
>> 
> 
> 

Reply via email to