cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ariel Weisberg (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
Date Thu, 23 Mar 2017 18:47:42 GMT

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

Ariel Weisberg edited comment on CASSANDRA-13370 at 3/23/17 6:47 PM:
---------------------------------------------------------------------

Sorry to keep changing my mind. Still digesting the fact that we can fix just this one test
and keep using /dev/urandom. I checked and we don't use seeding of SecureRandom outside of
this test. So I propose going with your original solution of using SHA1PRNG, seeding it the
way the test does so that the test is deterministic as originally intended, and not changing
anything in build.xml.

||Code|utests||
|[3.11|https://github.com/apache/cassandra/compare/cassandra-3.11...aweisberg:cassandra-13370-3.11?expand=1]|[utests|https://cassci.datastax.com/view/Dev/view/aweisberg/job/aweisberg-cassandra-13370-3.11-testall/2/]|


was (Author: aweisberg):
Sorry to keep changing my mind. Still digesting the fact that we can fix just this one test
and keep using /dev/urandom. I checked and we don't use seeding of SecureRandom outside of
this test. So I propose going with your original solution of using SHA1PRNG, seeding it the
way the test does so that the test is deterministic as originally intended, and not changing
anything in build.xml.

||Code|utests||
|[3.11|https://github.com/apache/cassandra/compare/cassandra-3.11...aweisberg:cassandra-13370-3.11?expand=1]|[utests|https://cassci.datastax.com/view/Dev/view/aweisberg/job/aweisberg-cassandra-13370-3.11-testall/1/]|

> 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)

Mime
View raw message