You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Stefano Bagnara (JIRA)" <ji...@apache.org> on 2008/09/13 16:40:44 UTC

[jira] Created: (SANDBOX-255) [javaflow] synchronized(obj) support is missing (locks are not released when suspending resulting in IllegalMonitorExceptions)

[javaflow] synchronized(obj) support is missing (locks are not released when suspending resulting in IllegalMonitorExceptions)
------------------------------------------------------------------------------------------------------------------------------

                 Key: SANDBOX-255
                 URL: https://issues.apache.org/jira/browse/SANDBOX-255
             Project: Commons Sandbox
          Issue Type: Bug
          Components: Javaflow
            Reporter: Stefano Bagnara


MONITORENTER/MONITOREXIT are ignored by the rewriting engine.

They should be tracked so that MONITOREXIT is issued for each monitor when suspending and MONITORENTER si "replayed" when continuing.

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


[jira] Commented: (SANDBOX-255) [javaflow] synchronized(obj) support is missing (locks are not released when suspending resulting in IllegalMonitorExceptions)

Posted by "Stefano Bagnara (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SANDBOX-255?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12630778#action_12630778 ] 

Stefano Bagnara commented on SANDBOX-255:
-----------------------------------------

The submitted patch assume that a MONITORENTER always happen for a local variable.
In my test the synchronized(object) made object to be a local variable too, so this should work.

I'm not sure if this is *always* the case.

> [javaflow] synchronized(obj) support is missing (locks are not released when suspending resulting in IllegalMonitorExceptions)
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SANDBOX-255
>                 URL: https://issues.apache.org/jira/browse/SANDBOX-255
>             Project: Commons Sandbox
>          Issue Type: Bug
>          Components: Javaflow
>            Reporter: Stefano Bagnara
>         Attachments: SANDBOX-255.diff
>
>
> MONITORENTER/MONITOREXIT are ignored by the rewriting engine.
> They should be tracked so that MONITOREXIT is issued for each monitor when suspending and MONITORENTER si "replayed" when continuing.

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


[jira] Updated: (SANDBOX-255) [javaflow] synchronized(obj) support is missing (locks are not released when suspending resulting in IllegalMonitorExceptions)

Posted by "Stefano Bagnara (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SANDBOX-255?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stefano Bagnara updated SANDBOX-255:
------------------------------------

    Attachment: SANDBOX-255.diff

Preliminary support for Synchroned blocks.

The previous synchronization test pass (need SANDBOX-254 applied too).
Added a new test to check that lock is reaquired (trying to notify) , and released (checking that an exception is thrown when we don't own the lock) and also works in nested methods.

It seems that after this and SANDBOX-254 every ASM test pass. BCEL does not work and IMHO should be deprecated as mantaining 2 different implementation is a PITA.


> [javaflow] synchronized(obj) support is missing (locks are not released when suspending resulting in IllegalMonitorExceptions)
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SANDBOX-255
>                 URL: https://issues.apache.org/jira/browse/SANDBOX-255
>             Project: Commons Sandbox
>          Issue Type: Bug
>          Components: Javaflow
>            Reporter: Stefano Bagnara
>         Attachments: SANDBOX-255.diff
>
>
> MONITORENTER/MONITOREXIT are ignored by the rewriting engine.
> They should be tracked so that MONITOREXIT is issued for each monitor when suspending and MONITORENTER si "replayed" when continuing.

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


[jira] Closed: (SANDBOX-255) [javaflow] synchronized(obj) support is missing (locks are not released when suspending resulting in IllegalMonitorExceptions)

Posted by "Torsten Curdt (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SANDBOX-255?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Torsten Curdt closed SANDBOX-255.
---------------------------------

    Resolution: Fixed

Let's give it a try :)

Patch applied - thanks!

> [javaflow] synchronized(obj) support is missing (locks are not released when suspending resulting in IllegalMonitorExceptions)
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SANDBOX-255
>                 URL: https://issues.apache.org/jira/browse/SANDBOX-255
>             Project: Commons Sandbox
>          Issue Type: Bug
>          Components: Javaflow
>            Reporter: Stefano Bagnara
>            Assignee: Torsten Curdt
>         Attachments: SANDBOX-255.diff
>
>
> MONITORENTER/MONITOREXIT are ignored by the rewriting engine.
> They should be tracked so that MONITOREXIT is issued for each monitor when suspending and MONITORENTER si "replayed" when continuing.

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