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