[
https://issues.apache.org/jira/browse/HBASE-27923?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
chenglei updated HBASE-27923:
-----------------------------
Description:
{{NettyRpcServer}} may hange if it should skip initial sasl handshake when
server does not enable security and client enables security, I think this
problem is caused by two reasons:
* For Server:
The type of the response is {{RpcResponse}}, but for
{{NettyRpcServerPreambleHandler}},when it send {{RpcResponse}}
,{{NettyRpcServerResponseEncoder }} does not exist, so {{RpcResponse}} messages
cannot be sent.
* For Client
When {{NettyHBaseSaslRpcClientHandler}} receives
{{SaslUtil.SWITCH_TO_SIMPLE_AUTH}}, it does not remove {{SaslChallengeDecoder}}
and {{NettyHBaseSaslRpcClientHandler}}, so the latter responses are considered
to be incorrect.
was:
{{NettyRpcServer}} may hange if it should skip initial sasl handshake when
server does not enable security and client enables security,I think this
problem is caused by two reasons:
* For Server:
The type of the response is {{RpcResponse}}, but for
{{NettyRpcServerPreambleHandler}},when it send {{RpcResponse}}
,{{NettyRpcServerResponseEncoder }} does not exist, so {{RpcResponse}} messages
cannot be sent.
* For Client
When {{NettyHBaseSaslRpcClientHandler}} receives
{{SaslUtil.SWITCH_TO_SIMPLE_AUTH}}, it does not remove {{SaslChallengeDecoder}}
and {{NettyHBaseSaslRpcClientHandler}}, so the latter responses are considered
to be incorrect.
> NettyRpcServer may hange if it should skip initial sasl handshake
> -----------------------------------------------------------------
>
> Key: HBASE-27923
> URL: https://issues.apache.org/jira/browse/HBASE-27923
> Project: HBase
> Issue Type: Bug
> Components: netty, rpc, security
> Affects Versions: 2.6.0, 3.0.0-alpha-4, 4.0.0-alpha-1
> Reporter: chenglei
> Priority: Major
>
> {{NettyRpcServer}} may hange if it should skip initial sasl handshake when
> server does not enable security and client enables security, I think this
> problem is caused by two reasons:
> * For Server:
> The type of the response is {{RpcResponse}}, but for
> {{NettyRpcServerPreambleHandler}},when it send {{RpcResponse}}
> ,{{NettyRpcServerResponseEncoder }} does not exist, so {{RpcResponse}}
> messages cannot be sent.
> * For Client
> When {{NettyHBaseSaslRpcClientHandler}} receives
> {{SaslUtil.SWITCH_TO_SIMPLE_AUTH}}, it does not remove
> {{SaslChallengeDecoder}} and {{NettyHBaseSaslRpcClientHandler}}, so the
> latter responses are considered to be incorrect.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)