This is an automated email from the ASF dual-hosted git repository.
abukor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git
The following commit(s) were added to refs/heads/master by this push:
new 91a9c45 subprocess: add an optional sleep to Echo service
91a9c45 is described below
commit 91a9c453fbe372ba4f5c74b82669297bd5c0f0f8
Author: Andrew Wong <[email protected]>
AuthorDate: Thu Feb 6 19:25:59 2020 -0800
subprocess: add an optional sleep to Echo service
I found this pretty helpful in testing the C++ subprocess.
Change-Id: Iabe9da298a1b71912ddc87f48834278d347d8514
Reviewed-on: http://gerrit.cloudera.org:8080/15184
Tested-by: Kudu Jenkins
Reviewed-by: Adar Dembo <[email protected]>
Reviewed-by: Hao Hao <[email protected]>
---
.../java/org/apache/kudu/subprocess/echo/EchoProtocolHandler.java | 7 +++++++
src/kudu/subprocess/subprocess.proto | 3 +++
2 files changed, 10 insertions(+)
diff --git
a/java/kudu-subprocess-echo/src/main/java/org/apache/kudu/subprocess/echo/EchoProtocolHandler.java
b/java/kudu-subprocess-echo/src/main/java/org/apache/kudu/subprocess/echo/EchoProtocolHandler.java
index a531e80..f6293b5 100644
---
a/java/kudu-subprocess-echo/src/main/java/org/apache/kudu/subprocess/echo/EchoProtocolHandler.java
+++
b/java/kudu-subprocess-echo/src/main/java/org/apache/kudu/subprocess/echo/EchoProtocolHandler.java
@@ -32,6 +32,13 @@ class EchoProtocolHandler extends
ProtocolHandler<EchoRequestPB, EchoResponsePB>
@Override
protected EchoResponsePB createResponse(EchoRequestPB request) {
+ if (request.hasSleepMs()) {
+ try {
+ Thread.sleep(request.getSleepMs());
+ } catch (Exception e) {
+ // no-op
+ }
+ }
EchoResponsePB.Builder respBuilder = EchoResponsePB.newBuilder();
respBuilder.setData(request.getData());
return respBuilder.build();
diff --git a/src/kudu/subprocess/subprocess.proto
b/src/kudu/subprocess/subprocess.proto
index 2444981..487b43f 100644
--- a/src/kudu/subprocess/subprocess.proto
+++ b/src/kudu/subprocess/subprocess.proto
@@ -28,6 +28,9 @@ import "kudu/common/wire_protocol.proto";
// EchoResponsePB simply echoes the data in EchoRequestPB as a response.
message EchoRequestPB {
required string data = 1;
+
+ // Optional amount of time in milliseconds to sleep for.
+ optional int32 sleep_ms = 2;
}
message EchoResponsePB {
required string data = 1;