Skip to content

KAFKA-8162: IBM JDK Class not found error when handling SASL#6524

Merged
mimaison merged 3 commits intoapache:trunkfrom
edoardocomar:KAFKA-8162
Jan 30, 2020
Merged

KAFKA-8162: IBM JDK Class not found error when handling SASL#6524
mimaison merged 3 commits intoapache:trunkfrom
edoardocomar:KAFKA-8162

Conversation

@edoardocomar
Copy link
Copy Markdown
Contributor

Attempt to load the IBM internal class but fallback on loading the Sun
class if the IBM one is not found.

More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.

Summary of testing strategy (including rationale)
for the feature or bug fix. Unit and/or integration
tests are expected for any behaviour change and
system tests should be considered for larger changes.

Committer Checklist (excluded from commit message)

  • Verify design and implementation
  • Verify test coverage and CI build status
  • Verify documentation (including upgrade notes)

Attempt to load the IBM internal class but fallback on loading the Sun
class if the IBM one is not found.
@edoardocomar
Copy link
Copy Markdown
Contributor Author

The JDK11 test is unrelated to my change

@edoardocomar
Copy link
Copy Markdown
Contributor Author

@vahidhashemian want to take a look ?

@ijuma
Copy link
Copy Markdown
Member

ijuma commented Apr 7, 2019

Can you please provide context on why this is needed? Please include it as a comment in the code too.

@edoardocomar
Copy link
Copy Markdown
Contributor Author

edoardocomar commented Apr 15, 2019

@ijuma the reason is this open issue
https://issues.apache.org/jira/browse/KAFKA-8162
caused by the fact that different IBM jdk versions seem to include different KrbException implementations

I added a code comment

Copy link
Copy Markdown
Member

@mimaison mimaison left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops did not mean to approve but I'm not able to undo =)

@edoardocomar
Copy link
Copy Markdown
Contributor Author

@ijuma did I clarify the issue enough ?

@edoardocomar
Copy link
Copy Markdown
Contributor Author

@ijuma
Copy link
Copy Markdown
Member

ijuma commented Jan 30, 2020

@mimaison you are a committer now, so you can review and merge this. :)

@mimaison
Copy link
Copy Markdown
Member

I had completely forgotten this PR! I'll check with @edoardocomar if this change is still valid with the latest IBM JDK and merge it if so.
Thanks for finally following up 👍

@edoardocomar
Copy link
Copy Markdown
Contributor Author

@mimaison I just looked at this and with IBM's jdk 8.0.6.0 the correct class to load is com.ibm.security.krb5.KrbException not the .internal one

@mimaison
Copy link
Copy Markdown
Member

retest this please

@mimaison
Copy link
Copy Markdown
Member

Tests failures are unrelated, merging

@mimaison mimaison merged commit d37d95b into apache:trunk Jan 30, 2020
@edoardocomar edoardocomar deleted the KAFKA-8162 branch January 30, 2020 17:46
ijuma added a commit to confluentinc/kafka that referenced this pull request Feb 2, 2020
Conflicts and/or compiler errors due to the fact that we
temporarily reverted the commit that removes
Scala 2.11 support:

* SslAdminIntegrationTest: keep using JAdminClient,
take upstream changes otherwise.
* ReassignPartitionsClusterTest: keep using
JAdminClient, take upstream changes otherwise.
* KafkaApis: use `asScala.foreach` instead of
`forEach`.

# By Ismael Juma (3) and others
# Via GitHub
* apache-github/trunk: (22 commits)
  KAFKA-9437; Make the Kafka Protocol Friendlier with L7 Proxies [KIP-559] (apache#7994)
  KAFKA-9375: Add names to all Connect threads (apache#7901)
  MINOR: Introduce 2.5-IV0 IBP (apache#8010)
  KAFKA-8503; Add default api timeout to AdminClient (KIP-533) (apache#8011)
  Add retries to release.py script (apache#8021)
  KAFKA-8162: IBM JDK Class not found error when handling SASL (apache#6524)
  MINOR: Add explicit result type in public defs/vals (apache#7993)
  KAFKA-9408: Use StandardCharsets.UTF-8 instead of "UTF-8" (apache#7940)
  KAFKA-9474: Adds 'float64' to the RPC protocol types (apache#8012)
  KAFKA-9360: Allow disabling MM2 heartbeat and checkpoint emissions (apache#7887)
  KAFKA-7658: Add KStream#toTable to the Streams DSL (apache#7985)
  KAFKA-9445: Allow adding changes to allow serving from a specific partition (apache#7984)
  KAFKA-9422: Track the set of topics a connector is using (KIP-558) (apache#8017)
  KAFKA-9040; Add --all option to config command (apache#7607)
  KAFKA-4203: Align broker default for max.message.bytes with Java producer default (apache#4154)
  KAFKA-9426: Use switch instead of chained if/else in OffsetsForLeaderEpochClient (apache#7959)
  KAFKA-9405: Use Map.computeIfAbsent where applicable (apache#7937)
  KAFKA-9026: Use automatic RPC generation in DescribeAcls (apache#7560)
  MINOR: Remove unused fields in StreamsMetricsImpl (apache#7992)
  KAFKA-9460: Enable only TLSv1.2 by default and disable other TLS protocol versions (KIP-553) (apache#7998)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants