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

Ariel Weisberg commented on CASSANDRA-13370:
--------------------------------------------

It would be nice to have tests not block on secure random in the environments 
where that block for an unfortunate amount of time. I looked and I couldn't 
find a way to have SHA1PRNG or a fast seed generator be the default. I suspect 
there is a configuration out there that will initialize quickly, but I couldn't 
find it.

I would +1 switching to something that works on OS X in the interim.



> unittest CipherFactoryTest failed on MacOS
> ------------------------------------------
>
>                 Key: CASSANDRA-13370
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13370
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Testing
>            Reporter: Jay Zhuang
>            Priority: Minor
>
> Seems like MacOS(El Capitan) doesn't allow writing to {{/dev/urandom}}:
> {code}
> $ echo 1 > /dev/urandom
> echo: write error: operation not permitted
> {code}
> Which is causing CipherFactoryTest failed:
> {code}
> $ ant test -Dtest.name=CipherFactoryTest
> ...
>     [junit] Testsuite: org.apache.cassandra.security.CipherFactoryTest
>     [junit] Testsuite: org.apache.cassandra.security.CipherFactoryTest Tests 
> run: 7, Failures: 0, Errors: 7, Skipped: 0, Time elapsed: 2.184 sec
>     [junit]
>     [junit] Testcase: 
> buildCipher_SameParams(org.apache.cassandra.security.CipherFactoryTest):  
> Caused an ERROR
>     [junit] setSeed() failed
>     [junit] java.security.ProviderException: setSeed() failed
>     [junit]     at 
> sun.security.provider.NativePRNG$RandomIO.implSetSeed(NativePRNG.java:472)
>     [junit]     at 
> sun.security.provider.NativePRNG$RandomIO.access$300(NativePRNG.java:331)
>     [junit]     at 
> sun.security.provider.NativePRNG.engineSetSeed(NativePRNG.java:214)
>     [junit]     at 
> java.security.SecureRandom.getDefaultPRNG(SecureRandom.java:209)
>     [junit]     at java.security.SecureRandom.<init>(SecureRandom.java:190)
>     [junit]     at 
> org.apache.cassandra.security.CipherFactoryTest.setup(CipherFactoryTest.java:50)
>     [junit] Caused by: java.io.IOException: Operation not permitted
>     [junit]     at java.io.FileOutputStream.writeBytes(Native Method)
>     [junit]     at java.io.FileOutputStream.write(FileOutputStream.java:313)
>     [junit]     at 
> sun.security.provider.NativePRNG$RandomIO.implSetSeed(NativePRNG.java:470)
> ...
> {code}
> I'm able to reproduce the issue on two Mac machines. But not sure if it's 
> affecting all other developers.
> {{-Djava.security.egd=file:/dev/urandom}} was introduced in:
> CASSANDRA-9581
> I would suggest to revert the 
> [change|https://github.com/apache/cassandra/commit/ae179e45327a133248c06019f87615c9cf69f643]
>  as {{pig-test}} is removed ([pig is no longer 
> supported|https://github.com/apache/cassandra/commit/56cfc6ea35d1410f2f5a8ae711ae33342f286d79]).
> Or adding a condition for MacOS in build.xml.
> [~aweisberg] [~jasobrown] any thoughts?



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

Reply via email to