Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create Kafka Admin Client outside of the Parallel scheduler thread pool #784

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

tnewman-at-gm
Copy link
Contributor

@tnewman-at-gm tnewman-at-gm commented Jan 15, 2025

  • Breaking change? (if so, please describe the impact and migration path for existing application instances)

What changes did you make? (Give an overview)
I identified a bug where Event Hub with Kafka protocol and Entra authentication does not work because.block() is being called in a parallel scheduler thread, which throws an exception. Creating the Admin client using Mono.supplier() runs on the parallel scheduler. Creating the admin client using a CompletableFuture eliminates this problem because CompletableFutures are run on different threads.

Here is the bug:
kafka-ui-bug

Here is the result after the fix:
image

Is there anything you'd like reviewers to focus on?

How Has This Been Tested? (put an "x" (case-sensitive!) next to an item)

  • No need to
  • Manually (please, describe, if necessary) - After making the change, I started Kafka UI and connected to an Azure Event Hub Cluster using Kafka protocol and Entra authentication. I can now list topics.
  • Unit checks
  • Integration checks
  • Covered by existing automation

Checklist (put an "x" (case-sensitive!) next to all the items, otherwise the build will fail)

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (e.g. ENVIRONMENT VARIABLES)
  • My changes generate no new warnings (e.g. Sonar is happy)
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged

Check out Contributing and Code of Conduct

A picture of a cute animal (not mandatory but encouraged)

…ol (#7)

* Create Kafka Admin Client outside of the Parallel scheduler thread pool
@tnewman-at-gm tnewman-at-gm requested a review from a team as a code owner January 15, 2025 17:56
@kapybro kapybro bot added status/triage Issues pending maintainers triage status/triage/manual Manual triage in progress status/triage/completed Automatic triage completed and removed status/triage Issues pending maintainers triage labels Jan 15, 2025
@yeikel
Copy link
Collaborator

yeikel commented Jan 16, 2025

@Haarolean Can you take a look?

@Haarolean Haarolean added scope/backend Related to backend changes type/bug Something isn't working and removed status/triage/manual Manual triage in progress labels Jan 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scope/backend Related to backend changes status/triage/completed Automatic triage completed type/bug Something isn't working
Projects
Status: Active
Development

Successfully merging this pull request may close these issues.

3 participants