[ 
https://issues.apache.org/jira/browse/SOLR-17148?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17815755#comment-17815755
 ] 

Sanjay Dutt commented on SOLR-17148:
------------------------------------

Added few test cases. Getting searcher object was tricky as one has to manage 
the life cycle of core and searcher such as closing them properly, and after 
updating overlay then ask for new core and again a searcher object which makes 
the test case bit complex. I search in the codebase as well for other examples 
but did not find any in test cases.

Instead, made a rest call to "admin/metrics" which returns all the cache 
objects (documentCache, queryResultCache) registered through SolrIndexSearcher, 
only if they are enabled. 

 

> Config API lies about setting cache enabled=false
> -------------------------------------------------
>
>                 Key: SOLR-17148
>                 URL: https://issues.apache.org/jira/browse/SOLR-17148
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: config-api
>            Reporter: Chris M. Hostetter
>            Priority: Major
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> Using the stock solr {{gettingstarted}} example, you can run the command 
> below and it will give all evidence that it has disabled the document cache:
> {noformat}
> curl -X POST 'http://localhost:8983/solr/gettingstarted/config/' 
> -H'Content-type: application/json' -d 
> '{"set-property":{"query.documentCache.enabled":false}}'
> {noformat}
>  * Api command succeeds
>  * {{configoverlay.json}} is updated in ZK
>  * SolrCore reloads happen for all of the replicas of this collection
> ...but doesn't actually disable the cache. It's still there and in use (easy 
> to verify by executing queries and looking at metrics)
> Explicitly stopping & restarting the solr nodes doesn't fix the problem 
> either.
> They {{enabled}} property name appears to be explicitly allowed by the Config 
> API, because trying to set other arbitrary properties fails (even when 
> supported by the {{CaffieneCache}} impl)...
> {noformat}
> $ curl -X POST 'http://localhost:8983/solr/gettingstarted/config/' 
> -H'Content-type: application/json' -d 
> '{"set-property":{"query.documentCache.async":false}}'
> {
>   "responseHeader":{
>     "status":400,
>     "QTime":8},
>   "errorMessages":["error processing commands, errors: 
> [{errorMessages=['query.documentCache.async' is not an editable property], 
> set-property={query.documentCache.async=false}}], \n"],
> {noformat}
> ...suggesting that modifying the {{enabled}} property is intentionally 
> supported – but doesn't work.
>  
> ----
>  
> A quick & dirty workaround is setting the size=-1 and ignoring the ERROR in 
> the logs on every newSearcher...
> {noformat}
> curl -X POST 'http://localhost:8983/solr/gettingstarted/config/' 
> -H'Content-type: application/json' -d 
> '{"set-property":{"query.documentCache.size":-1}}'
> {noformat}
> (Which seems to indicate that whatever the problem is, it's specific to 
> {{enabled}} – and not a general problem with modifying cache configuration 
> via the Config API)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org
For additional commands, e-mail: issues-h...@solr.apache.org

Reply via email to