You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Diego Rivera (Created) (JIRA)" <ji...@apache.org> on 2012/01/28 18:21:10 UTC

[jira] [Created] (JCS-91) JCS fails to properly dispose of the lateral TCP listener thread. If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.

JCS fails to properly dispose of the lateral TCP listener thread.  If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: JCS-91
                 URL: https://issues.apache.org/jira/browse/JCS-91
             Project: Commons JCS
          Issue Type: Bug
          Components: TCP Lateral Cache
    Affects Versions: jcs-1.3
            Reporter: Diego Rivera


The problem seems to stem from two things: improper handling of accept() such that it doesn't block indefinitely (and thus can't be interrupted and broken out of), and failure by the nowait facade to pass on dispose() events to the local TCP listener.

I'll attach a patch to fix the former, although I feel that if 1.4 will use nio instead of regular IO, this will be moot.  However, the latter (failure of the nowait facade to pass on disposal events) will probably still be an issue.

--
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] [Updated] (JCS-91) JCS fails to properly dispose of the lateral TCP listener thread. If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.

Posted by "Diego Rivera (Updated) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCS-91?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Diego Rivera updated JCS-91:
----------------------------

    Attachment: jcs-91-fix.patch

This patch addresses the improper accept() handling which prevents the TCP listener thread from exiting gracefully.

However, the nowait facade still needs to be fixed to communicate the dispose() invocation downstream to the listener(s).
                
> JCS fails to properly dispose of the lateral TCP listener thread.  If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JCS-91
>                 URL: https://issues.apache.org/jira/browse/JCS-91
>             Project: Commons JCS
>          Issue Type: Bug
>          Components: TCP Lateral Cache
>    Affects Versions: jcs-1.3
>            Reporter: Diego Rivera
>         Attachments: jcs-91-fix.patch
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> The problem seems to stem from two things: improper handling of accept() such that it doesn't block indefinitely (and thus can't be interrupted and broken out of), and failure by the nowait facade to pass on dispose() events to the local TCP listener.
> I'll attach a patch to fix the former, although I feel that if 1.4 will use nio instead of regular IO, this will be moot.  However, the latter (failure of the nowait facade to pass on disposal events) will probably still be an issue.

--
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] (JCS-91) JCS fails to properly dispose of the lateral TCP listener thread. If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.

Posted by "Thomas Vandahl (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCS-91?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13244136#comment-13244136 ] 

Thomas Vandahl commented on JCS-91:
-----------------------------------

Could you please revise your patch against the branch at http://svn.apache.org/repos/asf/commons/proper/jcs/branches/generics-interface? I was not able to apply it (too many conflicts).

                
> JCS fails to properly dispose of the lateral TCP listener thread.  If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JCS-91
>                 URL: https://issues.apache.org/jira/browse/JCS-91
>             Project: Commons JCS
>          Issue Type: Bug
>          Components: TCP Lateral Cache
>    Affects Versions: jcs-1.3
>            Reporter: Diego Rivera
>            Assignee: Thomas Vandahl
>         Attachments: jcs-91-full-fix.patch
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> The problem seems to stem from two things: improper handling of accept() such that it doesn't block indefinitely (and thus can't be interrupted and broken out of), and failure by the nowait facade to pass on dispose() events to the local TCP listener.
> I'll attach a patch to fix the former, although I feel that if 1.4 will use nio instead of regular IO, this will be moot.  However, the latter (failure of the nowait facade to pass on disposal events) will probably still be an issue.

--
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] [Resolved] (JCS-91) JCS fails to properly dispose of the lateral TCP listener thread. If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.

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

Thomas Vandahl resolved JCS-91.
-------------------------------

       Resolution: Fixed
    Fix Version/s: jcs-2.0.0

Applied heavily modified patch manually.
                
> JCS fails to properly dispose of the lateral TCP listener thread.  If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JCS-91
>                 URL: https://issues.apache.org/jira/browse/JCS-91
>             Project: Commons JCS
>          Issue Type: Bug
>          Components: TCP Lateral Cache
>    Affects Versions: jcs-1.3
>            Reporter: Diego Rivera
>            Assignee: Thomas Vandahl
>             Fix For: jcs-2.0.0
>
>         Attachments: jcs-91-full-fix.patch
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> The problem seems to stem from two things: improper handling of accept() such that it doesn't block indefinitely (and thus can't be interrupted and broken out of), and failure by the nowait facade to pass on dispose() events to the local TCP listener.
> I'll attach a patch to fix the former, although I feel that if 1.4 will use nio instead of regular IO, this will be moot.  However, the latter (failure of the nowait facade to pass on disposal events) will probably still be an issue.

--
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

[jira] [Updated] (JCS-91) JCS fails to properly dispose of the lateral TCP listener thread. If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.

Posted by "Diego Rivera (Updated) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCS-91?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Diego Rivera updated JCS-91:
----------------------------

    Attachment: jcs-91-full-fix.patch

This patch supersedes the previously-attached patch, in that it includes the functionality to notify the listener that it should exit gracefully.  This helps with thread cleanup and other tasks.
                
> JCS fails to properly dispose of the lateral TCP listener thread.  If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JCS-91
>                 URL: https://issues.apache.org/jira/browse/JCS-91
>             Project: Commons JCS
>          Issue Type: Bug
>          Components: TCP Lateral Cache
>    Affects Versions: jcs-1.3
>            Reporter: Diego Rivera
>         Attachments: jcs-91-full-fix.patch
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> The problem seems to stem from two things: improper handling of accept() such that it doesn't block indefinitely (and thus can't be interrupted and broken out of), and failure by the nowait facade to pass on dispose() events to the local TCP listener.
> I'll attach a patch to fix the former, although I feel that if 1.4 will use nio instead of regular IO, this will be moot.  However, the latter (failure of the nowait facade to pass on disposal events) will probably still be an issue.

--
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] [Updated] (JCS-91) JCS fails to properly dispose of the lateral TCP listener thread. If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.

Posted by "Diego Rivera (Updated) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCS-91?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Diego Rivera updated JCS-91:
----------------------------

    Attachment:     (was: jcs-91-fix.patch)
    
> JCS fails to properly dispose of the lateral TCP listener thread.  If a webapp that uses JCS lateral TCP cache is undeployed, the listener is left hanging with no hope for exit.
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JCS-91
>                 URL: https://issues.apache.org/jira/browse/JCS-91
>             Project: Commons JCS
>          Issue Type: Bug
>          Components: TCP Lateral Cache
>    Affects Versions: jcs-1.3
>            Reporter: Diego Rivera
>         Attachments: jcs-91-full-fix.patch
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> The problem seems to stem from two things: improper handling of accept() such that it doesn't block indefinitely (and thus can't be interrupted and broken out of), and failure by the nowait facade to pass on dispose() events to the local TCP listener.
> I'll attach a patch to fix the former, although I feel that if 1.4 will use nio instead of regular IO, this will be moot.  However, the latter (failure of the nowait facade to pass on disposal events) will probably still be an issue.

--
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