I am having some strange behavior and want to rule out that the query that I
am constructing is the correct way to deal with this type of query.   This
is what I am working with:

I am creating a query that contains 3 different fields
 Field 1: value   - String
 Field 2: type    - String
 Field 3: time    - Unfortunately Strings

The query will always contain the date range.  The query can contain all 3
fields or at least 1 and 3.
i.e
   1 & 2 & 3
   1 & 3


I tried creating a  BooleanQuery similiar to
   BooleanQuery bq = new BooleanQuery();
   bq.add(new TermQuery(new Term("value",
"hello")),BooleanClause.Occur.MUST);
   bq.add(new TermQuery(new Term("type","email")),BooleanClause.Occur.MUST);

   parallelSearcher.search(bq, new RangeFilter("time", startTime,
endTime,true,true),col);

 TopDoccollector col = new TopDocCollector(1000);
 ParallelMultiSearcher parallelSearcher =  new
ParallelMultiSearcher(indexes);  //  1 to many indexes 

//Now I add the date range
parallelSearcher.search(bq, new RangeFilter("time", startTime,
endTime,true,true),col);


The problem is when there are no matches for the boolean part of the
query... I get an input/output error... 


java.io.IOException: Input/output error
 java.io.RandomAccessFile.readBytes(Native Method)
 java.io.RandomAccessFile.read(RandomAccessFile.java:315)
 at
org.apache.lucene.store.FSDirecotry$FSIndexInput.readInternal(FSDirectory.java:550)
 at
org.apache.lucene.store.BufferedIndexInput.readBytes(BufferedInputInput.java:131)
 at
org.apache.lucene.index.CompoundFileReader$CSIndexInput.readInternal(CompoundFileReader.java:240)
at
org.apache.lucene.instoreBufferedIndexInput.refill(BufferedIndexInput.java:
152)
at
org.apache.lucene.instoreBufferedIndexInput.readByte(BufferedIndexInput.java:
152)
at org.lucene.store.IndexInput.readVInt(IndexInput.java:76)
at org.apache.lucene.index.TermBuffer.read(TermBuffer.java:63)
at org.apache.lucene.index.SegmentTermEnum.next(SegmentTermEnum.java:123)
at org.apache.lucene.index.SegmentTermEnum.scanTo(SegmentTermEnum.java:154)
at
org.apache.lucene.index.TermInfosReader.scanEnum(TermInfosReader.java:223)
at org.apache.lucene.index.TermInfosReader.get(TermInfosReader.java:217)
at org.apache.lucene.index.SegmentReader.docFreq(SegmentReader.java:678)
at org.apache.lucene.search.IndexSearcher.docFreq(IndexSearcher.java:87)
at org.apache.lucene.search.Searcher.docFreqs(searcher.java:118)
at
org.apache.lucene.search.MultiSearcher.createWeight(MultiSearcher.java:311)
at org.apache.lucene.search.Searcher.search(Searcher.java:178) 






Thanks!
Julie

-- 
View this message in context: 
http://www.nabble.com/Newbie-Question%3A-Query-Creation-Best-Approach-tp20195065p20195065.html
Sent from the Lucene - Java Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to