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

Stefan Podkowinski edited comment on CASSANDRA-13370 at 3/23/17 6:30 PM:
-------------------------------------------------------------------------

-I don't think seeding SecureRandom does what you think it does, Ariel. The 
provided seed will just get "mixed" with the current RNG seed. This is 
different from e.g. seeding java.util.Random and will not make the test 
deterministic.-

(does only seem to apply to the native PRNG, just tested with SHA1PRNG and it 
worked as described by you, my mistake here)



was (Author: spo...@gmail.com):
I don't think seeding SecureRandom does what you think it does, Ariel. The 
provided seed will just get "mixed" with the current RNG seed. This is 
different from e.g. seeding java.util.Random and will not make the test 
deterministic.

> 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
>            Assignee: Jay Zhuang
>            Priority: Minor
>             Fix For: 3.11.x, 4.x
>
>         Attachments: 13370-trunk.txt, 13370-trunk-update.txt
>
>
> 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