You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Patrick Hunt (JIRA)" <ji...@apache.org> on 2014/07/26 01:34:38 UTC
[jira] [Created] (ZOOKEEPER-1990) suspicious instantiation of java
Random instances
Patrick Hunt created ZOOKEEPER-1990:
---------------------------------------
Summary: suspicious instantiation of java Random instances
Key: ZOOKEEPER-1990
URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1990
Project: ZooKeeper
Issue Type: Bug
Affects Versions: 3.5.0
Reporter: Patrick Hunt
Priority: Critical
Fix For: 3.5.0
It's not clear to me why we are doing this, but it looks very suspicious. Why aren't we just calling "new Random()" in these cases?
{noformat}
ag "new Random[ \t]*\(" .
src/java/main/org/apache/zookeeper/ClientCnxn.java
817: private Random r = new Random(System.nanoTime());
src/java/main/org/apache/zookeeper/client/StaticHostProvider.java
75: sourceOfRandomness = new Random(System.currentTimeMillis() ^ this.hashCode());
98: sourceOfRandomness = new Random(randomnessSeed);
src/java/main/org/apache/zookeeper/server/quorum/AuthFastLeaderElection.java
420: rand = new Random(java.lang.Thread.currentThread().getId()
src/java/main/org/apache/zookeeper/server/SyncRequestProcessor.java
64: private final Random r = new Random(System.nanoTime());
src/java/main/org/apache/zookeeper/server/ZooKeeperServer.java
537: Random r = new Random(id ^ superSecret);
554: Random r = new Random(sessionId ^ superSecret);
src/java/test/org/apache/zookeeper/server/quorum/WatchLeakTest.java
271: Random r = new Random(SESSION_ID ^ superSecret);
src/java/test/org/apache/zookeeper/server/quorum/CommitProcessorTest.java
151: Random rand = new Random(Thread.currentThread().getId());
258: Random rand = new Random(Thread.currentThread().getId());
288: Random rand = new Random(Thread.currentThread().getId());
src/java/test/org/apache/zookeeper/test/StaticHostProviderTest.java
40: private Random r = new Random(1);
{noformat}
--
This message was sent by Atlassian JIRA
(v6.2#6252)