You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Alexey Varlamov (JIRA)" <ji...@apache.org> on 2007/01/23 13:51:49 UTC

[jira] Commented: (HARMONY-2504) [drlvm] If method throws exception after monitorenter, JIT does not release the lock.

    [ https://issues.apache.org/jira/browse/HARMONY-2504?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12466733 ] 

Alexey Varlamov commented on HARMONY-2504:
------------------------------------------

Alexander, 
Could you please clarify why you expect IllegalMonitorStateException?
As for the deadlock, I believe it works as expected, see JVM specification paragraph 7.14, which hints that monitorexit should be guarded via try/finally block.
BTW, BEA's JRockit 1.5 behaves exactly as drlvm.

> [drlvm] If method throws exception after monitorenter, JIT does not release the lock.
> -------------------------------------------------------------------------------------
>
>                 Key: HARMONY-2504
>                 URL: https://issues.apache.org/jira/browse/HARMONY-2504
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: Intel x86 IA32, WinXP
>            Reporter: Alexander D Shipilov
>         Attachments: Harmony-2504test.zip
>
>
>  Thread makes monitorenter, and throws exception (NPE) to the output.
> java.lang.IllegalMonitorStateException expected to appear at the output
> (because, according to the specification, the last exception should appear).
> Then other thread tries to get a lock.
> DRLVM hangs up. It's throws NPE instead of IllegalMonitorStateException and does not release the
> lock.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.