[ 
https://issues.apache.org/jira/browse/HDFS-11885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16033056#comment-16033056
 ] 

Rushabh S Shah commented on HDFS-11885:
---------------------------------------

{noformat}
    Mockito.doAnswer(new Answer<EncryptedKeyVersion>() {
      @Override
      public EncryptedKeyVersion answer(
          InvocationOnMock invocationOnMock) throws Throwable {
        Thread.sleep(Long.MAX_VALUE);
        return null;
      }
    }).when(spy).warmUpEncryptedKeys(Mockito.any());
{noformat}
Also one more thing.
The above chunk of code is redundant as 
{{KeyProviderCryptoExtension#warmUpEncryptedKeys}} is never called since that 
is only being called at namenode startup and since we are not restarting 
namenode in the test case, it will never be called.

> createEncryptionZone should not block on initializing EDEK cache
> ----------------------------------------------------------------
>
>                 Key: HDFS-11885
>                 URL: https://issues.apache.org/jira/browse/HDFS-11885
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: encryption
>    Affects Versions: 2.6.5
>            Reporter: Andrew Wang
>            Assignee: Andrew Wang
>            Priority: Critical
>         Attachments: HDFS-11885.001.patch, HDFS-11885.002.patch
>
>
> When creating an encryption zone, we call {{ensureKeyIsInitialized}}, which 
> calls {{provider.warmUpEncryptedKeys(keyName)}}. This is a blocking call, 
> which attempts to fill the key cache up to the low watermark.
> If the KMS is down or slow, this can take a very long time, and cause the 
> createZone RPC to fail with a timeout.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to