You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2016/11/07 04:32:58 UTC

[jira] [Work logged] (TS-4879) NetVC leaks while hyper emergency occur on check_emergency_throttle()

     [ https://issues.apache.org/jira/browse/TS-4879?focusedWorklogId=31708&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31708 ]

ASF GitHub Bot logged work on TS-4879:
--------------------------------------

                Author: ASF GitHub Bot
            Created on: 07/Nov/16 04:32
            Start Date: 07/Nov/16 04:32
    Worklog Time Spent: 10m 
      Work Description: GitHub user oknet opened a pull request:

    https://github.com/apache/trafficserver/pull/1205

    TS-4879: NetVC leaks while hyper emergency occur on check_emergency_throttle()

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/oknet/trafficserver TS-4879-6.2.x

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/trafficserver/pull/1205.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1205
    
----
commit cc3c67a9eda6d9bed3e4fe327811fd6e4df2aa52
Author: Oknet Xu <xu...@skyguard.com.cn>
Date:   2016-09-19T06:11:56Z

    TS-4879: Checking con.fd == NO_FD in UnixNetVConnection::connectUp() while we get return from check_emergency_throttle()
    
    (cherry picked from commit 3216b0c1ff87a96a68f6a8a2a9fff804eb5819f1)

commit 9d4c1e24d7e341ed055b351a7bfe3bbff0edc1ad
Author: Oknet Xu <xu...@skyguard.com.cn>
Date:   2016-09-20T13:06:14Z

    TS-4879: Checking con.fd == NO_FD in NetAccept::do_blocking_accept()
    
    (cherry picked from commit cd3f83af040f9505a3224a41ce7de294899c760e)

----


Issue Time Tracking
-------------------

    Worklog Id:     (was: 31708)
    Time Spent: 4h 40m  (was: 4.5h)

> NetVC leaks while hyper emergency occur on check_emergency_throttle()
> ---------------------------------------------------------------------
>
>                 Key: TS-4879
>                 URL: https://issues.apache.org/jira/browse/TS-4879
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: Core
>            Reporter: Oknet Xu
>            Assignee: Oknet Xu
>             Fix For: 7.0.0
>
>          Time Spent: 4h 40m
>  Remaining Estimate: 0h
>
> The con could be closed if hyper emergency occur on check_emergency_throttle().
> But we did not check the con.fd while we get return from check_emergency_throttle().
> For hyper emergency:
> - The socket fd is removed from epoll while it is closed.
> - A NetVC with a closed socket fd is created and callback NET_EVENT_OPEN to SM.
> Thus:
> - The NetVC will never triggered by NetHandler.
> - Only InactivityCop could handle the NetVC and the default timeout value is 86400 secs.
> For the counter: net_connections_currently_open_stat
> - It is increased in “connect_re_internal()”
> - It isn't decreased while the con.fd set to NO_FD due to hyper emergency 
> - Because it is decreased in close_UnixNetVConnection() only con.fd != NO_FD. (TS-4178)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)