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

Sudheer Vinukonda commented on TS-3452:
---------------------------------------

[~esproul] noticed increased CPU and number of client and origin connections 
after upgrading to 5.3.x from 4.2.x. Below *dtrace* output from him shows the 
top CPU runners all pointing to SSL Error queues. Not yet sure if this jira is 
a factor in the problems noticed, but, they seem related, so posting the info 
here.

{code}
$ cat ats-profile.d 
#pragma D option quiet
 
profile-997hz
/execname == "traffic_server"/
{
    @[ustack()] = count();
}
 
tick-5s
{
    trunc(@, 5);
    exit(0);
}

$ sudo dtrace -s ats-profile.d | /opt/sunstudio12.1/bin/c++filt


              libc.so.1`mutex_trylock_adaptive+0x1cd
              libc.so.1`mutex_lock_impl+0x16d
              libc.so.1`mutex_lock+0x13
              libcrypto.so.1.0.0`int_thread_get+0x2e
              libcrypto.so.1.0.0`int_thread_get_item+0x1d
              libcrypto.so.1.0.0`ERR_get_state+0x48
              libcrypto.so.1.0.0`ERR_clear_error+0xe
              traffic_server`SSLAccept(ssl_st*)+0x21
              
traffic_server`SSLNetVConnection::sslServerHandShakeEvent(int&)+0xe1
              traffic_server`SSLNetVConnection::sslStartHandShake(int, 
int&)+0x3e
              traffic_server`SSLNetVConnection::net_read_io(NetHandler*, 
EThread*)+0xf6b
              traffic_server`NetHandler::mainNetEvent(int, Event*)+0x1f7
              traffic_server`EThread::execute()+0x8d0
              traffic_server`_ZL21spawn_thread_internalPv+0x4a
              libc.so.1`_thrp_setup+0x8a
              libc.so.1`_lwp_start
             1131

              libc.so.1`mutex_trylock_adaptive+0x1ee
              libc.so.1`mutex_lock_impl+0x16d
              libc.so.1`mutex_lock+0x13
              libcrypto.so.1.0.0`int_thread_get+0x2e
              libcrypto.so.1.0.0`int_thread_get_item+0x1d
              libcrypto.so.1.0.0`ERR_get_state+0x48
              libcrypto.so.1.0.0`ERR_clear_error+0xe
              libssl.so.1.0.0`ssl23_accept+0x34
              traffic_server`SSLAccept(ssl_st*)+0x29
              
traffic_server`SSLNetVConnection::sslServerHandShakeEvent(int&)+0xe1
              traffic_server`SSLNetVConnection::sslStartHandShake(int, 
int&)+0x3e
              traffic_server`SSLNetVConnection::net_read_io(NetHandler*, 
EThread*)+0xf6b
              traffic_server`NetHandler::mainNetEvent(int, Event*)+0x1f7
              traffic_server`EThread::execute()+0x8d0
              traffic_server`_ZL21spawn_thread_internalPv+0x4a
              libc.so.1`_thrp_setup+0x8a
              libc.so.1`_lwp_start
             1573

              libc.so.1`mutex_trylock_adaptive+0x1ee
              libc.so.1`mutex_lock_impl+0x16d
              libc.so.1`mutex_lock+0x13
              libcrypto.so.1.0.0`int_thread_get+0x2e
              libcrypto.so.1.0.0`int_thread_get_item+0x1d
              libcrypto.so.1.0.0`ERR_get_state+0x48
              libcrypto.so.1.0.0`ERR_clear_error+0xe
              traffic_server`SSLAccept(ssl_st*)+0x21
              
traffic_server`SSLNetVConnection::sslServerHandShakeEvent(int&)+0xe1
              traffic_server`SSLNetVConnection::sslStartHandShake(int, 
int&)+0x3e
              traffic_server`SSLNetVConnection::net_read_io(NetHandler*, 
EThread*)+0xf6b
              traffic_server`NetHandler::mainNetEvent(int, Event*)+0x1f7
              traffic_server`EThread::execute()+0x8d0
              traffic_server`_ZL21spawn_thread_internalPv+0x4a
              libc.so.1`_thrp_setup+0x8a
              libc.so.1`_lwp_start
             1594

              libc.so.1`mutex_trylock_adaptive+0x1ee
              libc.so.1`mutex_lock_impl+0x16d
              libc.so.1`mutex_lock+0x13
              libcrypto.so.1.0.0`int_thread_get+0x2e
              libcrypto.so.1.0.0`int_thread_get_item+0x1d
              libcrypto.so.1.0.0`ERR_get_state+0x48
              libcrypto.so.1.0.0`ERR_get_error_line_data+0x2d
              traffic_server`SSLDiagnostic(const SrcLoc&, bool, 
SSLNetVConnection*, const char*, ...)+0xff
              
traffic_server`SSLNetVConnection::sslServerHandShakeEvent(int&)+0x5ad
              traffic_server`SSLNetVConnection::sslStartHandShake(int, 
int&)+0x3e
              traffic_server`SSLNetVConnection::net_read_io(NetHandler*, 
EThread*)+0xf6b
              traffic_server`NetHandler::mainNetEvent(int, Event*)+0x1f7
              traffic_server`EThread::execute()+0x8d0
              traffic_server`_ZL21spawn_thread_internalPv+0x4a
              libc.so.1`_thrp_setup+0x8a
              libc.so.1`_lwp_start
             1599

              libc.so.1`mutex_trylock_adaptive+0x1ee
              libc.so.1`mutex_lock_impl+0x16d
              libc.so.1`mutex_lock+0x13
              libcrypto.so.1.0.0`int_thread_get+0x2e
              libcrypto.so.1.0.0`int_thread_get_item+0x1d
              libcrypto.so.1.0.0`ERR_get_state+0x48
              libcrypto.so.1.0.0`ERR_peek_error+0x9
              libssl.so.1.0.0`SSL_get_error+0x2b
              traffic_server`SSLAccept(ssl_st*)+0x4a
              
traffic_server`SSLNetVConnection::sslServerHandShakeEvent(int&)+0xe1
              traffic_server`SSLNetVConnection::sslStartHandShake(int, 
int&)+0x3e
              traffic_server`SSLNetVConnection::net_read_io(NetHandler*, 
EThread*)+0xf6b
              traffic_server`NetHandler::mainNetEvent(int, Event*)+0x1f7
              traffic_server`EThread::execute()+0x8d0
              traffic_server`_ZL21spawn_thread_internalPv+0x4a
              libc.so.1`_thrp_setup+0x8a
              libc.so.1`_lwp_start
             1654
{code}

> Better debug messages for SSL_ERROR_SSL errors
> ----------------------------------------------
>
>                 Key: TS-3452
>                 URL: https://issues.apache.org/jira/browse/TS-3452
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: Core, SSL
>            Reporter: Brian Geffon
>            Assignee: Brian Geffon
>             Fix For: 5.3.0
>
>
> In the case of SSL_ERROR_SSL we can log better information, I'll drop in a 
> patch to do so.



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

Reply via email to