Skip to content

Conversation

tnewman-at-gm
Copy link

@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
Copy link
Member

@germanosin germanosin left a comment

Choose a reason for hiding this comment

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

Thanks for contribution!
LGTM

@germanosin
Copy link
Member

Please update branch and we are ready to merge

@tnewman-at-gm
Copy link
Author

Please update branch and we are ready to merge

updated. just need to wait for ci runs.

@germanosin germanosin added this to the 1.2 milestone Feb 24, 2025
@germanosin germanosin merged commit be38440 into kafbat:main Feb 24, 2025
13 of 15 checks passed
git-halinka pushed a commit to sainsburys-tech/kafka-ui that referenced this pull request Mar 20, 2025
@Haarolean Haarolean changed the title Create Kafka Admin Client outside of the Parallel scheduler thread pool Internal: Create Admin Client outside of the Parallel scheduler thread pool Mar 21, 2025
@Haarolean Haarolean removed this from Housekeeping Jul 13, 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
No open projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants