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

Henrique Mendonça closed THRIFT-1682.
-------------------------------------


> Multiple thread calling a Service function unsafely causes message corruption 
> and terminates with Broken Pipe
> -------------------------------------------------------------------------------------------------------------
>
>                 Key: THRIFT-1682
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1682
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Library
>    Affects Versions: 0.7, 0.8, 0.9
>         Environment: Linux Kernel: 2.6.32-42-generic (Ubuntu 10.04)
>            Reporter: Felipe Toledo G Oliveira
>            Priority: Critical
>              Labels: c++, corruption, thread-safe, thread-safety, threading
>         Attachments: BrokenPipeCpp_src.tar.gz
>
>
> If more than one thread attempts to send messages using the same Client 
> instance, one of the threads corrupts another thread's parameter values and 
> terminates program displaying Broken Pipe.
> If the Service function is locked with a Mutex, the issue stops occurring.
> See the following log fragment, displaying 'Unknown[*]', where '*' is a 
> corrupt value.
> <log fragment>
> Thrift: Tue Aug 28 13:12:00 2012 TSimpleServer uncaught exception.
> virtual void FooHandler::bar(int32_t, zoo::StateType::type, 
> zoo::WeekdayType::type): id: 0, state: Unknown[152587096], weekday: 
> Unknown[152587096]
> Thrift: Tue Aug 28 13:12:00 2012 TSocket::write_partial() send() <Host: 
> 127.0.0.1 Port: 9000>Broken pipe
> terminate called after throwing an instance of 'std::exception'
>   what():  std::exception
> void FooPeer::bar(int32_t, zoo::StateType::type, zoo::WeekdayType::type): 
> Exception: write() send(): Broken pipe
> void FooPeer::bar(int32_t, zoo::StateType::type, zoo::WeekdayType::type): id: 
> 0, state: START, weekday: TUESDAY
> </log fragment> 
> Please, check our sample code at 'BrokenPipeCpp_src.tar.gz' in order to 
> reproduce this error.
> Regards,
> Felipe



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to