[ 
https://issues.apache.org/jira/browse/HBASE-21652?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16730607#comment-16730607
 ] 

Allan Yang commented on HBASE-21652:
------------------------------------

After a careful examination, I finally find out that there is no way to let one 
thrift server supporting both thrift1 and thrift2 WITHOUT changing client 
protocol(See THRIFT-563, TMultiplexedProtocol is required at client side ).  So 
I give up this incompatible change. 
But I do refactor the implementation of thrift1/thrift2 Server, making thrift1 
is inherited from thrift1 server, so that we can get rid of many duplicated 
code. And more, adding new feature is more easy. For example, before the 
refactoring, adding authentication/impersonation feature require modification 
on both thrift1/ thrift2 server. After refactoring, thrift2 server will have 
all features of thrift1 server in default(like http protocol, thrift2 server 
does not support http until now).

> Refactor ThriftServer making thrift2 server to support both thrift1 and 
> thrift2 protocol
> ----------------------------------------------------------------------------------------
>
>                 Key: HBASE-21652
>                 URL: https://issues.apache.org/jira/browse/HBASE-21652
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Allan Yang
>            Assignee: Allan Yang
>            Priority: Major
>
> Except the different protocol, thrift2 Server should have no much difference 
> from thrift1 Server.  So refactoring the thrift server, making thrift2 server 
> inherit from thrift1 server. Getting rid of many duplicated code, making 
> thrift2 server can serve thrift1 protocol at the same time.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to