You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Richard S. Hall (JIRA)" <ji...@apache.org> on 2008/08/12 22:45:44 UTC

[jira] Created: (FELIX-681) Modify daemon threads to catch all exceptions and log them to avoid premature thread death

Modify daemon threads to catch all exceptions and log them to avoid premature thread death
------------------------------------------------------------------------------------------

                 Key: FELIX-681
                 URL: https://issues.apache.org/jira/browse/FELIX-681
             Project: Felix
          Issue Type: Improvement
          Components: Framework
    Affects Versions: felix-1.0.4
            Reporter: Richard S. Hall
            Priority: Minor


Both Package Admin and Start Level use internal threads to service requests. Both of these threads should probably catch all exceptions and log them. Currently, they do not, which can lead to premature thread death. However, in the event of an exception, they cannot really do anything about it and the framework is likely in a confused state, so having them continue is tricky, but there aren't many other options.

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


[jira] Updated: (FELIX-681) Modify daemon threads to catch all exceptions and log them to avoid premature thread death

Posted by "Richard S. Hall (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-681?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Richard S. Hall updated FELIX-681:
----------------------------------

    Fix Version/s: felix-1.6.0

> Modify daemon threads to catch all exceptions and log them to avoid premature thread death
> ------------------------------------------------------------------------------------------
>
>                 Key: FELIX-681
>                 URL: https://issues.apache.org/jira/browse/FELIX-681
>             Project: Felix
>          Issue Type: Improvement
>          Components: Framework
>    Affects Versions: felix-1.0.4
>            Reporter: Richard S. Hall
>            Assignee: Richard S. Hall
>            Priority: Minor
>             Fix For: felix-1.6.0
>
>
> Both Package Admin and Start Level use internal threads to service requests. Both of these threads should probably catch all exceptions and log them. Currently, they do not, which can lead to premature thread death. However, in the event of an exception, they cannot really do anything about it and the framework is likely in a confused state, so having them continue is tricky, but there aren't many other options.

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


[jira] Assigned: (FELIX-681) Modify daemon threads to catch all exceptions and log them to avoid premature thread death

Posted by "Richard S. Hall (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-681?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Richard S. Hall reassigned FELIX-681:
-------------------------------------

    Assignee: Richard S. Hall

> Modify daemon threads to catch all exceptions and log them to avoid premature thread death
> ------------------------------------------------------------------------------------------
>
>                 Key: FELIX-681
>                 URL: https://issues.apache.org/jira/browse/FELIX-681
>             Project: Felix
>          Issue Type: Improvement
>          Components: Framework
>    Affects Versions: felix-1.0.4
>            Reporter: Richard S. Hall
>            Assignee: Richard S. Hall
>            Priority: Minor
>
> Both Package Admin and Start Level use internal threads to service requests. Both of these threads should probably catch all exceptions and log them. Currently, they do not, which can lead to premature thread death. However, in the event of an exception, they cannot really do anything about it and the framework is likely in a confused state, so having them continue is tricky, but there aren't many other options.

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


[jira] Closed: (FELIX-681) Modify daemon threads to catch all exceptions and log them to avoid premature thread death

Posted by "Richard S. Hall (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-681?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Richard S. Hall closed FELIX-681.
---------------------------------

    Resolution: Fixed

For the most part, the methods invoked by the threads are already catching all errors (by catching Throwables) when invoking callbacks. I modified a few to make sure the caught all exceptions. In the future, we just need to make sure the methods they invoke don't leak exceptions; luckily, the daemon threads are very focus, so this is not difficult. I added some comments to explain the approach.

> Modify daemon threads to catch all exceptions and log them to avoid premature thread death
> ------------------------------------------------------------------------------------------
>
>                 Key: FELIX-681
>                 URL: https://issues.apache.org/jira/browse/FELIX-681
>             Project: Felix
>          Issue Type: Improvement
>          Components: Framework
>    Affects Versions: felix-1.0.4
>            Reporter: Richard S. Hall
>            Assignee: Richard S. Hall
>            Priority: Minor
>             Fix For: felix-1.6.0
>
>
> Both Package Admin and Start Level use internal threads to service requests. Both of these threads should probably catch all exceptions and log them. Currently, they do not, which can lead to premature thread death. However, in the event of an exception, they cannot really do anything about it and the framework is likely in a confused state, so having them continue is tricky, but there aren't many other options.

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