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

Yonik Seeley commented on SOLR-6846:
------------------------------------

It's not clear from the description what the problem is.

bq. because cache.wait() is synchronized with the same monitor object.

This is how wait/notify are supposed to work - use the same monitor.  The call 
to wait() will release the monitor while the thread that called it is blocked.

> deadlock in UninvertedField#getUninvertedField()
> ------------------------------------------------
>
>                 Key: SOLR-6846
>                 URL: https://issues.apache.org/jira/browse/SOLR-6846
>             Project: Solr
>          Issue Type: Bug
>          Components: search
>    Affects Versions: 4.10.2
>            Reporter: Avishai Ish-Shalom
>             Fix For: 5.0, Trunk
>
>         Attachments: SOLR-6846.patch
>
>
> Multiple concurrent calls to UninvertedField#getUninvertedField may deadlock: 
> if a call gets to {{cache.wait()}} before another thread gets to the 
> synchronized block around {{cache.notifyAll()}} code will deadlock because 
> {{cache.wait()}} is synchronized with the same monitor object.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to