Re: Disable caching

2015-08-24 Thread Jamie Johnson
I ran into another issue that I am having issue running to ground.  My
implementation on Solr 4.x worked as I expected but trying to migrate this
to Solr 5.x it looks like some of the faceting is delegated to
DocValuesFacets which ultimately caches things at a field level in the
FieldCache.DEFAULT cache.  I don't see anyway to override this cache or
augment the key in anyway, am I missing an extension point here?  Is there
another approach I should be taking in this case?

On Wed, Aug 19, 2015 at 9:08 AM, Jamie Johnson  wrote:

> This was my original thought.  We already have the thread local so should
> be straight fwd to just wrap the Field name and use that as the key.  Again
> thanks, I really appreciate the feedback
> On Aug 19, 2015 8:12 AM, "Yonik Seeley"  wrote:
>
>> On Tue, Aug 18, 2015 at 10:58 PM, Jamie Johnson 
>> wrote:
>> > Hmm...so I think I have things setup correctly, I have a custom
>> > QParserPlugin building a custom query that wraps the query built from
>> the
>> > base parser and stores the user who is executing the query.  I've added
>> the
>> > username to the hashCode and equals checks so I think everything is
>> setup
>> > properly.  I ran a quick test and it definitely looks like my items are
>> > being cached now per user, which is really great.
>> >
>> > The outage that I'm running into now is the FieldValueCache doesn't take
>> > into account the query, so the FieldValueCache is built for user a and
>> then
>> > reused for user b, which is an issue for me.  In short I'm back to my
>> > NoOpCache for FieldValues.  It's great that I'm in a better spot for the
>> > others, but is there anything that can be done with FieldValues to take
>> > into account the requesting user?
>>
>> I guess a cache implementation that gets the user through a thread
>> local and either wraps the original key with an object containing the
>> user, or delegates to a per-user cache underneath.
>>
>> -Yonik
>>
>


Re: Disable caching

2015-08-19 Thread Jamie Johnson
This was my original thought.  We already have the thread local so should
be straight fwd to just wrap the Field name and use that as the key.  Again
thanks, I really appreciate the feedback
On Aug 19, 2015 8:12 AM, "Yonik Seeley"  wrote:

> On Tue, Aug 18, 2015 at 10:58 PM, Jamie Johnson  wrote:
> > Hmm...so I think I have things setup correctly, I have a custom
> > QParserPlugin building a custom query that wraps the query built from the
> > base parser and stores the user who is executing the query.  I've added
> the
> > username to the hashCode and equals checks so I think everything is setup
> > properly.  I ran a quick test and it definitely looks like my items are
> > being cached now per user, which is really great.
> >
> > The outage that I'm running into now is the FieldValueCache doesn't take
> > into account the query, so the FieldValueCache is built for user a and
> then
> > reused for user b, which is an issue for me.  In short I'm back to my
> > NoOpCache for FieldValues.  It's great that I'm in a better spot for the
> > others, but is there anything that can be done with FieldValues to take
> > into account the requesting user?
>
> I guess a cache implementation that gets the user through a thread
> local and either wraps the original key with an object containing the
> user, or delegates to a per-user cache underneath.
>
> -Yonik
>


Re: Disable caching

2015-08-19 Thread Yonik Seeley
On Tue, Aug 18, 2015 at 10:58 PM, Jamie Johnson  wrote:
> Hmm...so I think I have things setup correctly, I have a custom
> QParserPlugin building a custom query that wraps the query built from the
> base parser and stores the user who is executing the query.  I've added the
> username to the hashCode and equals checks so I think everything is setup
> properly.  I ran a quick test and it definitely looks like my items are
> being cached now per user, which is really great.
>
> The outage that I'm running into now is the FieldValueCache doesn't take
> into account the query, so the FieldValueCache is built for user a and then
> reused for user b, which is an issue for me.  In short I'm back to my
> NoOpCache for FieldValues.  It's great that I'm in a better spot for the
> others, but is there anything that can be done with FieldValues to take
> into account the requesting user?

I guess a cache implementation that gets the user through a thread
local and either wraps the original key with an object containing the
user, or delegates to a per-user cache underneath.

-Yonik


Re: Disable caching

2015-08-18 Thread Jamie Johnson
Hmm...so I think I have things setup correctly, I have a custom
QParserPlugin building a custom query that wraps the query built from the
base parser and stores the user who is executing the query.  I've added the
username to the hashCode and equals checks so I think everything is setup
properly.  I ran a quick test and it definitely looks like my items are
being cached now per user, which is really great.

The outage that I'm running into now is the FieldValueCache doesn't take
into account the query, so the FieldValueCache is built for user a and then
reused for user b, which is an issue for me.  In short I'm back to my
NoOpCache for FieldValues.  It's great that I'm in a better spot for the
others, but is there anything that can be done with FieldValues to take
into account the requesting user?

On Tue, Aug 18, 2015 at 9:59 PM, Yonik Seeley  wrote:

> On Tue, Aug 18, 2015 at 9:51 PM, Jamie Johnson  wrote:
> > Thanks, I'll try to delve into this.  We are currently using the parent
> > query parser, within we could use {!secure} I think.  Ultimately I would
> > want the solr qparser to actually do the work of parsing and I'd just
> wrap
> > that.
>
> Right... look at something like BoostQParserPlugin
> it should be trivial to wrap any other type of query.
>
> baseParser = subQuery(localParams.get(QueryParsing.V), null);
> Query q = baseParser.getQuery();
>
> q={!secure}my_normal_query
> OR
> q={!secure v=$qq)&qq=my_normal_query
> OR
> q={!secure}{!parent ...}
> OR
> q={!secure v=$qq}&qq={!parent. ..}
>
> -Yonik
>
>
> >  Are there any examples that I could look at for this?  It's not
> > clear to me what to do in the qparser once I have the user auths though.
> > Again thanks, this is really good stuff.
> > On Aug 18, 2015 8:54 PM, "Yonik Seeley"  wrote:
> >
> >> On Tue, Aug 18, 2015 at 8:38 PM, Jamie Johnson 
> wrote:
> >> > I really like this idea in concept.  My query would literally be just
> a
> >> > wrapper at that point, what would be the appropriate place to do this?
> >>
> >> It depends on how much you are trying to make everything transparent
> >> (that there is security) or not.
> >>
> >> First approach is explicitly changing the query types (you obviously
> >> need to make sure that only trusted code can run queries against solr
> >> for this method):
> >> q=foo:bar&fq=inStock:true
> >> q={!secure id=user}foo:bar&fq={!secure id=user}inStock:true
> >>   you could even make the {!secure} qparser look for global security
> >> params so you don't need to repeat them.
> >> q={!secure}foo:bar&fq={!secure}inStock:true&security_id=user
> >>
> >> Second approach would prob involve a search component, probably that
> >> runs after the query component, that would handle wrapping any queries
> >> or filters in the prepare() phase.  This would be slightly more
> >> difficult since it would require ensuring that none of the solr code /
> >> features you use re-grab the "q" or "fq" parameters re-parse without
> >> the opportunity for you to wrap them again.
> >>
> >> > What would I need to do to the query to make it behave with the cache.
> >>
> >> Probably not much... record the credentials in the wrapper and use in
> >> the hashCode / equals.
> >>
> >> -Yonik
> >>
> >>
> >> > Again thanks for the idea, I think this could be a simple way to use
> the
> >> > caches.
> >> >
> >> > On Tue, Aug 18, 2015 at 8:31 PM, Yonik Seeley 
> wrote:
> >> >
> >> >> On Tue, Aug 18, 2015 at 8:19 PM, Jamie Johnson 
> >> wrote:
> >> >> > when you say a security filter, are you asking if I can express my
> >> >> security
> >> >> > constraint as a query?  If that is the case then the answer is
> no.  At
> >> >> this
> >> >> > point I have a requirement to secure Terms (a nightmare I know).
> >> >>
> >> >> Heh - ok, I figured as much.
> >> >>
> >> >> So... you could also wrap the main query and any filter queries in a
> >> >> custom security query that would contain the user, and thus still be
> >> >> able to use filter and query caches unmodified. I know... that's only
> >> >> a small part of the problem though.
> >> >>
> >> >> -Yonik
> >> >>
> >>
>


Re: Disable caching

2015-08-18 Thread Yonik Seeley
On Tue, Aug 18, 2015 at 9:51 PM, Jamie Johnson  wrote:
> Thanks, I'll try to delve into this.  We are currently using the parent
> query parser, within we could use {!secure} I think.  Ultimately I would
> want the solr qparser to actually do the work of parsing and I'd just wrap
> that.

Right... look at something like BoostQParserPlugin
it should be trivial to wrap any other type of query.

baseParser = subQuery(localParams.get(QueryParsing.V), null);
Query q = baseParser.getQuery();

q={!secure}my_normal_query
OR
q={!secure v=$qq)&qq=my_normal_query
OR
q={!secure}{!parent ...}
OR
q={!secure v=$qq}&qq={!parent. ..}

-Yonik


>  Are there any examples that I could look at for this?  It's not
> clear to me what to do in the qparser once I have the user auths though.
> Again thanks, this is really good stuff.
> On Aug 18, 2015 8:54 PM, "Yonik Seeley"  wrote:
>
>> On Tue, Aug 18, 2015 at 8:38 PM, Jamie Johnson  wrote:
>> > I really like this idea in concept.  My query would literally be just a
>> > wrapper at that point, what would be the appropriate place to do this?
>>
>> It depends on how much you are trying to make everything transparent
>> (that there is security) or not.
>>
>> First approach is explicitly changing the query types (you obviously
>> need to make sure that only trusted code can run queries against solr
>> for this method):
>> q=foo:bar&fq=inStock:true
>> q={!secure id=user}foo:bar&fq={!secure id=user}inStock:true
>>   you could even make the {!secure} qparser look for global security
>> params so you don't need to repeat them.
>> q={!secure}foo:bar&fq={!secure}inStock:true&security_id=user
>>
>> Second approach would prob involve a search component, probably that
>> runs after the query component, that would handle wrapping any queries
>> or filters in the prepare() phase.  This would be slightly more
>> difficult since it would require ensuring that none of the solr code /
>> features you use re-grab the "q" or "fq" parameters re-parse without
>> the opportunity for you to wrap them again.
>>
>> > What would I need to do to the query to make it behave with the cache.
>>
>> Probably not much... record the credentials in the wrapper and use in
>> the hashCode / equals.
>>
>> -Yonik
>>
>>
>> > Again thanks for the idea, I think this could be a simple way to use the
>> > caches.
>> >
>> > On Tue, Aug 18, 2015 at 8:31 PM, Yonik Seeley  wrote:
>> >
>> >> On Tue, Aug 18, 2015 at 8:19 PM, Jamie Johnson 
>> wrote:
>> >> > when you say a security filter, are you asking if I can express my
>> >> security
>> >> > constraint as a query?  If that is the case then the answer is no.  At
>> >> this
>> >> > point I have a requirement to secure Terms (a nightmare I know).
>> >>
>> >> Heh - ok, I figured as much.
>> >>
>> >> So... you could also wrap the main query and any filter queries in a
>> >> custom security query that would contain the user, and thus still be
>> >> able to use filter and query caches unmodified. I know... that's only
>> >> a small part of the problem though.
>> >>
>> >> -Yonik
>> >>
>>


Re: Disable caching

2015-08-18 Thread Jamie Johnson
Thanks, I'll try to delve into this.  We are currently using the parent
query parser, within we could use {!secure} I think.  Ultimately I would
want the solr qparser to actually do the work of parsing and I'd just wrap
that.  Are there any examples that I could look at for this?  It's not
clear to me what to do in the qparser once I have the user auths though.
Again thanks, this is really good stuff.
On Aug 18, 2015 8:54 PM, "Yonik Seeley"  wrote:

> On Tue, Aug 18, 2015 at 8:38 PM, Jamie Johnson  wrote:
> > I really like this idea in concept.  My query would literally be just a
> > wrapper at that point, what would be the appropriate place to do this?
>
> It depends on how much you are trying to make everything transparent
> (that there is security) or not.
>
> First approach is explicitly changing the query types (you obviously
> need to make sure that only trusted code can run queries against solr
> for this method):
> q=foo:bar&fq=inStock:true
> q={!secure id=user}foo:bar&fq={!secure id=user}inStock:true
>   you could even make the {!secure} qparser look for global security
> params so you don't need to repeat them.
> q={!secure}foo:bar&fq={!secure}inStock:true&security_id=user
>
> Second approach would prob involve a search component, probably that
> runs after the query component, that would handle wrapping any queries
> or filters in the prepare() phase.  This would be slightly more
> difficult since it would require ensuring that none of the solr code /
> features you use re-grab the "q" or "fq" parameters re-parse without
> the opportunity for you to wrap them again.
>
> > What would I need to do to the query to make it behave with the cache.
>
> Probably not much... record the credentials in the wrapper and use in
> the hashCode / equals.
>
> -Yonik
>
>
> > Again thanks for the idea, I think this could be a simple way to use the
> > caches.
> >
> > On Tue, Aug 18, 2015 at 8:31 PM, Yonik Seeley  wrote:
> >
> >> On Tue, Aug 18, 2015 at 8:19 PM, Jamie Johnson 
> wrote:
> >> > when you say a security filter, are you asking if I can express my
> >> security
> >> > constraint as a query?  If that is the case then the answer is no.  At
> >> this
> >> > point I have a requirement to secure Terms (a nightmare I know).
> >>
> >> Heh - ok, I figured as much.
> >>
> >> So... you could also wrap the main query and any filter queries in a
> >> custom security query that would contain the user, and thus still be
> >> able to use filter and query caches unmodified. I know... that's only
> >> a small part of the problem though.
> >>
> >> -Yonik
> >>
>


Re: Disable caching

2015-08-18 Thread Yonik Seeley
On Tue, Aug 18, 2015 at 8:38 PM, Jamie Johnson  wrote:
> I really like this idea in concept.  My query would literally be just a
> wrapper at that point, what would be the appropriate place to do this?

It depends on how much you are trying to make everything transparent
(that there is security) or not.

First approach is explicitly changing the query types (you obviously
need to make sure that only trusted code can run queries against solr
for this method):
q=foo:bar&fq=inStock:true
q={!secure id=user}foo:bar&fq={!secure id=user}inStock:true
  you could even make the {!secure} qparser look for global security
params so you don't need to repeat them.
q={!secure}foo:bar&fq={!secure}inStock:true&security_id=user

Second approach would prob involve a search component, probably that
runs after the query component, that would handle wrapping any queries
or filters in the prepare() phase.  This would be slightly more
difficult since it would require ensuring that none of the solr code /
features you use re-grab the "q" or "fq" parameters re-parse without
the opportunity for you to wrap them again.

> What would I need to do to the query to make it behave with the cache.

Probably not much... record the credentials in the wrapper and use in
the hashCode / equals.

-Yonik


> Again thanks for the idea, I think this could be a simple way to use the
> caches.
>
> On Tue, Aug 18, 2015 at 8:31 PM, Yonik Seeley  wrote:
>
>> On Tue, Aug 18, 2015 at 8:19 PM, Jamie Johnson  wrote:
>> > when you say a security filter, are you asking if I can express my
>> security
>> > constraint as a query?  If that is the case then the answer is no.  At
>> this
>> > point I have a requirement to secure Terms (a nightmare I know).
>>
>> Heh - ok, I figured as much.
>>
>> So... you could also wrap the main query and any filter queries in a
>> custom security query that would contain the user, and thus still be
>> able to use filter and query caches unmodified. I know... that's only
>> a small part of the problem though.
>>
>> -Yonik
>>


Re: Disable caching

2015-08-18 Thread Jamie Johnson
I really like this idea in concept.  My query would literally be just a
wrapper at that point, what would be the appropriate place to do this?
What would I need to do to the query to make it behave with the cache.

Again thanks for the idea, I think this could be a simple way to use the
caches.

On Tue, Aug 18, 2015 at 8:31 PM, Yonik Seeley  wrote:

> On Tue, Aug 18, 2015 at 8:19 PM, Jamie Johnson  wrote:
> > when you say a security filter, are you asking if I can express my
> security
> > constraint as a query?  If that is the case then the answer is no.  At
> this
> > point I have a requirement to secure Terms (a nightmare I know).
>
> Heh - ok, I figured as much.
>
> So... you could also wrap the main query and any filter queries in a
> custom security query that would contain the user, and thus still be
> able to use filter and query caches unmodified. I know... that's only
> a small part of the problem though.
>
> -Yonik
>


Re: Disable caching

2015-08-18 Thread Yonik Seeley
On Tue, Aug 18, 2015 at 8:19 PM, Jamie Johnson  wrote:
> when you say a security filter, are you asking if I can express my security
> constraint as a query?  If that is the case then the answer is no.  At this
> point I have a requirement to secure Terms (a nightmare I know).

Heh - ok, I figured as much.

So... you could also wrap the main query and any filter queries in a
custom security query that would contain the user, and thus still be
able to use filter and query caches unmodified. I know... that's only
a small part of the problem though.

-Yonik


Re: Disable caching

2015-08-18 Thread Jamie Johnson
when you say a security filter, are you asking if I can express my security
constraint as a query?  If that is the case then the answer is no.  At this
point I have a requirement to secure Terms (a nightmare I know).  Our
fallback is to aggregate the authorizations to a document level and secure
the document which I think we wouldn't have to do anything to the caches
but our customer has pushed back on this in the past.

On Tue, Aug 18, 2015 at 7:46 PM, Yonik Seeley  wrote:

> On Tue, Aug 18, 2015 at 7:11 PM, Jamie Johnson  wrote:
> > Yes, my use case is security.  Basically I am executing queries with
> > certain auths and when they are executed multiple times with differing
> > auths I'm getting cached results.
>
> If it's just simple stuff like top N docs returned, can't you just use
> a security filter?
>
> The queryResult cache uses both the main query and a list of filters
> (and the sort order) for the cache key.
>
> -Yonik
>


Re: Disable caching

2015-08-18 Thread Yonik Seeley
On Tue, Aug 18, 2015 at 7:11 PM, Jamie Johnson  wrote:
> Yes, my use case is security.  Basically I am executing queries with
> certain auths and when they are executed multiple times with differing
> auths I'm getting cached results.

If it's just simple stuff like top N docs returned, can't you just use
a security filter?

The queryResult cache uses both the main query and a list of filters
(and the sort order) for the cache key.

-Yonik


Re: Disable caching

2015-08-18 Thread Jamie Johnson
Yes, my use case is security.  Basically I am executing queries with
certain auths and when they are executed multiple times with differing
auths I'm getting cached results.  One option is to have another
implementation that has a number of caches based on the auths, something
that I suspect we will at some point go (unless there is a better solution
;).  I'd be happy to look at other options so all suggestions are
appreciated.

On Tue, Aug 18, 2015 at 6:56 PM, Yonik Seeley  wrote:

> You can comment out (some) of the caches.
>
> There are some caches like field caches that are more at the lucene
> level and can't be disabled.
>
> Can I ask what you are trying to prevent from being cached and why?
> Different caches are for different things, so it would seem to be an
> odd usecase to disable them all.  Security?
>
> -Yonik
>
>
> On Tue, Aug 18, 2015 at 6:52 PM, Jamie Johnson  wrote:
> > I see that if Solr is in realtime mode that caching is disable within the
> > SolrIndexSearcher that is created in SolrCore, but is there anyway to
> > disable caching without being in realtime mode?  Currently I'm
> implementing
> > a NoOp cache that implements SolrCache but returns null for everything
> and
> > doesn't return anything on the get requests, but it would be nice to not
> > need to do this by being able to disable caching in general.  Is this
> > possible?
> >
> > -Jamie
>


Re: Disable caching

2015-08-18 Thread Yonik Seeley
You can comment out (some) of the caches.

There are some caches like field caches that are more at the lucene
level and can't be disabled.

Can I ask what you are trying to prevent from being cached and why?
Different caches are for different things, so it would seem to be an
odd usecase to disable them all.  Security?

-Yonik


On Tue, Aug 18, 2015 at 6:52 PM, Jamie Johnson  wrote:
> I see that if Solr is in realtime mode that caching is disable within the
> SolrIndexSearcher that is created in SolrCore, but is there anyway to
> disable caching without being in realtime mode?  Currently I'm implementing
> a NoOp cache that implements SolrCache but returns null for everything and
> doesn't return anything on the get requests, but it would be nice to not
> need to do this by being able to disable caching in general.  Is this
> possible?
>
> -Jamie


Disable caching

2015-08-18 Thread Jamie Johnson
I see that if Solr is in realtime mode that caching is disable within the
SolrIndexSearcher that is created in SolrCore, but is there anyway to
disable caching without being in realtime mode?  Currently I'm implementing
a NoOp cache that implements SolrCache but returns null for everything and
doesn't return anything on the get requests, but it would be nice to not
need to do this by being able to disable caching in general.  Is this
possible?

-Jamie


Disable caching in sort

2014-09-21 Thread Apoorva Gaurav
Hello All,

We are trying to provide a personalized sort order for each user. We've a
per-computed list of user to products and if it matches the solr result set
those products need to be shown upfront. One way can be handling this in
application but pagination becomes tricky. Another way we are exploring
this is via a custom value source where we'll pass productid to
custom-score and sort based on this. We've been able to manipulate result
set using this, but sort order is getting cached. One way can be using
{!cache=false} but that would lead to performance degradation. Any other
way of achieving this?

-- 
Thanks & Regards,
Apoorva


RE: Disable caching on sorting to improve performance

2013-12-27 Thread PeterKerk
Thanks and good call, that has been there for quite some time! 
I've changed it to: -Xms200m -Xmx1500m 
I'll look into the effect of this first.



--
View this message in context: 
http://lucene.472066.n3.nabble.com/Disable-caching-on-sorting-to-improve-performance-tp4108356p4108362.html
Sent from the Solr - User mailing list archive at Nabble.com.


RE: Disable caching on sorting to improve performance

2013-12-27 Thread Markus Jelsma
Hi,

Sorting uses Lucene FieldCache which you cannot disable. If you have lots of 
documents and sort on three fields, you must increase the heap space. Also, 
note that you have defined Xmx twice here, i don't know what effect that will 
have.

Cheers
 
 
-Original message-
> From:PeterKerk 
> Sent: Friday 27th December 2013 12:39
> To: solr-user@lucene.apache.org
> Subject: Disable caching on sorting to improve performance
> 
> I'm getting a lot of java heap memory full errors. I've now been reading into
> solr performance (in the meantime also configuring the sematext tools to try
> to drill down to the cause)
> 
> I already increased the memory available to Solr:
> bash -c "cd /cygdrive/c/Databases/solr-4.3.1/example/;java
> -Dsolr.solr.home="./example-DIH/solr/" -jar -Xmx200m -Xmx1200m start.jar" 
> 
> And now I read:
> Factors that affect memory usage:
> http://stackoverflow.com/questions/1546898/how-to-reduce-solr-memory-usage
> I see that sorting affects memory usage. I have the feeling that is the case
> for me, because since I implemented sorting the memory errors are going
> through the roof. 
> 
> I read here
> http://wiki.apache.org/solr/CommonQueryParameters#Caching_of_filters how to
> do it on filter queries, but I was wondering how I can disable the caching
> on the sort parameter in below statement where it now has
> `&sort=clickcount%20desc,prijs%20desc,updatedate%20desc`
> 
> 
> searchquery.Append("&fl=id,artikelnummer,titel,friendlyurl,pricerange,lang,currency,createdate")
> searchquery.Append("&facet.field=pricerange")
> searchquery.Append("&facet.mincount=1") 
> searchquery.Append("&facet.sort=index") 
> searchquery.Append("&omitHeader=true")
> searchquery.Append("&sort=clickcount%20desc,prijs%20desc,updatedate%20desc") 
>   
> 
> 
> 
> --
> View this message in context: 
> http://lucene.472066.n3.nabble.com/Disable-caching-on-sorting-to-improve-performance-tp4108356.html
> Sent from the Solr - User mailing list archive at Nabble.com.
> 


Disable caching on sorting to improve performance

2013-12-27 Thread PeterKerk
I'm getting a lot of java heap memory full errors. I've now been reading into
solr performance (in the meantime also configuring the sematext tools to try
to drill down to the cause)

I already increased the memory available to Solr:
bash -c "cd /cygdrive/c/Databases/solr-4.3.1/example/;java
-Dsolr.solr.home="./example-DIH/solr/" -jar -Xmx200m -Xmx1200m start.jar" 

And now I read:
Factors that affect memory usage:
http://stackoverflow.com/questions/1546898/how-to-reduce-solr-memory-usage
I see that sorting affects memory usage. I have the feeling that is the case
for me, because since I implemented sorting the memory errors are going
through the roof. 

I read here
http://wiki.apache.org/solr/CommonQueryParameters#Caching_of_filters how to
do it on filter queries, but I was wondering how I can disable the caching
on the sort parameter in below statement where it now has
`&sort=clickcount%20desc,prijs%20desc,updatedate%20desc`


searchquery.Append("&fl=id,artikelnummer,titel,friendlyurl,pricerange,lang,currency,createdate")
searchquery.Append("&facet.field=pricerange")
searchquery.Append("&facet.mincount=1") 
searchquery.Append("&facet.sort=index") 
searchquery.Append("&omitHeader=true")
searchquery.Append("&sort=clickcount%20desc,prijs%20desc,updatedate%20desc") 
  



--
View this message in context: 
http://lucene.472066.n3.nabble.com/Disable-caching-on-sorting-to-improve-performance-tp4108356.html
Sent from the Solr - User mailing list archive at Nabble.com.


Re: Disable Caching

2012-10-17 Thread Chris Hostetter

: If you are not searching against your master, and you shouldn't (and
: it sounds like you aren't), then you don't have to worry about
: disabling caches - they will just remain empty.  You could comment
: them out, but I think that won't actually disable them.

FWIW: what i generall advocate is that even if you have a machine that 
*should* never get queries (ie: master, repeater, backup, ... whatever) 
it's still a good idea to leave small caching enabled on that machine.

the reason being that *IF* some rogue client mistakenly starts sending 
requests to this server they are not suppose to be sending requests to, 
then i would rather those requests get cached to help reduce the likelyood 
of the machine rolling over and dieing under load -- but i advise 
disabling all the autowarming and any explicit newSearcher warming you 
might normally confugre so that if there is a blip and this situation does 
happen, then newSearcher events aren't delayed dealing with caching 
warming over and over again even long after the rogue client gets stopped.

Related suggestion: disable all the requestHandler names you clients 
nomraly query in your "master" solrconfig.xml, and only expose on using a 
really bizare unlikely name so you have someway to query that index for 
debugging ... that way if clients that normally query 
"http://slave:8983/solr/products/search?q=..."; get misconfigured to hit 
"http://master:8983/solr/products/search?q=..."; they'll get a 404.  but 
you can still use 
"http://master:8983/solr/products/secret-debug-search?q=..."; as needed.


-Hoss


Re: Disable Caching

2012-10-17 Thread Anderson vasconcelos
Thanks for the replies.



2012/10/17 Otis Gospodnetic 

> Hi,
>
> If you are not searching against your master, and you shouldn't (and
> it sounds like you aren't), then you don't have to worry about
> disabling caches - they will just remain empty.  You could comment
> them out, but I think that won't actually disable them.
>
> Warmup queries you can just comment our in solrconfig.xml.
>
> Otis
> --
> Search Analytics - http://sematext.com/search-analytics/index.html
> Performance Monitoring - http://sematext.com/spm/index.html
>
>
> On Wed, Oct 17, 2012 at 12:25 PM, Anderson vasconcelos
>  wrote:
> > Hi
> >
> > I have a server that just index data and sincronize this data to others
> > slaves. In my arquitecture, i have a one master server that only receive
> > index requests and n slaves that receives only search requests.
> >
> > I wanna to disable the cache of the master server, because they not
> receive
> > a search request, this is the best way? I can do this?
> >
> > Wat about warmingSearch, i must disable this too?
> >
> > I'm using solr 3.6.0
> >
> > Thanks
>


Re: Disable Caching

2012-10-17 Thread Otis Gospodnetic
Hi,

If you are not searching against your master, and you shouldn't (and
it sounds like you aren't), then you don't have to worry about
disabling caches - they will just remain empty.  You could comment
them out, but I think that won't actually disable them.

Warmup queries you can just comment our in solrconfig.xml.

Otis
--
Search Analytics - http://sematext.com/search-analytics/index.html
Performance Monitoring - http://sematext.com/spm/index.html


On Wed, Oct 17, 2012 at 12:25 PM, Anderson vasconcelos
 wrote:
> Hi
>
> I have a server that just index data and sincronize this data to others
> slaves. In my arquitecture, i have a one master server that only receive
> index requests and n slaves that receives only search requests.
>
> I wanna to disable the cache of the master server, because they not receive
> a search request, this is the best way? I can do this?
>
> Wat about warmingSearch, i must disable this too?
>
> I'm using solr 3.6.0
>
> Thanks


RE: Disable Caching

2012-10-17 Thread Harshvardhan Ojha
Yes Anderson, you don't need cache for master, neither warming.

-Original Message-
From: Anderson vasconcelos [mailto:anderson.v...@gmail.com] 
Sent: Wednesday, October 17, 2012 9:55 PM
To: solr-user
Subject: Disable Caching

Hi

I have a server that just index data and sincronize this data to others slaves. 
In my arquitecture, i have a one master server that only receive index requests 
and n slaves that receives only search requests.

I wanna to disable the cache of the master server, because they not receive a 
search request, this is the best way? I can do this?

Wat about warmingSearch, i must disable this too?

I'm using solr 3.6.0

Thanks


Re: OOME diagnosis - possible to disable caching?

2009-01-19 Thread Mike Klaas

On 19-Jan-09, at 2:44 PM, James Brady wrote:

Hi all, I have 20 indices, each ~10GB in size, being searched by a  
single
Solr slave instance (using the multicore features in a slightly old  
1.2 dev

build)
I'm getting unpredictable, but inevitable, OutOfMemoryError from the  
slave,
and I have no more physical memory to throw at the problem (HotSpot  
1.6 with
Xmx=4000m). At this point, I'd like to see how much memory Lucene is  
eating

by disabling all supplemental Solr caches.

Which solrconfig settings do I need to be paying attention to
here? filterCache, queryResultCache and documentCache?


That should be it.  Note that it is unadvisable to reduce  
documentCache size to less than 100 or so, as Solr assumes that enough  
cache for the docs for one query.


A heap dump should help point you in to the relevant problems.  Also,  
it should be easy to get a rough estimate of the filtercache mem usage  
by looking at its size.


-Mike


OOME diagnosis - possible to disable caching?

2009-01-19 Thread James Brady
Hi all, I have 20 indices, each ~10GB in size, being searched by a single
Solr slave instance (using the multicore features in a slightly old 1.2 dev
build)
I'm getting unpredictable, but inevitable, OutOfMemoryError from the slave,
and I have no more physical memory to throw at the problem (HotSpot 1.6 with
Xmx=4000m). At this point, I'd like to see how much memory Lucene is eating
by disabling all supplemental Solr caches.

Which solrconfig settings do I need to be paying attention to
here? filterCache, queryResultCache and documentCache?

I'm not faceting, sorting, highlighting or anything like that (all in an
effort to get more docs in a searchable index!)

Thanks!
James