[ 
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

Reply via email to