ASF GitHub Bot logged work on TS-4879:

                Author: ASF GitHub Bot
            Created on: 19/Sep/16 06:14
            Start Date: 19/Sep/16 06:14
    Worklog Time Spent: 10m 
      Work Description: GitHub user oknet opened a pull request:


    TS-4879: Checking con.fd == NO_FD while we get return from 


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

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

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


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

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

    TS-4879: Checking con.fd == NO_FD while we get return from 


Issue Time Tracking

            Worklog Id:     (was: 29286)
            Time Spent: 10m
    Remaining Estimate: 0h

> 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
>          Time Spent: 10m
>  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

Reply via email to