[
https://issues.apache.org/jira/browse/HDFS-12104?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
James Clampffer updated HDFS-12104:
-----------------------------------
Attachment: HDFS-12104.HDFS-8707.000.patch
Added patch: When we lose the RPC connection due to a cancel or because the
remote side shut it call authcomplete with an appropriate status.
There really isn't a good way to test this one short of instrumenting the KDC
to inject errors right after the namenode has connected to the KDC and after
libhdfs++ SASL mechanism negotiation with the NN. It'd fail in <1% of
integration tests with another product I work on; the only reason it became
noticeable was when the library version was pinned and hundreds of tests were
run (1000s of machine hours). Verified the fix by doing the same batch style
test and didn't hit a failure after >1000 runs.
> libhdfs++: Make sure all steps in SaslProtocol end up calling AuthComplete
> ---------------------------------------------------------------------------
>
> Key: HDFS-12104
> URL: https://issues.apache.org/jira/browse/HDFS-12104
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: hdfs-client
> Reporter: James Clampffer
> Assignee: James Clampffer
> Attachments: HDFS-12104.HDFS-8707.000.patch
>
>
> SaslProtocol provides an abstraction for stepping through the authentication
> challenge and response stages in the Cyrus SASL library by chaining callbacks
> together (next one is invoked when async io is done).
> To authenticate SaslProtocol::Authenticate is called, and when authentication
> is finished SaslProtocol::AuthComplete is called which invokes an
> authentication completion callback. There's a couple cases where the
> intermediate callbacks return without calling AuthComplete which breaks
> applications that take advantage of that callback.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]