You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Yossi Gottlieb (JIRA)" <ji...@apache.org> on 2012/11/02 10:15:12 UTC

[jira] [Created] (TS-1559) Server side termination not handled properly when a PluginVC/Protocol Plugin is used

Yossi Gottlieb created TS-1559:
----------------------------------

             Summary: Server side termination not handled properly when a PluginVC/Protocol Plugin  is used
                 Key: TS-1559
                 URL: https://issues.apache.org/jira/browse/TS-1559
             Project: Traffic Server
          Issue Type: Bug
          Components: HTTP, Plugins
    Affects Versions: 3.3.1
            Reporter: Yossi Gottlieb


Using a Protocol Plugin along with a PluginVC (HttpConnect) and HTTP CONNECT command to create tunnel.  When the server drops the connection, the protocol plugin will not be notified until the connection times out.

HttpSM ends up calling PluginVC::do_io_shutdown() which sets the appropriate flags but takes no action.  I suspect this would affect real socket VCs as well, but in that case the shutdown() on the socket write side would cause the client to react and close its own side as well.

The proposed fix solves my specific problem but may not address all related issues (with PluginVCs or other types of VCs as well).

--
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] (TS-1559) Server side termination not handled properly when a PluginVC/Protocol Plugin is used

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

Yossi Gottlieb updated TS-1559:
-------------------------------

    Attachment: pluginvc_tunnel.diff
    
> Server side termination not handled properly when a PluginVC/Protocol Plugin  is used
> -------------------------------------------------------------------------------------
>
>                 Key: TS-1559
>                 URL: https://issues.apache.org/jira/browse/TS-1559
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: HTTP, Plugins
>    Affects Versions: 3.3.1
>            Reporter: Yossi Gottlieb
>         Attachments: pluginvc_tunnel.diff
>
>
> Using a Protocol Plugin along with a PluginVC (HttpConnect) and HTTP CONNECT command to create tunnel.  When the server drops the connection, the protocol plugin will not be notified until the connection times out.
> HttpSM ends up calling PluginVC::do_io_shutdown() which sets the appropriate flags but takes no action.  I suspect this would affect real socket VCs as well, but in that case the shutdown() on the socket write side would cause the client to react and close its own side as well.
> The proposed fix solves my specific problem but may not address all related issues (with PluginVCs or other types of VCs as well).

--
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] (TS-1559) Server side termination not handled properly when a PluginVC/Protocol Plugin is used

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

Leif Hedstrom updated TS-1559:
------------------------------

    Fix Version/s: 3.3.1
    
> Server side termination not handled properly when a PluginVC/Protocol Plugin  is used
> -------------------------------------------------------------------------------------
>
>                 Key: TS-1559
>                 URL: https://issues.apache.org/jira/browse/TS-1559
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: HTTP, Plugins
>    Affects Versions: 3.3.1
>            Reporter: Yossi Gottlieb
>             Fix For: 3.3.1
>
>         Attachments: pluginvc_tunnel.diff
>
>
> Using a Protocol Plugin along with a PluginVC (HttpConnect) and HTTP CONNECT command to create tunnel.  When the server drops the connection, the protocol plugin will not be notified until the connection times out.
> HttpSM ends up calling PluginVC::do_io_shutdown() which sets the appropriate flags but takes no action.  I suspect this would affect real socket VCs as well, but in that case the shutdown() on the socket write side would cause the client to react and close its own side as well.
> The proposed fix solves my specific problem but may not address all related issues (with PluginVCs or other types of VCs as well).

--
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] [Commented] (TS-1559) Server side termination not handled properly when a PluginVC/Protocol Plugin is used

Posted by "Uri Shachar (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TS-1559?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13491388#comment-13491388 ] 

Uri Shachar commented on TS-1559:
---------------------------------

When this patch is integrated we should give a heads-up to protocol plugin developers/users -- it causes a slight behavior change -- In some cases we can now get a TS_EVENT_VCONN_WRITE_READY on the client write VIO after the server read vio has been freed (so if you'll segfault if you try to reenable). Since the plugin will always get an EOS event beforehand it's pretty easy to adjust for this.

                
> Server side termination not handled properly when a PluginVC/Protocol Plugin  is used
> -------------------------------------------------------------------------------------
>
>                 Key: TS-1559
>                 URL: https://issues.apache.org/jira/browse/TS-1559
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: HTTP, Plugins
>    Affects Versions: 3.3.1
>            Reporter: Yossi Gottlieb
>         Attachments: pluginvc_tunnel.diff
>
>
> Using a Protocol Plugin along with a PluginVC (HttpConnect) and HTTP CONNECT command to create tunnel.  When the server drops the connection, the protocol plugin will not be notified until the connection times out.
> HttpSM ends up calling PluginVC::do_io_shutdown() which sets the appropriate flags but takes no action.  I suspect this would affect real socket VCs as well, but in that case the shutdown() on the socket write side would cause the client to react and close its own side as well.
> The proposed fix solves my specific problem but may not address all related issues (with PluginVCs or other types of VCs as well).

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