You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by "Marshall Schor (JIRA)" <ui...@incubator.apache.org> on 2007/05/07 00:00:15 UTC

[jira] Created: (UIMA-398) test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest

test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest
----------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: UIMA-398
                 URL: https://issues.apache.org/jira/browse/UIMA-398
             Project: UIMA
          Issue Type: Bug
          Components: Core Java Framework
    Affects Versions: 2.1
         Environment: Sun Java 6_01
            Reporter: Marshall Schor


The failure is intermittent.  It fails the first time running (for me) from a reboot, but runs after that.  The failure occurs in the test where it does a threads[i].join(); and happens when i = 0.  I found this out by changing the join() to join(10000), and then inserting:
        if (threads[i].isAlive()) {
          System.err.println("timeout waiting for thread to complete " + i);
          fail("timeout waiting for thread to complete " + i);
        }


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


[jira] Closed: (UIMA-398) test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest

Posted by "Adam Lally (JIRA)" <ui...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/UIMA-398?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Adam Lally closed UIMA-398.
---------------------------


> test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest
> ----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: UIMA-398
>                 URL: https://issues.apache.org/jira/browse/UIMA-398
>             Project: UIMA
>          Issue Type: Bug
>          Components: Core Java Framework
>    Affects Versions: 2.1
>         Environment: Sun Java 6_01
>            Reporter: Marshall Schor
>         Attachments: screenshot-1.jpg
>
>
> The failure is intermittent.  It fails the first time running (for me) from a reboot, but runs after that.  The failure occurs in the test where it does a threads[i].join(); and happens when i = 0.  I found this out by changing the join() to join(10000), and then inserting:
>         if (threads[i].isAlive()) {
>           System.err.println("timeout waiting for thread to complete " + i);
>           fail("timeout waiting for thread to complete " + i);
>         }

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


[jira] Commented: (UIMA-398) test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest

Posted by "Thilo Goetz (JIRA)" <ui...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/UIMA-398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12493976 ] 

Thilo Goetz commented on UIMA-398:
----------------------------------

See also https://issues.apache.org/jira/browse/UIMA-367.


> test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest
> ----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: UIMA-398
>                 URL: https://issues.apache.org/jira/browse/UIMA-398
>             Project: UIMA
>          Issue Type: Bug
>          Components: Core Java Framework
>    Affects Versions: 2.1
>         Environment: Sun Java 6_01
>            Reporter: Marshall Schor
>         Attachments: screenshot-1.jpg
>
>
> The failure is intermittent.  It fails the first time running (for me) from a reboot, but runs after that.  The failure occurs in the test where it does a threads[i].join(); and happens when i = 0.  I found this out by changing the join() to join(10000), and then inserting:
>         if (threads[i].isAlive()) {
>           System.err.println("timeout waiting for thread to complete " + i);
>           fail("timeout waiting for thread to complete " + i);
>         }

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


[jira] Updated: (UIMA-398) test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest

Posted by "Marshall Schor (JIRA)" <ui...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/UIMA-398?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marshall Schor updated UIMA-398:
--------------------------------

    Attachment: screenshot-1.jpg

Caught the hang in Eclipse debugger.  Can see two instances waiting forever to get a resource from the ResourcePool

> test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest
> ----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: UIMA-398
>                 URL: https://issues.apache.org/jira/browse/UIMA-398
>             Project: UIMA
>          Issue Type: Bug
>          Components: Core Java Framework
>    Affects Versions: 2.1
>         Environment: Sun Java 6_01
>            Reporter: Marshall Schor
>         Attachments: screenshot-1.jpg
>
>
> The failure is intermittent.  It fails the first time running (for me) from a reboot, but runs after that.  The failure occurs in the test where it does a threads[i].join(); and happens when i = 0.  I found this out by changing the join() to join(10000), and then inserting:
>         if (threads[i].isAlive()) {
>           System.err.println("timeout waiting for thread to complete " + i);
>           fail("timeout waiting for thread to complete " + i);
>         }

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


[jira] Resolved: (UIMA-398) test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest

Posted by "Adam Lally (JIRA)" <ui...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/UIMA-398?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Adam Lally resolved UIMA-398.
-----------------------------

    Resolution: Duplicate

This is a duplicate of UIMA-367.

> test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest
> ----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: UIMA-398
>                 URL: https://issues.apache.org/jira/browse/UIMA-398
>             Project: UIMA
>          Issue Type: Bug
>          Components: Core Java Framework
>    Affects Versions: 2.1
>         Environment: Sun Java 6_01
>            Reporter: Marshall Schor
>         Attachments: screenshot-1.jpg
>
>
> The failure is intermittent.  It fails the first time running (for me) from a reboot, but runs after that.  The failure occurs in the test where it does a threads[i].join(); and happens when i = 0.  I found this out by changing the join() to join(10000), and then inserting:
>         if (threads[i].isAlive()) {
>           System.err.println("timeout waiting for thread to complete " + i);
>           fail("timeout waiting for thread to complete " + i);
>         }

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


[jira] Updated: (UIMA-398) test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest

Posted by "Marshall Schor (JIRA)" <ui...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/UIMA-398?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marshall Schor updated UIMA-398:
--------------------------------

    Fix Version/s: 2.2

> test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest
> ----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: UIMA-398
>                 URL: https://issues.apache.org/jira/browse/UIMA-398
>             Project: UIMA
>          Issue Type: Bug
>          Components: Core Java Framework
>    Affects Versions: 2.1
>         Environment: Sun Java 6_01
>            Reporter: Marshall Schor
>             Fix For: 2.2
>
>         Attachments: screenshot-1.jpg
>
>
> The failure is intermittent.  It fails the first time running (for me) from a reboot, but runs after that.  The failure occurs in the test where it does a threads[i].join(); and happens when i = 0.  I found this out by changing the join() to join(10000), and then inserting:
>         if (threads[i].isAlive()) {
>           System.err.println("timeout waiting for thread to complete " + i);
>           fail("timeout waiting for thread to complete " + i);
>         }

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


[jira] Commented: (UIMA-398) test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest

Posted by "Marshall Schor (JIRA)" <ui...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/UIMA-398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12493961 ] 

Marshall Schor commented on UIMA-398:
-------------------------------------

The test case fails when doing the following:

1) set up an instance of MultiprocessingAnalysisEngine_impl with a pool of 3 
2) start 4 threads (4 > 3); each gets a new CAS and calls the process method on the same MultiprocessingAE instance
3) The failure comes when the process call is using the form with the result specification.

It seems odd that one thread calling process would check out *all* instances to set the result specifications on all the instances in the pool (that's what's implemented for setResultSpecification).

This is the cause of the hang.  If one thread starts setting result specification, it starts checking instances out of the pool, one by one.  If another starts also, then they lock each other out (one might have 2, the other 1, and they'll just sit there waiting to get the rest).

> test case intermittently fails running Java 6 - with a hang: uimaj-core, org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_implTest
> ----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: UIMA-398
>                 URL: https://issues.apache.org/jira/browse/UIMA-398
>             Project: UIMA
>          Issue Type: Bug
>          Components: Core Java Framework
>    Affects Versions: 2.1
>         Environment: Sun Java 6_01
>            Reporter: Marshall Schor
>         Attachments: screenshot-1.jpg
>
>
> The failure is intermittent.  It fails the first time running (for me) from a reboot, but runs after that.  The failure occurs in the test where it does a threads[i].join(); and happens when i = 0.  I found this out by changing the join() to join(10000), and then inserting:
>         if (threads[i].isAlive()) {
>           System.err.println("timeout waiting for thread to complete " + i);
>           fail("timeout waiting for thread to complete " + i);
>         }

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