Hello Attila Bukor, Kudu Jenkins, Andrew Wong, Adar Dembo, Grant Henke,

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/14329

to look at the new patch set (#4).

Change subject: [java] KUDU-2791: process communicates via protobuf-based 
protocol
......................................................................

[java] KUDU-2791: process communicates via protobuf-based protocol

This commit adds a java tool that can communicate with other process
via protobuf-based protocol over standard input/output. It is useful
in cases a Kudu process (e.g. master) needs to talk to third-party
libraries written in Java.

This tool has:
 1) a single reader thread that continuously reads protobuf-based
    messages from the standard input and puts the messages to a FIFO
    blocking queue;
 2) multiple writer threads that continuously retrieve the messages
    from the queue, process them and write the responses to the standard
    output.

To support a new protobuf message type, simply extend the 'ProtocolProcessor'
interface to specify how to handle the message type.

Change-Id: Iaf9ad24dbc9acc681284b6433836271b5b4c7982
---
M java/gradle/dependencies.gradle
A java/kudu-subprocess/build.gradle
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/EchoProtocolProcessor.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/KuduSubprocessException.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/MessageConsumer.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/MessageProcessor.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/MessageProducer.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/ProtocolProcessor.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/SubprocessCommandLine.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/SubprocessCommandLineParser.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/SubprocessConfiguration.java
A 
java/kudu-subprocess/src/main/java/org/apache/kudu/subprocess/SubprocessMain.java
A java/kudu-subprocess/src/main/resources/log4j2.properties
A java/kudu-subprocess/src/test/java/org/apache/kudu/subprocess/MessageTest.java
A 
java/kudu-subprocess/src/test/java/org/apache/kudu/subprocess/TestMessageProcessor.java
A 
java/kudu-subprocess/src/test/java/org/apache/kudu/subprocess/TestMessageProducerConsumer.java
M java/settings.gradle
17 files changed, 1,385 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/29/14329/4
--
To view, visit http://gerrit.cloudera.org:8080/14329
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Iaf9ad24dbc9acc681284b6433836271b5b4c7982
Gerrit-Change-Number: 14329
Gerrit-PatchSet: 4
Gerrit-Owner: Hao Hao <hao....@cloudera.com>
Gerrit-Reviewer: Adar Dembo <a...@cloudera.com>
Gerrit-Reviewer: Andrew Wong <aw...@cloudera.com>
Gerrit-Reviewer: Attila Bukor <abu...@apache.org>
Gerrit-Reviewer: Grant Henke <granthe...@apache.org>
Gerrit-Reviewer: Hao Hao <hao....@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)

Reply via email to