reduced to:
( ( *:* -visiblefrom:[* TO *] AND -visibleto:[* TO *] )
OR (-visiblefrom:[* TO *] AND visibleto:[<now in ms> TO <long max
value>])
OR (-visibleto:[ * TO *] AND visiblefrom:[0 TO <now in ms>])
OR ( visiblefrom:[0 TO <now in ms>] AND visibleto:[ <now in ms> TO
<long max value>]) )
> also if you index an explicit null value you won't need them at all
Could it then be reduced to
(-visiblefrom:[* TO *] AND visibleto:[<now in ms> TO <long max value>])
OR (-visibleto:[ * TO *] AND visiblefrom:[0 TO <now in ms>])
OR ( visiblefrom:[0 TO <now in ms>] AND visibleto:[ <now in ms> TO
<long max value>])
?
Would I gain a lot more speed if I set visiblefrom to 0 and visibleto to <long
max value>. The query would then be:
visiblefrom:[0 TO <now in ms>] AND visibleto:[ <now in ms> TO <long max value>]
And a rather Solr'y question, nevertheless I ask it here:
I intended to use this very query as query filter (qf), but I guess it doesn't
make sense because '<now in ms>' changes at every call ;)
-----Ursprüngliche Nachricht-----
Von: Clemens Wyss DEV [mailto:[email protected]]
Gesendet: Montag, 12. Januar 2015 17:14
An: [email protected]
Betreff: AW: AW: howto: handle temporal visibility of a document?
Thx, I will simplify/optimize ;)
-----Ursprüngliche Nachricht-----
Von: Michael Sokolov [mailto:[email protected]]
Gesendet: Montag, 12. Januar 2015 14:41
An: [email protected]
Betreff: Re: AW: howto: handle temporal visibility of a document?
The basic idea seems sound, but I think you can simplify that query a bit. For
one thing, the *:* clauses can be removed in a few places:
also if you index an explicit null value you won't need them at all; for
visiblefrom, if you don't have a from time, use 0, for visibleto, if you don't
have a to time, use maxlong.
-Mike
On 1/12/15 4:23 AM, Clemens Wyss DEV wrote:
> I'll add/start with my proposal ;)
>
> Document-meta fields:
> + visiblefrom [long]
> + visibleto [long]
>
> Query or query filter:
> (*:* -visiblefrom:[* TO *] AND -visibleto:[* TO *]) OR (*:*
> -visiblefrom:[* TO *] AND visibleto:[ <now in ms> TO *]) OR (*:*
> -visibleto:[ * TO *] AND visiblefrom:[* TO <now in ms>]) OR (
> visiblefrom:[* TO <now in ms>] AND visibleto:[ <now in ms> TO *])
>
> -----Ursprüngliche Nachricht-----
> Von: Clemens Wyss DEV [mailto:[email protected]]
> Gesendet: Montag, 12. Januar 2015 09:40
> An: [email protected]
> Betreff: howto: handle temporal visibility of a document?
>
> We have documents that are not always visible (visiblefrom-visibleto). In
> order to not have to query the originating object of the document whether it
> is currently visible (after the query), we'd like to put metadata into the
> documents, so that the visibility can be determined at query-time (by the
> query itself or a query filter). Any suggestions on how to index and query
> this metadata?
>
> ---------------------------------------------------------------------
> 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]
---------------------------------------------------------------------
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]