[ https://issues.apache.org/jira/browse/SOLR-5263?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jessica Cheng updated SOLR-5263: -------------------------------- Affects Version/s: 5.0 4.5 > CloudSolrServer URL cache update race > ------------------------------------- > > Key: SOLR-5263 > URL: https://issues.apache.org/jira/browse/SOLR-5263 > Project: Solr > Issue Type: Bug > Components: clients - java, SolrCloud > Affects Versions: 4.4, 4.5, 5.0 > Reporter: Jessica Cheng > Labels: solrcloud, solrj > > In CloudSolrServer.request, urlLists (and the like) is updated if > lastClusterStateHashCode is different from the current hash code of > clusterState. However, each time this happen, only the cache entry for the > current collection being requested is updated. In the following condition > this causes a race: > query collection A so a cache entry exists > update collection A > query collection B, request method notices the hash code changed and update > cache for collection B, updates lastClusterStateHashCode > query collection A, since lastClusterStateHashCode has been updated, no > update for cache for collection A even though it's stale > Can fix one of two ways: > 1. Track lastClusterStateHashCode per collection and lazily update each entry > 2. Every time we notice lastClusterStateHashCode != clusterState.hashCode(), > 2a. rebuild the entire cache for all collections > 2b. clear all current cache for collections -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org