Skip to content

Fix BaseClient thread executor name #7284

@Dohbedoh

Description

@Dohbedoh

Describe the bug

While troubleshooting and looking for the origin of a thread leak in Jenkins, I narrowed it down to leaked threads coming from the BaseClient. But due to the way Jenkins handled and cache the client.

That being said, the thread name did not make it easy to find the origin of the thread. Probably due to the fact that the supplied uses an anonymous class for which the getClass().getSimpleName() is "empty" (confirmed in debug):

This should be fix and those thread have a more meaningful prefix.

Fabric8 Kubernetes Client version

7.4.0

Steps to reproduce

  • Initiate a BaseClient
  • And execute a simple command through it

The client spawns threads named -XXXXXXXX-pool-XX-thread-XX.

Expected behavior

BaseClient executor threads have a meaningful name prefix, such as KubernetesBaseClient- or based on client URL.

Runtime

Kubernetes (vanilla)

Kubernetes API Server version

1.33

Environment

GKE

Fabric8 Kubernetes Client Logs

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions