|
Merged with trunk
[exec] +1 overall.
[exec] +1 @author. The patch does not contain any @author tags.
[exec] +1 tests included. The patch appears to include 3 new or modified tests.
[exec] +1 javadoc. The javadoc tool did not generate any warning messages.
[exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings.
[exec] +1 findbugs. The patch does not introduce any new Findbugs warnings.
[exec] +1 Eclipse classpath. The patch retains Eclipse classpath integrity.
Looks pretty good.
Thanks for the review.
Because it's not an IFile? You're right, the java.util.zip.Checked*Streams and the current IFile*Streams are very close, but the SpillRecords have different access patterns, average sizes, etc. compared to IFiles and I could think of no particular reason why changes to one should influence the other. If the checksum algorithm for IFiles were to change, it would likely be something like Adler32- faster than CRC32, but insufficient for small input, like SpillRecords. Most of the modifications already discussed for IFile that might go into IFile*Stream- record count, for example- would be awkward adaptations for SpillRecords. Separating the two was one of the motivations for the patch. Did you have a use case in mind or is there another benefit to using the IFile*Streams?
Sure. I'll bounce this if the results are adverse, but I think we can assume that any impact isn't measurable. Attached a patch removing the dead code you identified. The previous test/test-patch results remain valid. Currently, the IFile*Streams do exactly what you want for SpillRecords - namely create/validate a checksum at the end of the file. So, to avoid duplication of code, we could just use them here.
If at a later stage, if we find that the CRC algorithm for IFIle is affecting the performance for SpillRecord or we change these streams when modifying the IFile layout, we could revisit this, no? I am fine with the existing patch but would like to avoid duplication of the code, if we could. I am +1 otherwise. Integrated in Hadoop-trunk #677 (See http://hudson.zones.apache.org/hudson/job/Hadoop-trunk/677/
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
http://issues.apache.org/jira/secure/attachment/12393834/4649-0.patch
against trunk revision 713723.
+1 @author. The patch does not contain any @author tags.
+1 tests included. The patch appears to include 3 new or modified tests.
+1 javadoc. The javadoc tool did not generate any warning messages.
+1 javac. The applied patch does not increase the total number of javac compiler warnings.
+1 findbugs. The patch does not introduce any new Findbugs warnings.
+1 Eclipse classpath. The patch retains Eclipse classpath integrity.
+1 core tests. The patch passed core unit tests.
+1 contrib tests. The patch passed contrib unit tests.
Test results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3585/testReport/



Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3585/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Checkstyle results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3585/artifact/trunk/build/test/checkstyle-errors.html
Console output: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3585/console
This message is automatically generated.