[
https://issues.apache.org/jira/browse/HADOOP-1392?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Raghu Angadi updated HADOOP-1392:
---------------------------------
Attachment: HADOOP-1392-01.patch
Attached patch fixes some of the correctness issues reported. FindBugs is
pretty good. The following are some of the bugs fixed in this patch (findBugs'
explation is after the affected code):
{code:title=NamenodeFsck.java:421}
chosenNode = nodes[Math.abs(r.nextInt()) % nodes.length];
{code} (!) *Bad attempt to compute absolute value of signed 32-bit random
integer* :
This code generates a random signed integer and then computes the absolute
value of that random integer. If the number returned by the random number
generator is Integer.MIN_VALUE, then the result will be negative as well (since
Math.abs(Integer.MIN_VALUE) == Integer.MIN_VALUE).
{code:title=FSImage.java:571}
isUpgradeFinalized &= !sd.getPreviousDir().exists();
{code} (!) *Potentially dangerous use of non-short-circuit logic* :
This code seems to be using non-short-circuit logic (e.g., & or |) rather than
short-circuit logic (&& or ||). In addition, it seem possible that, depending
on the value of the left hand side, you might not want to evaluate the right
hand side (because it would have side effects, could cause an exception or
could be expensive.
Non-short-circuit logic causes both sides of the expression to be evaluated
even when the result can be inferred from knowing the left-hand side. This can
be less efficient and can result in errors if the left-hand side guards cases
when evaluating the right-hand side can generate an error.
See the Java Language Specification for details.
{code:title=FileSystem.java:227}
if (!(this.getUri().getScheme().equals(uri.getScheme()) &&
(thisAuthority == null && thatAuthority == null)
|| thisAuthority.equals(thatAuthority)))
throw new IllegalArgumentException("Wrong FS: "+path+
", expected: "+this.getUri());
{code} (!) *Possible null pointer dereference* :
A reference value dereferenced here might be null at runtime. This may lead to
a NullPointerException when the code is executed.
> FindBugs : Fix some correctness bugs reported in DFS, FS, etc.
> --------------------------------------------------------------
>
> Key: HADOOP-1392
> URL: https://issues.apache.org/jira/browse/HADOOP-1392
> Project: Hadoop
> Issue Type: Bug
> Affects Versions: 0.12.3
> Reporter: Raghu Angadi
> Assigned To: Raghu Angadi
> Fix For: 0.14.0
>
> Attachments: HADOOP-1392-01.patch
>
>
> Fix some correctness bugs reported by FindBugs in DFS, FS, IO, NET, etc
> packages.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.