GitHub user rajinisivaram opened a pull request:
https://github.com/apache/kafka/pull/3773
MINOR: Fix unit test failures from last commit, cherry-pick fix for SASL
principal
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/rajinisivaram/kafka MINOR-0.10.2-buildfix
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/kafka/pull/3773.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #3773
----
commit 63ca7932727b704eb2f9f52fdc1241c8c7238aa2
Author: Rajini Sivaram <[email protected]>
Date: 2017-08-31T19:07:15Z
MINOR: Fix unit test failures from last commit and checkstyle fixes
commit c022fde8c37fcadcbc004f4618bfd61af3a87d4e
Author: Rajini Sivaram <[email protected]>
Date: 2017-06-06T02:43:07Z
KAFKA-5325; Avoid and handle exceptions for Kerberos re-login
If producer creates a connection during Kerberos re-login (after logout,
before login), there are no principals in the subject and
`SaslClientAuthenticator.configure` may throw an exception while trying
to determine the principal. A socket channel is created and its key
registered with the selector, but the `RuntimeException` thrown leaves
the key registered with the selector without adding the channel to the
channel list. This results in an infinite loop of
`NullPointerExceptions`.
The PR applies two fixes:
1. Convert the `RuntimeException` to a meaningful `KafkaException`
2. Handle any exception in `buildChannel`, cleanup and throw
`IOException`.
Retries will take care of re-connections.
Author: Rajini Sivaram <[email protected]>
Reviewers: Jun Rao <[email protected]>, Ismael Juma <[email protected]>
Closes #3208 from rajinisivaram/KAFKA-5325
(cherry picked from commit 9934d28a34351a63738f8e9bac6b53fd699a4905)
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---