Lucene ordering not working correctly when limiting the returned results number
Eirikur Hrafnsson <[email protected]> Wed, 2 May 2007 10:47:56 +0000
| Newsgroups | gmane.comp.jakarta.slide.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, I'm having a problem with a Lucene search that should order the results by the modified date and limit the number of results given back to me. It seems that it always returnes an unorderer list of the results which is unusable to me... If I only specify the ordering it seems to work fine but as soon as I limit it to e.g. 5 results the results aren't the top 5 items from the unlimited search but just some part (i'm guessing the first unordered part) of the total result. Here's my DASL XML <D:searchrequest xmlns:D='DAV:' xmlns:S='http://jakarta.apache.org/ slide/'> <D:basicsearch> <D:select><D:prop><D:getcontentlength/><D:creationdate/ ><D:displayname/><D:getlastmodified/></D:prop></D:select> <D:from><D:scope><D:href>files</D:href><D:depth>infinity</D:depth></ D:scope></D:from> <D:where><D:and><D:or><D:contains>*</D:contains><S:property- contains><D:prop><D:displayname/></D:prop><D:literal>*</D:literal></ S:property-contains><S:property-contains><D:prop><D:creator- displayname/></D:prop><D:literal>*</D:literal></S:property- contains><S:property-contains><D:prop><D:comment/></ D:prop><D:literal>*</D:literal></S:property-contains></D:or><D:not-is- collection/></D:and></D:where> <D:orderby><D:order><D:prop><D:getlastmodified/></ D:prop><D:descending/></D:order></D:orderby> <D:limit><D:nresults>5</D:nresults></D:limit> </D:basicsearch></D:searchrequest> Any ideas or fixes? Best Regards Eirikur S. Hrafnsson, [email protected] Chief Software Engineer Idega Software http://www.idega.com