Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-11368

Fix SSLFactory truststore reloader thread leak in KMSClientProvider

    XMLWordPrintableJSON

Details

    Description

      When a KMSClientProvider is initialized in ssl mode, It initializes a SSLFactory object. This in-turn creates an instance of ReloadingX509TrustManager which, on initialization, starts a trust store reloader thread.

      It is noticed that over time, as a number of short lived KMSClientProvider instances are created and destroyed, the trust store manager threads are not interrupted/killed and remain in TIMED_WAITING state. A Thread dump shows multiple:

      "Truststore reloader thread" daemon prio=10 tid=0x00007fb1cf942800 nid=0x4e99 waiting on condition [0x00007fb0485f5000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.run(ReloadingX509TrustManager.java:189)
              at java.lang.Thread.run(Thread.java:662)
      
         Locked ownable synchronizers:
              - None
      

      Attachments

        1. HADOOP-11368.1.patch
          3 kB
          Arun Suresh

        Activity

          People

            asuresh Arun Suresh
            asuresh Arun Suresh
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: