[ https://issues.apache.org/jira/browse/HBASE-15702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15261767#comment-15261767 ]
Heng Chen commented on HBASE-15702: ----------------------------------- Or you just mean we create static final PerClientRandomNonceGenerator in ConnectionImplementation ? > Improve PerClientRandomNonceGenerator > ------------------------------------- > > Key: HBASE-15702 > URL: https://issues.apache.org/jira/browse/HBASE-15702 > Project: HBase > Issue Type: Improvement > Reporter: Hiroshi Ikeda > Priority: Trivial > Fix For: 2.0.0 > > Attachments: HBASE-15702.patch, HBASE-15702_v1.patch, > HBASE-15702_v2.patch > > > PerClientRandomNonceGenerator can be exposed to all the threads via the > static field ConnectionManager.nonceGenerator, but > PerClientRandomNonceGenerator uses Random, which should be ThreadLocalRandom > or something. (See javadoc of Random.) > Moreover, ConnectionManager creates or refers the singleton instance of > PerClientThreadLocalRandom with a lock or volatile, but it should be created > as a static final field in PerClientThreadLocalRandom itself, and the > creation will be postponed until the field is actually refereed and the class > is being initialized. > The same can be said for ConnectionManager.NoNonceGenerator. -- This message was sent by Atlassian JIRA (v6.3.4#6332)