[ https://issues.apache.org/jira/browse/SOLR-6252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14068795#comment-14068795 ]
Gregory Chanan edited comment on SOLR-6252 at 7/21/14 5:13 PM: --------------------------------------------------------------- Also, the synchronized lock is held when checking the placeholder, when it really only needs to be held for the get/put. (it's subtle to get that correct though, because the non-placeholder needs to be notified correctly, so probably not worth doing. was (Author: gchanan): Also, the synchronized lock is held when checking the placeholder, when it really only needs to be held for the get/put. > Simplify UnInvertedField#getUnInvertedField synchronization module > ------------------------------------------------------------------ > > Key: SOLR-6252 > URL: https://issues.apache.org/jira/browse/SOLR-6252 > Project: Solr > Issue Type: Improvement > Components: search > Affects Versions: 5.0 > Reporter: Vamsee Yarlagadda > Assignee: Mark Miller > Priority: Minor > Attachments: SOLR-6252.patch, SOLR-6252v2.patch > > > Looks like UnInvertedField#getUnInvertedField has implemented a bit > additional synchronization module rather than what is required, and thereby > increasing the complexity. > https://github.com/apache/lucene-solr/blob/trunk/solr/core/src/java/org/apache/solr/request/UnInvertedField.java#L667 > As pointed out in the above link, as the synchronization is performed on the > cache variable(which itself will protect the threads from obtaining access to > the cache), we can safely remove all the placeholder flags. As long as > cache.get() is in synchronized block, we can simply populate the cache with > new entries and other threads will be able to see the changes. > This change has been introduced in > https://issues.apache.org/jira/browse/SOLR-2548 (Multithreaded faceting) -- This message was sent by Atlassian JIRA (v6.2#6252) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org