Andrew Wong has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/15185 )
Change subject: [cpp] KUDU-2971: protobuf-based wrapper for subprocesses ...................................................................... [cpp] KUDU-2971: protobuf-based wrapper for subprocesses This patch adds the SubprocessServer, a wrapper for subprocesses that communicate via SubprocessRequestPB and SubprocessResponsePB messages. The server employs two queues (one outbound for requests, one inbound for responses) to buffer concurrent requests and process responses in parallel. See the comments in subprocess/server.h for more details. Each call to the subprocess has a fixed timeout of 15 seconds (to match with the Sentry client, though this is configurable via gflag), after which the callback will be called with a TimedOut error. These deadlines are checked in a separate "deadline-checker" thread, and callbacks are wrapped in the SubprocessCall class to ensure thread-safety between potential callers of each callback. Change-Id: Id611e1c683df2721fd058f753b8686a688a5990d Reviewed-on: http://gerrit.cloudera.org:8080/15185 Reviewed-by: Adar Dembo <[email protected]> Tested-by: Kudu Jenkins --- M CMakeLists.txt M build-support/dist_test.py M build-support/run_dist_test.py M src/kudu/subprocess/CMakeLists.txt A src/kudu/subprocess/server.cc A src/kudu/subprocess/server.h M src/kudu/subprocess/subprocess_protocol.cc A src/kudu/subprocess/subprocess_server-test.cc 8 files changed, 903 insertions(+), 3 deletions(-) Approvals: Adar Dembo: Looks good to me, approved Kudu Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/15185 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Id611e1c683df2721fd058f753b8686a688a5990d Gerrit-Change-Number: 15185 Gerrit-PatchSet: 13 Gerrit-Owner: Andrew Wong <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Andrew Wong <[email protected]> Gerrit-Reviewer: Attila Bukor <[email protected]> Gerrit-Reviewer: Hao Hao <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241)
