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

Xiao Chen commented on HADOOP-12699:
------------------------------------

>From [~tucu00]'s [comment in 
>HADOOP-11071|https://issues.apache.org/jira/browse/HADOOP-11071?focusedCommentId=14125860&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14125860],
> I feel this should be a test-only problem, and not a real scenario. Andrew 
>and Alejandro, please correct me if I'm wrong about this.

Patch 1 is attached to fix the failure for the test. My thought is to disable 
the async filler tasks, since we just want to test the functionality of cached 
keys before and after rolling. I added a test-only configuration, to disable 
the async completely. Please review. Thanks!

FYI - I initially wanted to change the configurations around the water mark to 
disable it, since {{ValueQueue#getAtMost}} has:
{code}
if (i <= (int) (lowWatermark * numValues)) {
{code}
But {{ValueQueue}} validates the parameters in constructor, so that's not 
doable. 

> TestKMS#testKMSProvider intermittently fails during 'test rollover draining'
> ----------------------------------------------------------------------------
>
>                 Key: HADOOP-12699
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12699
>             Project: Hadoop Common
>          Issue Type: Bug
>            Reporter: Xiao Chen
>            Assignee: Xiao Chen
>         Attachments: HADOOP-12699.01.patch, HADOOP-12699.repro.patch
>
>
> I've seen several failures of testKMSProvider, all failed in the following 
> snippet:
> {code}
>         // test rollover draining
>         KeyProviderCryptoExtension kpce = KeyProviderCryptoExtension.
>             createKeyProviderCryptoExtension(kp);
>         .....
>         EncryptedKeyVersion ekv1 = kpce.generateEncryptedKey("k6");
>         kpce.rollNewVersion("k6");
>         EncryptedKeyVersion ekv2 = kpce.generateEncryptedKey("k6");
>         Assert.assertNotEquals(ekv1.getEncryptionKeyVersionName(),
>             ekv2.getEncryptionKeyVersionName());
> {code}
> with error message
> {quote}Values should be different. Actual: k6@0{quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to