Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/7853 )
Change subject: tool: add cluster shell action ...................................................................... Patch Set 8: (7 comments) http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_common.cc File src/kudu/tools/tool_action_common.cc: http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_common.cc@663 PS8, Line 663: LOG(INFO) nit: looks like more VLOG(1) to me. http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_common.cc@669 PS8, Line 669: LOG(INFO) ditto: VLOG(1) ? http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_common.cc@680 PS8, Line 680: unable to print JSON to stdout nit: 'unable to serialize into JSON: $0'? The printing to stdout is done later at line 701, right? http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_common.cc@685 PS8, Line 685: buf.append("\n"); I'm curious whether this is really necessary or it's just for better troubleshooting, etc.? In any case, it would be nice if you could add a comment explaining the reason of having '\n' appended. http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_common.cc@718 PS8, Line 718: CHECK_EQ(buf->length(), r); > This isn't guaranteed, per man 2 read: But in case of pipes, reading 0 from the read side of the pipe is possible with pipes only if the writer closes the write side, no? http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_test.cc File src/kudu/tools/tool_action_test.cc: http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_test.cc@216 PS8, Line 216: opts.master_rpc_ports = { 11030, 11031, 11032 }; > It's checked above on line 196. Yes, num_master can only be 3 at this point if the code at line 196 stands as is. My thinking was to assert that even if the code above changes and this piece is not updated. http://gerrit.cloudera.org:8080/#/c/7853/8/src/kudu/tools/tool_action_test.cc@346 PS8, Line 346: ActionBuilder("shell", &RunControlShell) > I'm opposed to calling this a shell. There is precedent for the term shell I have a proposal as well (you can consider it as bike shedding) -- it can be called 'control'. So, the invocation would be 'kudu test control' instead of 'kudu test shell'. -- To view, visit http://gerrit.cloudera.org:8080/7853 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I0e693921ef780dc4a06e536c6b7408f7f0b252f6 Gerrit-Change-Number: 7853 Gerrit-PatchSet: 8 Gerrit-Owner: Adar Dembo <a...@cloudera.com> Gerrit-Reviewer: Adar Dembo <a...@cloudera.com> Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com> Gerrit-Reviewer: Dan Burkert <danburk...@apache.org> Gerrit-Reviewer: Jean-Daniel Cryans <jdcry...@apache.org> Gerrit-Reviewer: Tidy Bot Gerrit-Reviewer: Todd Lipcon <t...@apache.org> Gerrit-Comment-Date: Tue, 03 Oct 2017 18:15:23 +0000 Gerrit-HasComments: Yes