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

LoadBalancingKMSClientProvider#warmUpEncryptedKeys swallows IOException

VotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.8.1
    • 2.9.0, 3.0.0-beta1, 2.8.2
    • None
    • None

    Description

      TestAclsEndToEnd is failing consistently in HADOOP-14521.
      The reason behind it is LoadBalancingKMSClientProvider#warmUpEncryptedKeys swallows IOException while KMSClientProvider#warmUpEncryptedKeys throws all the way back to createEncryptionZone and creation of EZ fails.
      Following are the relevant piece of code snippets.

      KMSClientProvider.java
        @Override
        public void warmUpEncryptedKeys(String... keyNames)
            throws IOException {
          try {
            encKeyVersionQueue.initializeQueuesForKeys(keyNames);
          } catch (ExecutionException e) {
            throw new IOException(e);
          }
        }
      
      LoadBalancingKMSClientProvider.java
         // This request is sent to all providers in the load-balancing group
        @Override
        public void warmUpEncryptedKeys(String... keyNames) throws IOException {
          for (KMSClientProvider provider : providers) {
            try {
              provider.warmUpEncryptedKeys(keyNames);
            } catch (IOException ioe) {
              LOG.error(
                  "Error warming up keys for provider with url"
                  + "[" + provider.getKMSUrl() + "]", ioe);
            }
          }
        }
      

      In HADOOP-14521, I intend to always instantiate LoadBalancingKMSClientProvider even if there is only one provider so that the retries can applied at only one place.
      We need to decide whether we want to fail in both the case or continue.

      Attachments

        1. HADOOP-14563.patch
          5 kB
          Rushabh Shah
        2. HADOOP-14563-1.patch
          5 kB
          Rushabh Shah
        3. HADOOP-14563-2.patch
          5 kB
          Rushabh Shah

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            shahrs87 Rushabh Shah
            shahrs87 Rushabh Shah
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment