You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by "Jerry Cwiklik (Created) (JIRA)" <de...@uima.apache.org> on 2011/12/12 22:35:31 UTC

[jira] [Created] (UIMA-2308) UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool

UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool
------------------------------------------------------------------------------------

                 Key: UIMA-2308
                 URL: https://issues.apache.org/jira/browse/UIMA-2308
             Project: UIMA
          Issue Type: Bug
            Reporter: Jerry Cwiklik
            Assignee: Jerry Cwiklik
             Fix For: 2.4.0AS


UIMA CasCreationUtils throws NPE from setupTypePriorities() when UIMA AS scales AEs in multiple threads. The NPE is due to thread safety issue in UIMA caused by lazy initialization of CAS pools. Seems to be triggered when large type system is used. Synchronize UIMA AS org.apache.uima.aae.EECasManager_impl.defineCasPool() to make sure only one thread at a time executes the code.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Reopened] (UIMA-2308) UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool

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

Marshall Schor reopened UIMA-2308:
----------------------------------

      Assignee: Marshall Schor  (was: Jerry Cwiklik)

inspection shows one not-thread-safe global that needs synch protection in Resource Manager impl
                
> UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool
> ------------------------------------------------------------------------------------
>
>                 Key: UIMA-2308
>                 URL: https://issues.apache.org/jira/browse/UIMA-2308
>             Project: UIMA
>          Issue Type: Bug
>            Reporter: Jerry Cwiklik
>            Assignee: Marshall Schor
>             Fix For: 2.4.0AS
>
>
> UIMA CasCreationUtils throws NPE from setupTypePriorities() when UIMA AS scales AEs in multiple threads. The NPE is due to thread safety issue in UIMA caused by lazy initialization of CAS pools. Seems to be triggered when large type system is used. Synchronize UIMA AS org.apache.uima.aae.EECasManager_impl.defineCasPool() to make sure only one thread at a time executes the code.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Closed] (UIMA-2308) UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool

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

Marshall Schor closed UIMA-2308.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 2.4.1SDK
    
> UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool
> ------------------------------------------------------------------------------------
>
>                 Key: UIMA-2308
>                 URL: https://issues.apache.org/jira/browse/UIMA-2308
>             Project: UIMA
>          Issue Type: Bug
>            Reporter: Jerry Cwiklik
>            Assignee: Marshall Schor
>             Fix For: 2.4.0AS, 2.4.1SDK
>
>
> UIMA CasCreationUtils throws NPE from setupTypePriorities() when UIMA AS scales AEs in multiple threads. The NPE is due to thread safety issue in UIMA caused by lazy initialization of CAS pools. Seems to be triggered when large type system is used. Synchronize UIMA AS org.apache.uima.aae.EECasManager_impl.defineCasPool() to make sure only one thread at a time executes the code.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (UIMA-2308) UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool

Posted by "Marshall Schor (Commented) (JIRA)" <de...@uima.apache.org>.
    [ https://issues.apache.org/jira/browse/UIMA-2308?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13168592#comment-13168592 ] 

Marshall Schor commented on UIMA-2308:
--------------------------------------

Jerry points out that the key idea is to use class-level, not instance-level synchronization object for this.  (There already is an instance level synchronization.)  Also, he says this is more a work-around, rather than a complete understanding of what was going wrong, so people can avoid this issue until it is perhaps fixed in a better way in the future, after a successful root-cause analysis.  The work-around is only implemented in the UIMA-AS usage of the call to defineCasPool().
                
> UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool
> ------------------------------------------------------------------------------------
>
>                 Key: UIMA-2308
>                 URL: https://issues.apache.org/jira/browse/UIMA-2308
>             Project: UIMA
>          Issue Type: Bug
>            Reporter: Jerry Cwiklik
>            Assignee: Jerry Cwiklik
>             Fix For: 2.4.0AS
>
>
> UIMA CasCreationUtils throws NPE from setupTypePriorities() when UIMA AS scales AEs in multiple threads. The NPE is due to thread safety issue in UIMA caused by lazy initialization of CAS pools. Seems to be triggered when large type system is used. Synchronize UIMA AS org.apache.uima.aae.EECasManager_impl.defineCasPool() to make sure only one thread at a time executes the code.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Closed] (UIMA-2308) UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool

Posted by "Jerry Cwiklik (Closed) (JIRA)" <de...@uima.apache.org>.
     [ https://issues.apache.org/jira/browse/UIMA-2308?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jerry Cwiklik closed UIMA-2308.
-------------------------------

    Resolution: Fixed

Synchronized access to defineCasPool() using class level locking to prevents concurrent execution that leads to NPE.
                
> UIMA CasCreationUtils throws NPE when multiple threads in UIMA AS call defineCasPool
> ------------------------------------------------------------------------------------
>
>                 Key: UIMA-2308
>                 URL: https://issues.apache.org/jira/browse/UIMA-2308
>             Project: UIMA
>          Issue Type: Bug
>            Reporter: Jerry Cwiklik
>            Assignee: Jerry Cwiklik
>             Fix For: 2.4.0AS
>
>
> UIMA CasCreationUtils throws NPE from setupTypePriorities() when UIMA AS scales AEs in multiple threads. The NPE is due to thread safety issue in UIMA caused by lazy initialization of CAS pools. Seems to be triggered when large type system is used. Synchronize UIMA AS org.apache.uima.aae.EECasManager_impl.defineCasPool() to make sure only one thread at a time executes the code.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira