Erik - Spot on. I should have listened to your advice from the talk and just used YYYYMMDD :)
Everything works nicely now that I do the conversion. Thanks for the great ideas. Dion > -----Original Message----- > From: Erik Hatcher [mailto:[EMAIL PROTECTED] > Sent: Sunday, November 23, 2003 11:41 PM > To: Lucene Users List > Subject: Re: Dates and others > > On Sunday, November 23, 2003, at 03:33 PM, Dion Almaer wrote: > > This leads me to another issue actually. On certain range > queries I > > get exceptions: > > > > Query: modifieddate:[1/1/03 TO 12/31/03] > > > > org.apache.lucene.search.BooleanQuery$TooManyClauses > > I'm guessing you're using Field.Keyword(String, Date) for > modifieddate? > The date field stuff in Lucene is really a timestamp, and > doing a range query enumerates all the terms for that field > in that ranging making a big ol' boolean OR query of all the > individual ones. Since you want this to be just a date, use > Field.Keyword(String, "YYYYMMDD") instead. But.... you'll > want to subclass QueryParser and override getRangeQuery to do > the right date format parsing from "MM/DD/YYYY" > into "YYYYMMDD" rather than the internal Date representation > Lucene uses for "date" fields. > > Erik > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
