You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "David Jencks (JIRA)" <ji...@apache.org> on 2012/09/05 23:33:08 UTC

[jira] [Assigned] (FELIX-3645) SCR could not obtain lock in 5000 ms

     [ https://issues.apache.org/jira/browse/FELIX-3645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Jencks reassigned FELIX-3645:
-----------------------------------

    Assignee: David Jencks
    
> SCR could not obtain lock in 5000 ms
> ------------------------------------
>
>                 Key: FELIX-3645
>                 URL: https://issues.apache.org/jira/browse/FELIX-3645
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>         Environment: linux fc16, bipro, Java(TM) SE Runtime Environment (build 1.6.0_32-b05)
>            Reporter: Pierre De Rop
>            Assignee: David Jencks
>         Attachments: TEST-org.apache.felix.scr.integration.ComponentConcurrencyTest.xml
>
>
> I finally made an integration test and committed it in the trunk.
> This test sounds to reproduce the problem described in http://www.mail-archive.com/dev@felix.apache.org/msg26360.html.
> the test contains the following files:
> src/test/resources/integration_test_component_concurrency.xml
> src/test/java/org/apache/felix/scr/integration/ComponentConcurrencyTest.java
> src/test/java/org/apache/felix/scr/integration/components/concurrency/A.java
> src/test/java/org/apache/felix/scr/integration/components/concurrency/B.java
> src/test/java/org/apache/felix/scr/integration/components/concurrency/C.java
> src/test/java/org/apache/felix/scr/integration/components/concurrency/AFactory.java
> src/test/java/org/apache/felix/scr/integration/components/concurrency/CFactory.java
> I also slightly modified src/test/java/org/apache/felix/scr/integration/ComponentTestBase.java
> in order to use the apache log service, and also to declare the new package from org/apache/felix/scr/integration/components/concurrency.
> The test does the following:
> A optionally depends on B (dynamic=true, cardinality=0..N)
> B depends on C
> A is a factory component and is created by the AFactory class, in an infinite loop and in a dedicated thread.
> C is also a factory component and is created/disposed for ever, by the CFactory class.
> the integration test uses the log service in order to track logged errors, and runs 30 seconds.
> If after 30 seconds, some errors are detected, then the test fail.
> It seems that we have many exceptions when the test fail, which I did not reproduced so far. (see many IllegalMonitorState Exceptions).
> The initial exception discussed from the post in the @dev list is also reproduced.
> For example, I attached to this post my target/failsafe-reports/TEST-org.apache.felix.scr.integration.ComponentConcurrencyTest.xml, when the problem takes place.
> Please take a look starting at line 951, as well as at the corresponding dumpstack at line 713, and also the "Locking activity before IllegalMonitorStateException" log, line 887.
> Hope this will help.
> /pierre

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira