Hmmm, what does the rest of your query look like? And does adding
&debugQuery=on show anything interesting?

Best
Erick

On Thu, Apr 29, 2010 at 6:54 AM, Jan Simon Winkelmann <
winkelm...@newsfactory.de> wrote:

> > > ((valid_from:[* TO 2010-04-29T10:34:12Z]) AND
> > > (valid_till:[2010-04-29T10:34:12Z TO *])) OR ((*:*
> > > -valid_from:[* TO *]) AND (*:* -valid_till:[* TO *])))
> > >
> > > I use the empty checks for datasets which do not have a
> > > valid from/till range.
> > >
> > >
> > > Is there any way to get this any faster?
> >
> > I can suggest you two things.
> >
> > 1-) valid_till:[* TO *] and valid_from:[* TO *] type queries can be
> > performance killer. You can create a new boolean field ( populated via
> > conditional copy or populated client side) that holds the information
> > whether valid_from exists or not. So that valid_till:[* TO *] can be
> > rewritten as valid_till_bool:true.
>
> That may be an idea, however i checked what happens when I simply leave
> them out. It does affect the performance but the query is still somewhere
> around 1 second.
>
> > 2-) If you are embedding these queries into q parameter, you can write
> > your clauses into (filter query) fq parameters so that they are cached.
>
> The problem here is, that the timestamp itself does change quite a bit and
> hence cannot be properly cached. It could be for a few seconds, but
> occasional response times of more than a second is still unacceptable for
> us. We need a solution that responds quickly ALL the time, not just most of
> the time.
>
> Thanks for your ideas though :)
>
> regards,
> Jan-Simon
>
>

Reply via email to