[
https://issues.apache.org/jira/browse/HBASE-5451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13244255#comment-13244255
]
[email protected] commented on HBASE-5451:
------------------------------------------------------
bq. On 2012-04-02 00:21:20, Michael Stack wrote:
bq. >
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HBaseClient.java,
line 548
bq. > <https://reviews.apache.org/r/4096/diff/3/?file=97740#file97740line548>
bq. >
bq. > We have an issue for removing this Invocation stuff?
bq.
bq. Devaraj Das wrote:
bq. No not yet. But I'll create one to do with this issue once this patch
is committed.
Thanks
bq. On 2012-04-02 00:21:20, Michael Stack wrote:
bq. >
http://svn.apache.org/repos/asf/hbase/trunk/src/main/protobuf/RPCMessageProto.proto,
line 25
bq. > <https://reviews.apache.org/r/4096/diff/3/?file=97744#file97744line25>
bq. >
bq. > Should we just remove them in the next iteration on rpc since 0.96
is to be a singularity? Why even bother trying to keep compatibility w/ older
clients?
bq. >
bq. > What is 'failure compatibility'? We are telling the client to go
away, nicely (smile).
bq. >
bq. > What you think we should replace hrpc0x0005 with?
bq. >
bq. > this -> these
bq.
bq. Devaraj Das wrote:
bq. Yeah, valid points. We can remove this version string and all in a
follow up patch.
Lets discuss in another jira. A <hrpc> <version> followed by something that
says its protobuf that follows, etc.,
bq. On 2012-04-02 00:21:20, Michael Stack wrote:
bq. >
http://svn.apache.org/repos/asf/hbase/trunk/src/main/protobuf/RPCMessageProto.proto,
line 28
bq. > <https://reviews.apache.org/r/4096/diff/3/?file=97744#file97744line28>
bq. >
bq. > How does RpcRequestWithHeaderProto relate to ConnectionHeaderProto?
This text should say?
bq. >
bq. > Would be nice to have illustration on how the back and forth work.
bq.
bq. Devaraj Das wrote:
bq. The latter is used only while establishing connections and the former
for exchanging RPC requests/responses over a channel that is connected. Okay,
will add some text.
Thanks
bq. On 2012-04-02 00:21:20, Michael Stack wrote:
bq. >
http://svn.apache.org/repos/asf/hbase/trunk/src/main/protobuf/RPCMessageProto.proto,
line 55
bq. > <https://reviews.apache.org/r/4096/diff/3/?file=97744#file97744line55>
bq. >
bq. > We'll send this String each time?
bq.
bq. Devaraj Das wrote:
bq. Actually, I could make this field 'optional' since this has a default
value. Will do so.
That'd be a good idea I think. The other protocols are less used and can
include the String
bq. On 2012-04-02 00:21:20, Michael Stack wrote:
bq. >
http://svn.apache.org/repos/asf/hbase/trunk/src/main/protobuf/RPCMessageProto.proto,
line 66
bq. > <https://reviews.apache.org/r/4096/diff/3/?file=97744#file97744line66>
bq. >
bq. > Which part in here is the 'header'? How does it relate to
ConnectionHeaderProto?
bq. >
bq. > request can be an Invocation/Writable? Or a protobuf? Do we need a
length in here?
bq.
bq. Devaraj Das wrote:
bq. Today the only 'header' is the callId.. There is no relation to
ConnectionHeaderProto. If the 'header' is confusing, I can take it off the
object name. Let me know.
bq.
bq. 'request' in this patch is only a Invocation/Writable. In theory, it
could be a protobuf object as well (since it is just bytes), but, for protobuf,
we could make things more explicit by defining a protobuf object rather than a
opaque set of bytes. But that's another jira (ProtoBufRpcEngine implementation
similar to Hadoop). Length is not needed - the protobuf
serialization/deserialization will take care of it..
I think taking the 'Header' off Request/Response would be best (Did I ask you
add it previous? If so, sorry... I misunderstood. Thanks for being
accomodating). Yes, on a new issue to make it pb rather than opaque bytes.
Do you have to do something here -- make bytes optional? -- to allow for the
later pb replacement?
On length, thats probably good to keep. For us, we'll give the stream to a pb
deserializer but other clients might want to know how many bytes on the
line.... so keep it I'd say.
bq. On 2012-04-02 00:21:20, Michael Stack wrote:
bq. >
http://svn.apache.org/repos/asf/hbase/trunk/src/main/protobuf/RPCMessageProto.proto,
line 93
bq. > <https://reviews.apache.org/r/4096/diff/3/?file=97744#file97744line93>
bq. >
bq. > Should this precede the response? So if false, a response follows
else an exception? Do we need a length here? Where is the header that the
message name refers too?
bq.
bq. Devaraj Das wrote:
bq. Length will be taken care of by the protobuf
serialization/deserialization. The header is the combination of callId, error.
If the 'header' is confusing, I can take it off the object name. Let me know.
Yeah, take away the header. Length I think is good. Makes it more robust
(IIRC, we went out of our way to add length to the old RPC to help clients
figure how much to pull).
- Michael
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/4096/#review6613
-----------------------------------------------------------
On 2012-03-30 23:29:32, Devaraj Das wrote:
bq.
bq. -----------------------------------------------------------
bq. This is an automatically generated e-mail. To reply, visit:
bq. https://reviews.apache.org/r/4096/
bq. -----------------------------------------------------------
bq.
bq. (Updated 2012-03-30 23:29:32)
bq.
bq.
bq. Review request for Michael Stack and Benoit Sigoure.
bq.
bq.
bq. Summary
bq. -------
bq.
bq. Switch RPC call envelope/headers to PBs
bq.
bq.
bq. This addresses bug HBASE-5451.
bq. https://issues.apache.org/jira/browse/HBASE-5451
bq.
bq.
bq. Diffs
bq. -----
bq.
bq.
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/io/DataOutputOutputStream.java
1307644
bq.
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HBaseClient.java
1307644
bq.
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HBaseServer.java
1307644
bq.
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/protobuf/generated/RPCMessageProtos.java
PRE-CREATION
bq.
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/security/User.java
1307644
bq.
http://svn.apache.org/repos/asf/hbase/trunk/src/main/protobuf/RPCMessageProto.proto
PRE-CREATION
bq.
bq. Diff: https://reviews.apache.org/r/4096/diff
bq.
bq.
bq. Testing
bq. -------
bq.
bq.
bq. Thanks,
bq.
bq. Devaraj
bq.
bq.
> Switch RPC call envelope/headers to PBs
> ---------------------------------------
>
> Key: HBASE-5451
> URL: https://issues.apache.org/jira/browse/HBASE-5451
> Project: HBase
> Issue Type: Sub-task
> Components: ipc, master, migration, regionserver
> Affects Versions: 0.94.0
> Reporter: Todd Lipcon
> Assignee: Devaraj Das
> Fix For: 0.96.0
>
> Attachments: rpc-proto.2.txt, rpc-proto.3.txt, rpc-proto.patch.1_2,
> rpc-proto.r5.txt
>
>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira