[
https://issues.apache.org/jira/browse/HBASE-20225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16627857#comment-16627857
]
stack commented on HBASE-20225:
-------------------------------
Back here again. HBCK2 wants to know what version it is going against so it can
see if the remote side has support for particular operations.
> [RPC] Server does not say what version it is
> --------------------------------------------
>
> Key: HBASE-20225
> URL: https://issues.apache.org/jira/browse/HBASE-20225
> Project: HBase
> Issue Type: Bug
> Components: rpc
> Affects Versions: 2.0.0
> Reporter: stack
> Priority: Major
>
> Strange. Server does not tell clients what version it is. It is explicitly
> this way. See [1] from refguide appendix on rpc protocol where client says
> what it wants and server is silent unless it is unable to satisfy the client
> request. I suppose it made sense at the time trying to squeeze in protobuf
> handling into a pre-existing RPC but in hindsight, it seems a little silly we
> don't answer the Connection setup with a Connection setup response that has
> stuff like server version and capabilities.
> Its not so much a problem for our clients currently but I'm in here because
> asynchbase is broke against hbase2 [2]; hbase2 removes support for
> getClosestRowOrBefore doing meta lookups; clients are supposed to do a
> reverse scan instead.
> [~manolamancha] has just made a fix but you have to specify you are
> connecting to hbase2 which is not how asynchbase does it; in the past,
> asynchbase would just figure out what to do going off hints and exceptions
> thrown by our server.
> Not sure there is anything to do here. I tried reto-fitting a connection
> response but it will break hbase1 clients which we need to avoid.
> Here is yet another reason for our throwing away this home-grown RPC. New
> Project: put up an alternate port on which we'd provide a modern RPC, one
> that does streaming, etc., and basics like return server version.
> 1. http://hbase.apache.org/book.html#_server
> 2. https://github.com/OpenTSDB/asynchbase/issues/150#issuecomment-373949082
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)