lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aron Sogor <a...@theatlantis.net>
Subject Re: Sort does not work for me
Date Tue, 15 Jan 2008 03:41:32 GMT
Let me qualify my question:

Sort is not working for a field that I stored :

           document.add(new Field(FIELD_RECEIVED, DateTools.timeToString(
                   System.currentTimeMillis(), 
DateTools.Resolution.SECOND),
                   Field.Store.NO, Field.Index.UN_TOKENIZED));

using the query bellow with sort:
Sort sort = new Sort(FIELD_RECEIVED,true);

even if I do reverse=false the order of the hits does not really change. 
The question is why would that be. The dates are numbers that even is 
sorted as strings should order the same, and reverse should work.

Aron



Aron Sogor wrote:
> Here is the document:
>
>            MimeMessage mime = new MimeMessage(null, new 
> FileInputStream(item
>                    .getMailFile()));
>            document.add(new Field(FIELD_MAILID, 
> item.getMailId().toString(),
>                    Field.Store.YES, Field.Index.UN_TOKENIZED));
>            document.add(new Field(FIELD_SUBJECT, mime.getSubject(),
>                    Field.Store.COMPRESS, Field.Index.TOKENIZED));
>            document.add(new Field(FIELD_FROM, 
> getAddressLine(mime.getFrom()),
>                    Field.Store.COMPRESS, Field.Index.TOKENIZED));
>            document.add(new Field(FIELD_BODY, getContentReader(mime
>                    .getContent())));
>            document.add(new Field(FIELD_RECEIVED, DateTools.timeToString(
>                    System.currentTimeMillis(), 
> DateTools.Resolution.SECOND),
>                    Field.Store.NO, Field.Index.UN_TOKENIZED));
>            document.add(new Field(FIELD_TAG, TAG_INBOX, Field.Store.YES,
>                    Field.Index.TOKENIZED));
>            return document;
>
> here is the search:
>
>    public static Hits createInboxQuery(IndexSearcher searcher)
>            throws ParseException, IOException {
>        Query query = new QueryParser(FIELD_TAG, new StandardAnalyzer())
>                .parse(TAG_INBOX);
>        Sort sort = new Sort(FIELD_RECEIVED,true);
>        return searcher.search(query, sort);
>    }
>
>            IndexSearcher searcher = 
> storage.getIndexSearcherForMailBox("junk");
>            Hits hits = 
> DocumentAndQueryFactory.createInboxQuery(searcher);
>            for (int i = 0; i < hits.length(); i++) {
>                Document hit = (Document) hits.doc(i);
>                System.out.println(hit.getField("subject").stringValue());
>
>
> No matter what I do when I lit the hits they come back (these are the 
> subjects/ but essentially same timestamp):
>
> Test MSGSun Jan 13 15:52:47 PST 2008
> Test MSGSun Jan 13 15:52:54 PST 2008
> Test MSGSun Jan 13 15:53:03 PST 2008
> Test MSGSun Jan 13 15:53:12 PST 2008
> Test MSGSun Jan 13 15:53:48 PST 2008
>
> Setting the "revert" for the search Sort essentially has no effect. I 
> perhaps very much missing something... but what?
>
> Aron
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message