You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "John Carrino (JIRA)" <ji...@apache.org> on 2011/04/14 06:36:05 UTC

[jira] [Created] (HADOOP-7226) CLONE - DataNode.setNewStorageID pulls entropy from /dev/random

CLONE - DataNode.setNewStorageID pulls entropy from /dev/random
---------------------------------------------------------------

                 Key: HADOOP-7226
                 URL: https://issues.apache.org/jira/browse/HADOOP-7226
             Project: Hadoop Common
          Issue Type: Bug
          Components: fs
    Affects Versions: 0.17.0
         Environment: linux
            Reporter: John Carrino
            Priority: Minor


DataNode.setNewStorageID uses SecureRandom.getInstance("SHA1PRNG") which always pulls fresh entropy.  

It wouldn't be so bad if this were only the 120 bits needed by sha1, but the default impl of SecureRandom actually uses a BufferedInputStream around /dev/random and pulls 1024 bits of entropy for this one call.

If you are on a system without much entropy coming in, this call can block and block others.

Can we just change this to use "new SecureRandom().nextInt(Integer.MAX_VALUE)" instead?


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Resolved] (HADOOP-7226) CLONE - DataNode.setNewStorageID pulls entropy from /dev/random

Posted by "John Carrino (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-7226?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Carrino resolved HADOOP-7226.
----------------------------------

    Resolution: Duplicate

Sorry, ignore this.  I was trying to clone it to the HDFS project, but it resulted in this duplicate ticket.

> CLONE - DataNode.setNewStorageID pulls entropy from /dev/random
> ---------------------------------------------------------------
>
>                 Key: HADOOP-7226
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7226
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs
>    Affects Versions: 0.17.0
>         Environment: linux
>            Reporter: John Carrino
>            Priority: Minor
>   Original Estimate: 10m
>  Remaining Estimate: 10m
>
> DataNode.setNewStorageID uses SecureRandom.getInstance("SHA1PRNG") which always pulls fresh entropy.  
> It wouldn't be so bad if this were only the 120 bits needed by sha1, but the default impl of SecureRandom actually uses a BufferedInputStream around /dev/random and pulls 1024 bits of entropy for this one call.
> If you are on a system without much entropy coming in, this call can block and block others.
> Can we just change this to use "new SecureRandom().nextInt(Integer.MAX_VALUE)" instead?

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira