hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Purtell (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-9136) RPC side changes to have a different codec for server to client communication
Date Fri, 20 Sep 2013 17:30:01 GMT

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

Andrew Purtell commented on HBASE-9136:
---------------------------------------

In RpcClient you have this:

{code}
@@ -122,7 +122,9 @@ public class RpcClient {
   protected final boolean tcpKeepAlive; // if T then use keepalives
   protected int pingInterval; // how often sends ping to the server in msecs
   protected FailedServers failedServers;
-  private final Codec codec;
+  private final Codec localCodec;
+  //codec used by the server.  Currently would be used from configuration
+  private final Codec remoteCodec;
   private final CompressionCodec compressor;
   private final IPCUtil ipcUtil;
 
{code}

But there is also a differentiation between local and remote codec on the server:

{code}
@@ -1124,7 +1125,11 @@ public class RpcServer implements RpcServerInterface {
     /**
      * Codec the client asked use.
      */
-    private Codec codec;
+    private Codec remoteCodec;
+    /**
+     * Codec the server is configured to use
+     */
+    private Codec localCodec;
     /**
      * Compression codec the client asked us use.
      */
{code}

Is the net effect to simply choose a different codec for client<->server communication?
Don't we only want to _substitute_ one codec implementation for another on the server side?


See what Stack said: "I suppose you could add indirection so that when client says KeyValueCodec,
server instantiates ServerSideKeyValueCodec. Mapping could be done in Configuration (there
is a Configuration instance in the RpcServer context)."
 
Might drop this part of the description of the new configuration parameter:

{code}
+		The codec can be updated if the server has to secure the tags from
+		reaching the client
{code}

It's specific to one particular use.
                
> RPC side changes to have a different codec for server to client communication
> -----------------------------------------------------------------------------
>
>                 Key: HBASE-9136
>                 URL: https://issues.apache.org/jira/browse/HBASE-9136
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>             Fix For: 0.98.0
>
>         Attachments: HBASE-9136.patch
>
>
> With reference to the mail sent in the dev list,
> http://comments.gmane.org/gmane.comp.java.hadoop.hbase.devel/38984
> We should have a provision such that the codec on the server side could be different
from the one on the client side.  This would help to remove the tags for security usecases.
 
> This JIRA is aimed to provide that capability in the codec itself.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message