[ 
https://issues.apache.org/jira/browse/THRIFT-4336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

xiaomingzhongguo updated THRIFT-4336:
-------------------------------------
    Description: 
Run in TThreadedServer mode 
run some times,thrift accept thread  lock at onClientConnected and can't work 
call stack like this:
Thread 14 (Thread 0x7f79de7e4700 (LWP 2214)):
#0  0x00007f7a1235ffbe in __lll_lock_wait_private () from /lib64/libpthread.so.0
#1  0x00007f7a12359c9a in _L_lock_1834 () from /lib64/libpthread.so.0
#2  0x00007f7a123588ef in pthread_create@@GLIBC_2.2.5 () from 
/lib64/libpthread.so.0
#3  0x0000000000db139e in apache::thrift::concurrency::PthreadThread::start() ()
#4  0x0000000000dae7f7 in 
apache::thrift::server::TThreadedServer::onClientConnected(boost::shared_ptr<apache::thrift::server::TConnectedClient>
 const&) ()
#5  0x0000000000db1eef in 
apache::thrift::server::TServerFramework::newlyConnectedClient(boost::shared_ptr<apache::thrift::server::TConnectedClient>
 const&) ()
#6  0x0000000000db27e9 in apache::thrift::server::TServerFramework::serve() ()
#7  0x0000000000daeb77 in apache::thrift::server::TThreadedServer::serve() ()
#8  0x00000000009c279e in CmdServer::run() ()
#9  0x0000000000900a88 in gseThread::run_helper(void*) ()
#10 0x000000000099318c in tos::util_thread_start(void*) ()
#11 0x00007f7a123597f1 in start_thread () from /lib64/libpthread.so.0
#12 0x00007f7a11711ccd in clone () from /lib64/libc.so.6
Thread 13 (Thread 0x7f79ddfe3700 (LWP 2215)):
#0  0x00007f7a1235ffbe in __lll_lock_wait_private () from /lib64/libpthread.so.0
#1  0x00007f7a12359c9a in _L_lock_1834 () from /lib64/libpthread.so.0
#2  0x00007f7a123588ef in pthread_create@@GLIBC_2.2.5 () from 
/lib64/libpthread.so.0
#3  0x0000000000db139e in apache::thrift::concurrency::PthreadThread::start() ()
#4  0x0000000000dae7f7 in 
apache::thrift::server::TThreadedServer::onClientConnected(boost::shared_ptr<apache::thrift::server::TConnectedClient>
 const&) ()
#5  0x0000000000db1eef in 
apache::thrift::server::TServerFramework::newlyConnectedClient(boost::shared_ptr<apache::thrift::server::TConnectedClient>
 const&) ()
#6  0x0000000000db27e9 in apache::thrift::server::TServerFramework::serve() ()
#7  0x0000000000daeb77 in apache::thrift::server::TThreadedServer::serve() ()
#8  0x00000000009c2fc3 in CmdServerV2::run() ()
#9  0x0000000000900a88 in gseThread::run_helper(void*) ()
#10 0x000000000099318c in tos::util_thread_start(void*) ()
#11 0x00007f7a123597f1 in start_thread () from /lib64/libpthread.so.0
#12 0x00007f7a11711ccd in clone () from /lib64/libc.so.6


  was:
Run in TThreadedServer mode 
run some times,thrift accept thread  lock at onClientConnected and can't work 
call stack like this:
#0  0x00007f9f0f82efbe in __lll_lock_wait_private () from /lib64/libpthread.so.0
#1  0x00007f9f0f828c9a in _L_lock_1834 () from /lib64/libpthread.so.0
#2  0x00007f9f0f8278ef in pthread_create@@GLIBC_2.2.5 () from 
/lib64/libpthread.so.0
#3  0x0000000000db139e in apache::thrift::concurrency::PthreadThread::start() ()
#4  0x0000000000dae7f7 in 
apache::thrift::server::TThreadedServer::onClientConnected(boost::shared_ptr<apache::thrift::server::TConnectedClient>
 const&) ()
#5  0x0000000000db1eef in 
apache::thrift::server::TServerFramework::newlyConnectedClient(boost::shared_ptr<apache::thrift::server::TConnectedClient>
 const&) ()
#6  0x0000000000db27e9 in apache::thrift::server::TServerFramework::serve() ()
#7  0x0000000000daeb77 in apache::thrift::server::TThreadedServer::serve() ()
#8  0x0000000000a3bec9 in ServerComm::run() ()
#9  0x0000000000900a88 in gseThread::run_helper(void*) ()
#10 0x000000000099318c in tos::util_thread_start(void*) ()
#11 0x00007f9f0f8287f1 in start_thread () from /lib64/libpthread.so.0
#12 0x00007f9f0ebe0ccd in clone () from /lib64/libc.so.6



> TThreadedServer  mode maybe lock and can't work
> -----------------------------------------------
>
>                 Key: THRIFT-4336
>                 URL: https://issues.apache.org/jira/browse/THRIFT-4336
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Library
>    Affects Versions: 0.9.3
>         Environment: Linux 2.6.32 
>            Reporter: xiaomingzhongguo
>            Priority: Critical
>              Labels: performance
>
> Run in TThreadedServer mode 
> run some times,thrift accept thread  lock at onClientConnected and can't work 
> call stack like this:
> Thread 14 (Thread 0x7f79de7e4700 (LWP 2214)):
> #0  0x00007f7a1235ffbe in __lll_lock_wait_private () from 
> /lib64/libpthread.so.0
> #1  0x00007f7a12359c9a in _L_lock_1834 () from /lib64/libpthread.so.0
> #2  0x00007f7a123588ef in pthread_create@@GLIBC_2.2.5 () from 
> /lib64/libpthread.so.0
> #3  0x0000000000db139e in apache::thrift::concurrency::PthreadThread::start() 
> ()
> #4  0x0000000000dae7f7 in 
> apache::thrift::server::TThreadedServer::onClientConnected(boost::shared_ptr<apache::thrift::server::TConnectedClient>
>  const&) ()
> #5  0x0000000000db1eef in 
> apache::thrift::server::TServerFramework::newlyConnectedClient(boost::shared_ptr<apache::thrift::server::TConnectedClient>
>  const&) ()
> #6  0x0000000000db27e9 in apache::thrift::server::TServerFramework::serve() ()
> #7  0x0000000000daeb77 in apache::thrift::server::TThreadedServer::serve() ()
> #8  0x00000000009c279e in CmdServer::run() ()
> #9  0x0000000000900a88 in gseThread::run_helper(void*) ()
> #10 0x000000000099318c in tos::util_thread_start(void*) ()
> #11 0x00007f7a123597f1 in start_thread () from /lib64/libpthread.so.0
> #12 0x00007f7a11711ccd in clone () from /lib64/libc.so.6
> Thread 13 (Thread 0x7f79ddfe3700 (LWP 2215)):
> #0  0x00007f7a1235ffbe in __lll_lock_wait_private () from 
> /lib64/libpthread.so.0
> #1  0x00007f7a12359c9a in _L_lock_1834 () from /lib64/libpthread.so.0
> #2  0x00007f7a123588ef in pthread_create@@GLIBC_2.2.5 () from 
> /lib64/libpthread.so.0
> #3  0x0000000000db139e in apache::thrift::concurrency::PthreadThread::start() 
> ()
> #4  0x0000000000dae7f7 in 
> apache::thrift::server::TThreadedServer::onClientConnected(boost::shared_ptr<apache::thrift::server::TConnectedClient>
>  const&) ()
> #5  0x0000000000db1eef in 
> apache::thrift::server::TServerFramework::newlyConnectedClient(boost::shared_ptr<apache::thrift::server::TConnectedClient>
>  const&) ()
> #6  0x0000000000db27e9 in apache::thrift::server::TServerFramework::serve() ()
> #7  0x0000000000daeb77 in apache::thrift::server::TThreadedServer::serve() ()
> #8  0x00000000009c2fc3 in CmdServerV2::run() ()
> #9  0x0000000000900a88 in gseThread::run_helper(void*) ()
> #10 0x000000000099318c in tos::util_thread_start(void*) ()
> #11 0x00007f7a123597f1 in start_thread () from /lib64/libpthread.so.0
> #12 0x00007f7a11711ccd in clone () from /lib64/libc.so.6



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to