Michael Ho has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/12260 )

Change subject: IMPALA-7985: Port RemoteShutdown() to KRPC.
......................................................................


Patch Set 2:

(4 comments)

http://gerrit.cloudera.org:8080/#/c/12260/2/be/src/service/client-request-state.cc
File be/src/service/client-request-state.cc:

http://gerrit.cloudera.org:8080/#/c/12260/2/be/src/service/client-request-state.cc@653
PS2, Line 653:   // KRPC relies on resolved IP address, so convert hostname.
             :   IpAddr ip_address;
             :   Status ip_status = HostnameToIpAddr(request.backend.hostname, 
&ip_address);
             :   if (!ip_status.ok()) {
             :     VLOG(1) << "Could not convert hostname " << 
request.backend.hostname
             :             << " to ip address, error: " << 
ip_status.GetDetail();
             :     return ip_status;
             :   }
             :   TNetworkAddress addr = MakeNetworkAddress(ip_address, port);
> In my original (unpublished) prototype I was keeping the original UX where 
Thanks for the explanation. That's a reasonable scenario in which the backend 
being shut down may not be found in the backend descriptors.


http://gerrit.cloudera.org:8080/#/c/12260/2/be/src/service/client-request-state.cc@692
PS2, Line 692:       return Status(Substitute("Rpc to $0 failed with error 
'$1'. This may be because "
             :                                "the port specified is a thrift 
port, which :shutdown() "
             :                                "can no longer use. Make sure the 
port is a KRPC port.",
             :           TNetworkAddressToString(addr), msg));
             :     }
             :     return Status(Substitute(
             :         "Rpc to $0 failed with error '$1'.", 
TNetworkAddressToString(addr), msg));
Not sure if a typical user has any understanding of the difference between 
Thrift port and KPRC port as they are internal to Impala. May we can simplify 
the statement to be like the following:

   string err_string = Substitute("Rpc to $0 failed with error '$1'",
         TNetworkAddressToString(addr), msg);
   if (msg.find(...) != string::npos) {
       err_string.append(" Please make sure the right port is being used or 
don't specify any port in the :shutdown() command");
   }
   return Status(err_string);}


http://gerrit.cloudera.org:8080/#/c/12260/3/be/src/service/control-service.cc
File be/src/service/control-service.cc:

http://gerrit.cloudera.org:8080/#/c/12260/3/be/src/service/control-service.cc@170
PS3, Line 170:   FAULT_INJECTION_RPC_DELAY(RPC_CANCELQUERYFINSTANCES);
Shouldn't this use a DebugAction instead ?


http://gerrit.cloudera.org:8080/#/c/12260/3/be/src/service/control-service.cc@184
PS3, Line 184: FAULT_INJECTION_RPC_DELAY(RPC_REMOTESHUTDOWN);
Shouldn't this use a DebugAction instead ?



--
To view, visit http://gerrit.cloudera.org:8080/12260
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4fd00ee4e638f5e71e27893162fd65501ef9e74e
Gerrit-Change-Number: 12260
Gerrit-PatchSet: 2
Gerrit-Owner: Andrew Sherman <asher...@cloudera.com>
Gerrit-Reviewer: Andrew Sherman <asher...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Gerrit-Reviewer: Michael Ho <k...@cloudera.com>
Gerrit-Reviewer: Thomas Marshall <thomasmarsh...@cmu.edu>
Gerrit-Comment-Date: Tue, 29 Jan 2019 23:11:33 +0000
Gerrit-HasComments: Yes

Reply via email to