[ 
https://issues.apache.org/jira/browse/TS-1348?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13416813#comment-13416813
 ] 

kuotai edited comment on TS-1348 at 7/18/12 2:27 AM:
-----------------------------------------------------

yeah, if use only set_inactivity_timeout in KA, we must call 
cancel_active_timeout(). The additional patch:

{code}
diff --git a/proxy/http/HttpClientSession.cc b/proxy/http/HttpClientSession.cc
index 17d6945..ae6652a 100644
--- a/proxy/http/HttpClientSession.cc
+++ b/proxy/http/HttpClientSession.cc
@@ -577,6 +577,7 @@ HttpClientSession::attach_server_session(HttpServerSession 
* ssession, bool tran
     if (transaction_done) {
       ssession->get_netvc()->
         
set_inactivity_timeout(HRTIME_SECONDS(current_reader->t_state.txn_conf->keep_alive_no_activity_timeout_out));
+      ssession->get_netvc()->cancel_active_timeout();
     } else {
       // we are serving from the cache - this could take a while.
       ssession->get_netvc()->cancel_inactivity_timeout();
@@ -628,6 +629,7 @@ HttpClientSession::release(IOBufferReader * r)
     ka_vio = this->do_io_read(this, INT64_MAX, read_buffer);
     ink_assert(slave_ka_vio != ka_vio);
     client_vc->set_inactivity_timeout(HRTIME_SECONDS(ka_in));
+    client_vc->cancel_active_timeout();
   }
 }
{code}
                
      was (Author: kuotai):
    yeah, if use only set_inactivity_timeout in KA, we must call 
cancel_active_timeout(). The additional patch:

diff --git a/proxy/http/HttpClientSession.cc b/proxy/http/HttpClientSession.cc
index 17d6945..ae6652a 100644
--- a/proxy/http/HttpClientSession.cc
+++ b/proxy/http/HttpClientSession.cc
@@ -577,6 +577,7 @@ HttpClientSession::attach_server_session(HttpServerSession 
* ssession, bool tran
     if (transaction_done) {
       ssession->get_netvc()->
         
set_inactivity_timeout(HRTIME_SECONDS(current_reader->t_state.txn_conf->keep_alive_no_activity_timeout_out));
+      ssession->get_netvc()->cancel_active_timeout();
     } else {
       // we are serving from the cache - this could take a while.
       ssession->get_netvc()->cancel_inactivity_timeout();
@@ -628,6 +629,7 @@ HttpClientSession::release(IOBufferReader * r)
     ka_vio = this->do_io_read(this, INT64_MAX, read_buffer);
     ink_assert(slave_ka_vio != ka_vio);
     client_vc->set_inactivity_timeout(HRTIME_SECONDS(ka_in));
+    client_vc->cancel_active_timeout();
   }
 }
 

                  
> replace keepalive connection timeout handle from set_active_timeout to 
> set_inactivity_timeout
> ---------------------------------------------------------------------------------------------
>
>                 Key: TS-1348
>                 URL: https://issues.apache.org/jira/browse/TS-1348
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: Core, Network, Performance
>    Affects Versions: 3.2.0
>            Reporter: kuotai
>            Assignee: kuotai
>             Fix For: 3.3.0
>
>         Attachments: kpa_timeout.patch
>
>
> if calling set_active_timeout function in keepalive, every connection will 
> create one event and schedule in event system. so if having more and more 
> connection in keepalive state(more and more event in schedule system), system 
> have to take more time to PriorityEventQueue::check_ready.

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

        

Reply via email to