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

Michael Ho resolved IMPALA-6308.
--------------------------------
    Resolution: Fixed

https://github.com/apache/impala/commit/e57c77f095cbf1660b02d629f7b0cb6a92491e0e

IMPALA-6308: Fix bad Status() usage in data-stream-sender.cc

Previously, DataStreamSender::FlushAndSendEos() makes some wrong
assumption about the format string of the error status returned
from DoTransmitDataRpc(). In particular, it assumes that the format
string has exactly one substitution argument. This is a pretty bad
assumption as new types of errors could be returned from
DoTransmitDataRpc() and they can take different numbers of
substitution arguments. Recent changes in the format string
TErrorCode::RPC_RECV_TIMEOUT exposed this bug.

This change fixes the problem by removing this bad usage of Status()
in data-stream-sender.cc

Change-Id: I1cc04db670069a7df484e2f2bafb93c5315b9c82
Reviewed-on: http://gerrit.cloudera.org:8080/8817
Reviewed-by: Tim Armstrong <tarmstr...@cloudera.com>
Tested-by: Impala Public Jenkins

> RPC timeout message printing invalid destination name
> -----------------------------------------------------
>
>                 Key: IMPALA-6308
>                 URL: https://issues.apache.org/jira/browse/IMPALA-6308
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Backend
>    Affects Versions: Impala 2.11.0
>            Reporter: Pranay Singh
>            Assignee: Michael Ho
>            Priority: Blocker
>             Fix For: Impala 2.11.0
>
>
> Error message should print the destination address, when RPC timeout error is 
> encountered.
> Details
> ----------
> E1208 21:46:01.583712 29991 data-stream-sender.cc:278] channel send to 
> ec2-m2-4xlarge-centos-6-4-1e74.vpc.cloudera.com:22000 failed: RPC recv timed 
> out: dest address: ec2-m2-4xlarge-centos-6-4-1e74.vpc.cloudera.com:22000, 
> rpc: N6impala19TTransmitDataResultE
> F1208 21:46:18.957877 30189 substitute.cc:41] strings::Substitute format 
> string invalid: asked for "$1", but only 1 args were given.  Full format 
> string was: "RPC recv timed out: dest address: $0, rpc: $1".
> *** Check failure stack trace: ***
>     @          0x3bdfc1d  google::LogMessage::Fail()
>     @          0x3be14c2  google::LogMessage::SendToLog()
>     @          0x3bdf5f7  google::LogMessage::Flush()
>     @          0x3bdf959  google::LogMessage::~LogMessage()
>     @          0x3bd63e9  strings::internal::SubstitutedSize()
>     @          0x3bd67ec  strings::SubstituteAndAppend()
>     @          0x15fbdde  strings::Substitute()
>     @          0x1a3adf9  impala::ErrorMsg::ErrorMsg()
>     @          0x1642c72  impala::Status::Status()
>     @          0x2c88bbd  impala::DataStreamSender::Channel::FlushAndSendEos()
>     @          0x2c8b648  impala::DataStreamSender::FlushFinal()
>     @          0x189336c  impala::FragmentInstanceState::ExecInternal()
>     @          0x189096f  impala::FragmentInstanceState::Exec()
>     @          0x18797b8  impala::QueryState::ExecFInstance()
>     @          0x187807a  
> _ZZN6impala10QueryState15StartFInstancesEvENKUlvE_clEv
>     @          0x187a3f7  
> _ZN5boost6detail8function26void_function_obj_invoker0IZN6impala10QueryState15StartFInstancesEvEUlvE_vE6invokeERNS1_15function_bufferE
>     @          0x17c6ed4  boost::function0<>::operator()()
>     @          0x1abdbc9  impala::Thread::SuperviseThread()
>     @          0x1ac6754  boost::_bi::list4<>::operator()<>()
>     @          0x1ac6697  boost::_bi::bind_t<>::operator()()
>     @          0x1ac665a  boost::detail::thread_data<>::run()
>     @          0x2d6966a  thread_proxy
>     @       0x31bee07851  (unknown)
>     @       0x31beae894d  (unknown)



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

Reply via email to