[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15940785#comment-15940785 ] Ariel Weisberg commented on CASSANDRA-13370: Committed as [ee7023e324cdd3b3442b04ad4b0b1f4b33921d35|https://github.com/apache/cassandra/commit/ee7023e324cdd3b3442b04ad4b0b1f4b33921d35] > 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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15940739#comment-15940739 ] Jay Zhuang commented on CASSANDRA-13370: [~aweisberg] yes, sure. Thanks for improving that. > 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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15940724#comment-15940724 ] Ariel Weisberg commented on CASSANDRA-13370: [~jay.zhuang] does this work for you? I don't want to rewrite your patch without running it by you. > 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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15939043#comment-15939043 ] Stefan Podkowinski commented on CASSANDRA-13370: The initial stacktrace from the description shows that NativePRNG tries do write the seed into /dev/urandom. Any values written there will not reset the seed system wide (which would be funny), but simply provide a bit of additional entropy. SHA1RPNG seems to work differently though, but the [javadoc|https://docs.oracle.com/javase/8/docs/api/java/security/SecureRandom.html#setSeed-byte:A-] isn't very clear either what exactly to expect. > 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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15939000#comment-15939000 ] Ariel Weisberg commented on CASSANDRA-13370: Well it's still news to me that NativePRNG does mixing. Thanks for bringing it up. I guess the test author didn't rely on it being deterministic. The right thing to do anyways is to generate a random seed and log it. So you get fuzzing but you can still reproduce a failure. I amended my original commit. > 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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15938952#comment-15938952 ] Stefan Podkowinski commented on CASSANDRA-13370: 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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15938769#comment-15938769 ] Ariel Weisberg commented on CASSANDRA-13370: 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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15938724#comment-15938724 ] Jay Zhuang commented on CASSANDRA-13370: Make sense. Thanks [~spod] Updated the [patch|https://github.com/cooldoger/cassandra/commit/e89ac4407f387dc9607b21d3ef9ece6d4bda4bd8], passed the test locally on MacOS and Linux. > 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 > 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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15938698#comment-15938698 ] Ariel Weisberg commented on CASSANDRA-13370: Oh, I misunderstood. So it's removing the seed that will stop Java from writing to /dev/random. Yes I think that would be a better approach. > 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 > Attachments: 13370-trunk.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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15938462#comment-15938462 ] Ariel Weisberg commented on CASSANDRA-13370: I think we should remove the seed anyways so that subsequent usage of secure random doesn't also fail only on OX X. These tests have been failing for a long time without being fixed. > 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 > Attachments: 13370-trunk.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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15938026#comment-15938026 ] Stefan Podkowinski commented on CASSANDRA-13370: Jay, shouldn't simply removing the seed be enough? Do you still have to remove the egd path to get rid of the error? > 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 > Attachments: 13370-trunk.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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15937193#comment-15937193 ] Jay Zhuang commented on CASSANDRA-13370: [~aweisberg] how about this fix: [718f67d|https://github.com/cooldoger/cassandra/commit/718f67d711c15b0d9dbebce3065064c73efd85e5]? > 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 > Attachments: 13370-trunk.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.(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)
[jira] [Commented] (CASSANDRA-13370) unittest CipherFactoryTest failed on MacOS
[ https://issues.apache.org/jira/browse/CASSANDRA-13370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=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.(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)