[jira] Commented: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12930003#action_12930003 ] Scott Chen commented on MAPREDUCE-2179: --- Nigel: Should we fix the OOM issue in another patch? > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Fix For: 0.22.0 > > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12930001#action_12930001 ] Scott Chen commented on MAPREDUCE-2179: --- Nigel: Sorry. I missed your comments. > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Fix For: 0.22.0 > > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Updated: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Scott Chen updated MAPREDUCE-2179: -- Resolution: Fixed Fix Version/s: 0.22.0 Hadoop Flags: [Reviewed] Status: Resolved (was: Patch Available) I just committed this. Thanks Ram. > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Fix For: 0.22.0 > > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=1292#action_1292 ] Nigel Daley commented on MAPREDUCE-2179: FWIW, I got OOM errors running the tests. Adding this fixed it: {code} === --- src/contrib/raid/build.xml (revision 1032497) +++ src/contrib/raid/build.xml (working copy) @@ -35,7 +35,7 @@ + haltonfailure="no" failureProperty="tests.failed" maxmemory="1024m" > {code} > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2127) mapreduce trunk builds are filing on hudson ..
[ https://issues.apache.org/jira/browse/MAPREDUCE-2127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929998#action_12929998 ] Giridharan Kesavan commented on MAPREDUCE-2127: --- Just by installing the missing package (libssl-dev) pipes is getting compiled without any issues on the ubuntu build servers and I never have to apply this patch. > mapreduce trunk builds are filing on hudson .. > --- > > Key: MAPREDUCE-2127 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2127 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: build, pipes >Reporter: Giridharan Kesavan > Attachments: MAPREDUCE-2127.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk-Commit/507/console > [exec] checking for pthread.h... yes > [exec] checking for pthread_create in -lpthread... yes > [exec] checking for HMAC_Init in -lssl... no > [exec] configure: error: Cannot find libssl.so > [exec] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk-Commit/trunk/src/c++/pipes/configure: > line 4250: exit: please: numeric argument required > [exec] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk-Commit/trunk/src/c++/pipes/configure: > line 4250: exit: please: numeric argument required > BUILD FAILED > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk-Commit/trunk/build.xml:1647: > exec returned: 255 -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929995#action_12929995 ] Ramkumar Vadali commented on MAPREDUCE-2179: ant test-patch will not run since trunk compilation is broken. I have run raid unit-tests: {code} test-junit: [junit] WARNING: multiple versions of ant detected in path for junit [junit] jar:file:/home/rvadali/local/external/ant/lib/ant.jar!/org/apache/tools/ant/Project.class [junit] and jar:file:/home/rvadali/.ivy2/cache/ant/ant/jars/ant-1.6.5.jar!/org/apache/tools/ant/Project.class [junit] Running org.apache.hadoop.hdfs.TestRaidDfs [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 41.64 sec [junit] Running org.apache.hadoop.raid.TestBlockFixer [junit] Tests run: 5, Failures: 0, Errors: 0, Time elapsed: 139.487 sec [junit] Running org.apache.hadoop.raid.TestDirectoryTraversal [junit] Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 9.169 sec [junit] Running org.apache.hadoop.raid.TestErasureCodes [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 26.334 sec [junit] Running org.apache.hadoop.raid.TestGaloisField [junit] Tests run: 7, Failures: 0, Errors: 0, Time elapsed: 0.399 sec [junit] Running org.apache.hadoop.raid.TestHarIndexParser [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.051 sec [junit] Running org.apache.hadoop.raid.TestRaidFilter [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 4.473 sec [junit] Running org.apache.hadoop.raid.TestRaidHar [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 70.16 sec [junit] Running org.apache.hadoop.raid.TestRaidNode [junit] Tests run: 4, Failures: 0, Errors: 0, Time elapsed: 406.19 sec [junit] Running org.apache.hadoop.raid.TestRaidPurge [junit] Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 107.977 sec [junit] Running org.apache.hadoop.raid.TestRaidShell [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 26.168 sec test: BUILD SUCCESSFUL Total time: 14 minutes 12 seconds {code} > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929992#action_12929992 ] Scott Chen commented on MAPREDUCE-2179: --- +1 The patch looks good to me. Ram: Can you post the test results here? > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929990#action_12929990 ] Scott Chen commented on MAPREDUCE-2179: --- Right now raid can be broken by HDFS because it is not using the public API of HDFS. We need to have HDFS-1461 and refactor RaidBlockSender to get rid of this dependency. > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Updated: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ramkumar Vadali updated MAPREDUCE-2179: --- Attachment: MAPREDUCE-2179.patch r1032836 (HDFS-1457) removed the class BlockTransferThrottler. The RAID code does not need that functionality, so this patch just removes the dependence on BlockTransferThrottler. > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Updated: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ramkumar Vadali updated MAPREDUCE-2179: --- Status: Patch Available (was: Open) > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > Attachments: MAPREDUCE-2179.patch > > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Assigned: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ramkumar Vadali reassigned MAPREDUCE-2179: -- Assignee: Ramkumar Vadali > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Assignee: Ramkumar Vadali >Priority: Blocker > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
[ https://issues.apache.org/jira/browse/MAPREDUCE-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929980#action_12929980 ] Nigel Daley commented on MAPREDUCE-2179: Looks like HDFS-1457 removed BlockTransferThrottler.java: http://svn.apache.org/viewvc?view=revision&revision=1032836 > RaidBlockSender.java compilation fails > -- > > Key: MAPREDUCE-2179 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: contrib/raid >Affects Versions: 0.22.0 >Reporter: Giridharan Kesavan >Priority: Blocker > > https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull > Mapreduce trunk compilation is broken with > compile: > [echo] contrib: raid > [javac] Compiling 27 source files to > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] private BlockTransferThrottler throttler; > [javac] ^ > [javac] > /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: > cannot find symbol > [javac] symbol : class BlockTransferThrottler > [javac] location: class > org.apache.hadoop.hdfs.server.datanode.RaidBlockSender > [javac] BlockTransferThrottler throttler) throws > IOException { > [javac] ^ > [javac] Note: Some input files use or override a deprecated API. > [javac] Note: Recompile with -Xlint:deprecation for details. > [javac] Note: Some input files use unchecked or unsafe operations. > [javac] Note: Recompile with -Xlint:unchecked for details. > [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Updated: (MAPREDUCE-1592) Generate Eclipse's .classpath file from Ivy config
[ https://issues.apache.org/jira/browse/MAPREDUCE-1592?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Nigel Daley updated MAPREDUCE-1592: --- Resolution: Fixed Fix Version/s: 0.22.0 Release Note: Added support to auto-generate the Eclipse .classpath file from ivy. Status: Resolved (was: Patch Available) I just committed this. Thanks Tom. (sorry, got the contributor name wrong in my commit msg) > Generate Eclipse's .classpath file from Ivy config > -- > > Key: MAPREDUCE-1592 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-1592 > Project: Hadoop Map/Reduce > Issue Type: Improvement > Components: build >Reporter: Tom White >Assignee: Tom White > Fix For: 0.22.0 > > Attachments: MAPREDUCE-1592.patch, MAPREDUCE-1592.patch, > MAPREDUCE-1592.patch, MAPREDUCE-1592.patch > > > MapReduce companion issue for HADOOP-6407. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Created: (MAPREDUCE-2179) RaidBlockSender.java compilation fails
RaidBlockSender.java compilation fails -- Key: MAPREDUCE-2179 URL: https://issues.apache.org/jira/browse/MAPREDUCE-2179 Project: Hadoop Map/Reduce Issue Type: Bug Components: contrib/raid Affects Versions: 0.22.0 Reporter: Giridharan Kesavan Priority: Blocker https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk/490/consoleFull Mapreduce trunk compilation is broken with compile: [echo] contrib: raid [javac] Compiling 27 source files to /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/build/contrib/raid/classes [javac] /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:71: cannot find symbol [javac] symbol : class BlockTransferThrottler [javac] location: class org.apache.hadoop.hdfs.server.datanode.RaidBlockSender [javac] private BlockTransferThrottler throttler; [javac] ^ [javac] /grid/0/hudson/hudson-slave/workspace/Hadoop-Mapreduce-trunk/trunk/src/contrib/raid/src/java/org/apache/hadoop/hdfs/server/datanode/RaidBlockSender.java:377: cannot find symbol [javac] symbol : class BlockTransferThrottler [javac] location: class org.apache.hadoop.hdfs.server.datanode.RaidBlockSender [javac] BlockTransferThrottler throttler) throws IOException { [javac] ^ [javac] Note: Some input files use or override a deprecated API. [javac] Note: Recompile with -Xlint:deprecation for details. [javac] Note: Some input files use unchecked or unsafe operations. [javac] Note: Recompile with -Xlint:unchecked for details. [javac] 2 errors -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-1592) Generate Eclipse's .classpath file from Ivy config
[ https://issues.apache.org/jira/browse/MAPREDUCE-1592?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929964#action_12929964 ] Tom White commented on MAPREDUCE-1592: -- +1 works for me > Generate Eclipse's .classpath file from Ivy config > -- > > Key: MAPREDUCE-1592 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-1592 > Project: Hadoop Map/Reduce > Issue Type: Improvement > Components: build >Reporter: Tom White >Assignee: Tom White > Attachments: MAPREDUCE-1592.patch, MAPREDUCE-1592.patch, > MAPREDUCE-1592.patch, MAPREDUCE-1592.patch > > > MapReduce companion issue for HADOOP-6407. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2169) Integrated Reed-Solomon code with RaidNode
[ https://issues.apache.org/jira/browse/MAPREDUCE-2169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929921#action_12929921 ] Scott Chen commented on MAPREDUCE-2169: --- Thanks Ram. I have some comments. {code} + public static String xorTempPrefix(Configuration conf) { {code} Can you rename it to unraidTmpDirectory() {code} -// generate parity file -generateParityFile(conf, stat, reporter, srcFs, destPath, locations, metaRepl, stripeLength); - // reduce the replication factor of the source file if (!doSimulate) { if (srcFs.setReplication(p, (short)targetRepl) == false) { {code} generateParityFile should be done before setReplication {code} + if (code == ErasureCodeType.XOR) { +ParityFilePair ppair = getParityFile( + getDestinationPath(ErasureCodeType.RS, conf), srcPath, conf); +if (ppair != null) { + shouldDelete = true; +} + } + if (!shouldDelete) { +Path dstPath = (new Path(destPrefix.trim())).makeQualified(destFs); +ParityFilePair ppair = getParityFile(dstPath,srcPath); +if ( ppair == null || + !destFs.equals(ppair.getFileSystem()) || + !destPath.equals(ppair.getPath())) { + shouldDelete = true; +} + } {code} Can you add some comments explaining the purge policy? {code} - public void testReadFully() throws Exception { - public void testAccessTime() throws Exception { {code} Can you put back these tests? I think you delete them accidentally. > Integrated Reed-Solomon code with RaidNode > -- > > Key: MAPREDUCE-2169 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2169 > Project: Hadoop Map/Reduce > Issue Type: Task > Components: contrib/raid >Reporter: Ramkumar Vadali >Assignee: Ramkumar Vadali > Attachments: MAPREDUCE-2169.patch > > > Scott Chen recently checked in an implementation of the Reed Solomon code. > This task will track the integration of the code with RaidNode. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Created: (MAPREDUCE-2178) Race condition in LinuxTaskController permissions handling
Race condition in LinuxTaskController permissions handling -- Key: MAPREDUCE-2178 URL: https://issues.apache.org/jira/browse/MAPREDUCE-2178 Project: Hadoop Map/Reduce Issue Type: Bug Components: security, task-controller Affects Versions: 0.22.0 Reporter: Todd Lipcon Priority: Blocker The linux-task-controller executable currently traverses a directory heirarchy and calls chown/chmod on the files inside. There is a race condition here which can be exploited by an attacker, causing the task-controller to improprly chown an arbitrary target file (via a symlink) to the user running a MR job. This can be exploited to escalate to root. [this issue was raised and discussed on the security@ list over the last couple of months] -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2096) Secure local filesystem IO from symlink vulnerabilities
[ https://issues.apache.org/jira/browse/MAPREDUCE-2096?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929892#action_12929892 ] Todd Lipcon commented on MAPREDUCE-2096: Does anyone have a suggestion on how to get common's native library build onto mapreduce's library path post-split? It seems we should be publishing a tarball of common/build/native into maven, and then retrieving it with ivy from mapreduce, perhaps? Does anyone have a better idea or should I open a JIRA to publish the native build as an artifact? > Secure local filesystem IO from symlink vulnerabilities > --- > > Key: MAPREDUCE-2096 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2096 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: jobtracker, security, tasktracker >Affects Versions: 0.22.0 >Reporter: Todd Lipcon >Assignee: Todd Lipcon >Priority: Blocker > Attachments: mapreduce-2096-index-oob.txt, secure-files-9.txt, > secure-files-authorized-jvm-fix.txt > > > This JIRA is to contribute a patch developed on the private security@ mailing > list. > The vulnerability is that MR daemons occasionally open files that are located > in a path where the user has write access. A malicious user may place a > symlink in place of the expected file in order to cause the daemon to instead > read another file on the system -- one which the attacker may not naturally > be able to access. This includes delegation tokens belong to other users, log > files, keytabs, etc. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2096) Secure local filesystem IO from symlink vulnerabilities
[ https://issues.apache.org/jira/browse/MAPREDUCE-2096?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929884#action_12929884 ] Todd Lipcon commented on MAPREDUCE-2096: Thanks for reminding me to upload the trunk work. I put a patch up on HADOOP-6978 which blocks this. Working on the MR trunk patch as well while that one gets reviewed/committed. > Secure local filesystem IO from symlink vulnerabilities > --- > > Key: MAPREDUCE-2096 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2096 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: jobtracker, security, tasktracker >Affects Versions: 0.22.0 >Reporter: Todd Lipcon >Assignee: Todd Lipcon >Priority: Blocker > Attachments: mapreduce-2096-index-oob.txt, secure-files-9.txt, > secure-files-authorized-jvm-fix.txt > > > This JIRA is to contribute a patch developed on the private security@ mailing > list. > The vulnerability is that MR daemons occasionally open files that are located > in a path where the user has write access. A malicious user may place a > symlink in place of the expected file in order to cause the daemon to instead > read another file on the system -- one which the attacker may not naturally > be able to access. This includes delegation tokens belong to other users, log > files, keytabs, etc. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2177) The wait for spill completion should call Condition.awaitNanos(long nanosTimeout)
[ https://issues.apache.org/jira/browse/MAPREDUCE-2177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929861#action_12929861 ] Ted Yu commented on MAPREDUCE-2177: --- When this issue appears again, I will collect more details. > The wait for spill completion should call Condition.awaitNanos(long > nanosTimeout) > - > > Key: MAPREDUCE-2177 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2177 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: tasktracker >Affects Versions: 0.20.2 >Reporter: Ted Yu > > We sometimes saw maptask timeout in cdh3b2. Here is log from one of the > maptasks: > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 119534169; bufend = 59763857; bufvoid = 298844160 > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 438913; kvend = 585320; length = 983040 > 2010-11-04 10:34:41,615 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 3 > 2010-11-04 10:35:45,352 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 59763857; bufend = 298837899; bufvoid = 298844160 > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 585320; kvend = 731585; length = 983040 > 2010-11-04 10:45:41,289 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 4 > Note how long the last spill took. > In MapTask.java, the following code waits for spill to finish: > while (kvstart != kvend) { reporter.progress(); spillDone.await(); } > In trunk code, code is similar. > There is no timeout mechanism for Condition.await(). In case the SpillThread > takes long before calling spillDone.signal(), we would see timeout. > Condition.awaitNanos(long nanosTimeout) should be called. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2096) Secure local filesystem IO from symlink vulnerabilities
[ https://issues.apache.org/jira/browse/MAPREDUCE-2096?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929844#action_12929844 ] Owen O'Malley commented on MAPREDUCE-2096: -- How is the trunk patch going for this one? > Secure local filesystem IO from symlink vulnerabilities > --- > > Key: MAPREDUCE-2096 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2096 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: jobtracker, security, tasktracker >Affects Versions: 0.22.0 >Reporter: Todd Lipcon >Assignee: Todd Lipcon >Priority: Blocker > Attachments: mapreduce-2096-index-oob.txt, secure-files-9.txt, > secure-files-authorized-jvm-fix.txt > > > This JIRA is to contribute a patch developed on the private security@ mailing > list. > The vulnerability is that MR daemons occasionally open files that are located > in a path where the user has write access. A malicious user may place a > symlink in place of the expected file in order to cause the daemon to instead > read another file on the system -- one which the attacker may not naturally > be able to access. This includes delegation tokens belong to other users, log > files, keytabs, etc. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2167) Faster directory traversal for raid node
[ https://issues.apache.org/jira/browse/MAPREDUCE-2167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929797#action_12929797 ] Scott Chen commented on MAPREDUCE-2167: --- Thanks Ram. I will commit it once hudson returns 0. > Faster directory traversal for raid node > > > Key: MAPREDUCE-2167 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2167 > Project: Hadoop Map/Reduce > Issue Type: Improvement > Components: contrib/raid >Reporter: Ramkumar Vadali >Assignee: Ramkumar Vadali > Attachments: MAPREDUCE-2167.2.patch, MAPREDUCE-2167.3.patch, > MAPREDUCE-2167.patch > > > The RaidNode currently iterates over the directory structure to figure out > which files to RAID. With millions of files, this can take a long time - > especially if some files are already RAIDed and the RaidNode needs to look at > parity files / parity file HARs to determine if the file needs to be RAIDed. > The directory traversal is encapsulated inside the class DirectoryTraversal, > which examines one file at a time, using the caller's thread. > My proposal is to make this multi-threaded as follows: > * use a pool of threads inside DirectoryTraversal > * The caller's thread is used to retrieve directories, and each new > directory is assigned to a thread in the pool. The worker thread examines all > the files the directory. > * If there sub-directories, those are added back as workitems to the pool. > Comments? -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Updated: (MAPREDUCE-2167) Faster directory traversal for raid node
[ https://issues.apache.org/jira/browse/MAPREDUCE-2167?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ramkumar Vadali updated MAPREDUCE-2167: --- Attachment: MAPREDUCE-2167.3.patch Added a comment explaining the use of the slots semaphore. > Faster directory traversal for raid node > > > Key: MAPREDUCE-2167 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2167 > Project: Hadoop Map/Reduce > Issue Type: Improvement > Components: contrib/raid >Reporter: Ramkumar Vadali >Assignee: Ramkumar Vadali > Attachments: MAPREDUCE-2167.2.patch, MAPREDUCE-2167.3.patch, > MAPREDUCE-2167.patch > > > The RaidNode currently iterates over the directory structure to figure out > which files to RAID. With millions of files, this can take a long time - > especially if some files are already RAIDed and the RaidNode needs to look at > parity files / parity file HARs to determine if the file needs to be RAIDed. > The directory traversal is encapsulated inside the class DirectoryTraversal, > which examines one file at a time, using the caller's thread. > My proposal is to make this multi-threaded as follows: > * use a pool of threads inside DirectoryTraversal > * The caller's thread is used to retrieve directories, and each new > directory is assigned to a thread in the pool. The worker thread examines all > the files the directory. > * If there sub-directories, those are added back as workitems to the pool. > Comments? -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2177) The wait for spill completion should call Condition.awaitNanos(long nanosTimeout)
[ https://issues.apache.org/jira/browse/MAPREDUCE-2177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929747#action_12929747 ] Chris Douglas commented on MAPREDUCE-2177: -- The progress reporting during the merge is not on every record emitted. For jobs with combiners that emit far fewer records than they consume, it's possible that the framework fails to report progress, though (1) IIRC it reports at least once for every partition and (2) that wouldn't explain why the job is taking so much longer for a particular spill. Adding some reporting in the reader could make sense, but we could use more information. Adding progress reporting only to prevent the job from being killed may be the wrong fix. bq. But since we don't know how long each call to writer.append() / combinerRunner.combine() would take, there is no guarantee that we can prevent this issue from happening. If the task is stuck, then it should be killed. I agree that the timeout mechanism's granularity is too coarse to measure all progress, but the overhead of measuring every event is too high to be the default. bq. Reporting progress from a thread that isn't blocked by long write to disk or combiner call is one option. We can put some limit on the total amount of time spillDone.awaitNanos() calls take in the following loop: Again, _that_ thread isn't making progress. It shouldn't prevent the task from getting killed if the merge is truly stuck. Ted, please provide some details on the job you're running (w/ combiner? do reexecutions succeed? does this happen on particular machines? do other tasks complete normally while another is in this state?). > The wait for spill completion should call Condition.awaitNanos(long > nanosTimeout) > - > > Key: MAPREDUCE-2177 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2177 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: tasktracker >Affects Versions: 0.20.2 >Reporter: Ted Yu > > We sometimes saw maptask timeout in cdh3b2. Here is log from one of the > maptasks: > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 119534169; bufend = 59763857; bufvoid = 298844160 > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 438913; kvend = 585320; length = 983040 > 2010-11-04 10:34:41,615 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 3 > 2010-11-04 10:35:45,352 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 59763857; bufend = 298837899; bufvoid = 298844160 > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 585320; kvend = 731585; length = 983040 > 2010-11-04 10:45:41,289 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 4 > Note how long the last spill took. > In MapTask.java, the following code waits for spill to finish: > while (kvstart != kvend) { reporter.progress(); spillDone.await(); } > In trunk code, code is similar. > There is no timeout mechanism for Condition.await(). In case the SpillThread > takes long before calling spillDone.signal(), we would see timeout. > Condition.awaitNanos(long nanosTimeout) should be called. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2167) Faster directory traversal for raid node
[ https://issues.apache.org/jira/browse/MAPREDUCE-2167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929720#action_12929720 ] Scott Chen commented on MAPREDUCE-2167: --- +1 Looks good to me. Just one more thing, can you add some comments explaining the motivation of using the semaphore? It is confusing when you are using both the thread pool and semaphore. > Faster directory traversal for raid node > > > Key: MAPREDUCE-2167 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2167 > Project: Hadoop Map/Reduce > Issue Type: Improvement > Components: contrib/raid >Reporter: Ramkumar Vadali >Assignee: Ramkumar Vadali > Attachments: MAPREDUCE-2167.2.patch, MAPREDUCE-2167.patch > > > The RaidNode currently iterates over the directory structure to figure out > which files to RAID. With millions of files, this can take a long time - > especially if some files are already RAIDed and the RaidNode needs to look at > parity files / parity file HARs to determine if the file needs to be RAIDed. > The directory traversal is encapsulated inside the class DirectoryTraversal, > which examines one file at a time, using the caller's thread. > My proposal is to make this multi-threaded as follows: > * use a pool of threads inside DirectoryTraversal > * The caller's thread is used to retrieve directories, and each new > directory is assigned to a thread in the pool. The worker thread examines all > the files the directory. > * If there sub-directories, those are added back as workitems to the pool. > Comments? -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2177) The wait for spill completion should call Condition.awaitNanos(long nanosTimeout)
[ https://issues.apache.org/jira/browse/MAPREDUCE-2177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929648#action_12929648 ] Ted Yu commented on MAPREDUCE-2177: --- The occurrence in our cluster may have something to do with the fact that we run HBase region server alongside task tracker. Reporting progress from a thread that isn't blocked by long write to disk or combiner call is one option. We can put some limit on the total amount of time spillDone.awaitNanos() calls take in the following loop: while (kvstart != kvend) { reporter.progress(); spillDone.awaitNanos(); } > The wait for spill completion should call Condition.awaitNanos(long > nanosTimeout) > - > > Key: MAPREDUCE-2177 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2177 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: tasktracker >Affects Versions: 0.20.2 >Reporter: Ted Yu > > We sometimes saw maptask timeout in cdh3b2. Here is log from one of the > maptasks: > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 119534169; bufend = 59763857; bufvoid = 298844160 > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 438913; kvend = 585320; length = 983040 > 2010-11-04 10:34:41,615 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 3 > 2010-11-04 10:35:45,352 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 59763857; bufend = 298837899; bufvoid = 298844160 > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 585320; kvend = 731585; length = 983040 > 2010-11-04 10:45:41,289 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 4 > Note how long the last spill took. > In MapTask.java, the following code waits for spill to finish: > while (kvstart != kvend) { reporter.progress(); spillDone.await(); } > In trunk code, code is similar. > There is no timeout mechanism for Condition.await(). In case the SpillThread > takes long before calling spillDone.signal(), we would see timeout. > Condition.awaitNanos(long nanosTimeout) should be called. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2177) The wait for spill completion should call Condition.awaitNanos(long nanosTimeout)
[ https://issues.apache.org/jira/browse/MAPREDUCE-2177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929638#action_12929638 ] Ted Yu commented on MAPREDUCE-2177: --- I didn't capture stack trace of MapTask when this happened - will do next time. We can add call to reporter.progress() in sortAndSpill() But since we don't know how long each call to writer.append() / combinerRunner.combine() would take, there is no guarantee that we can prevent this issue from happening. > The wait for spill completion should call Condition.awaitNanos(long > nanosTimeout) > - > > Key: MAPREDUCE-2177 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2177 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: tasktracker >Affects Versions: 0.20.2 >Reporter: Ted Yu > > We sometimes saw maptask timeout in cdh3b2. Here is log from one of the > maptasks: > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 119534169; bufend = 59763857; bufvoid = 298844160 > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 438913; kvend = 585320; length = 983040 > 2010-11-04 10:34:41,615 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 3 > 2010-11-04 10:35:45,352 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 59763857; bufend = 298837899; bufvoid = 298844160 > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 585320; kvend = 731585; length = 983040 > 2010-11-04 10:45:41,289 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 4 > Note how long the last spill took. > In MapTask.java, the following code waits for spill to finish: > while (kvstart != kvend) { reporter.progress(); spillDone.await(); } > In trunk code, code is similar. > There is no timeout mechanism for Condition.await(). In case the SpillThread > takes long before calling spillDone.signal(), we would see timeout. > Condition.awaitNanos(long nanosTimeout) should be called. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2177) The wait for spill completion should call Condition.awaitNanos(long nanosTimeout)
[ https://issues.apache.org/jira/browse/MAPREDUCE-2177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929619#action_12929619 ] Arun C Murthy commented on MAPREDUCE-2177: -- bq. calling progress() during the merge- at least ensures that the task is doing work; reporting progress from a thread that isn't actually proceeding is broken. Isn't progress already reported during the merge? Can you provide more detail on the environment where you're observing this? Chris, we've seen this at Y! too, this might just be a bug in progress reporting during the merge. > The wait for spill completion should call Condition.awaitNanos(long > nanosTimeout) > - > > Key: MAPREDUCE-2177 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2177 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: tasktracker >Affects Versions: 0.20.2 >Reporter: Ted Yu > > We sometimes saw maptask timeout in cdh3b2. Here is log from one of the > maptasks: > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 119534169; bufend = 59763857; bufvoid = 298844160 > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 438913; kvend = 585320; length = 983040 > 2010-11-04 10:34:41,615 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 3 > 2010-11-04 10:35:45,352 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 59763857; bufend = 298837899; bufvoid = 298844160 > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 585320; kvend = 731585; length = 983040 > 2010-11-04 10:45:41,289 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 4 > Note how long the last spill took. > In MapTask.java, the following code waits for spill to finish: > while (kvstart != kvend) { reporter.progress(); spillDone.await(); } > In trunk code, code is similar. > There is no timeout mechanism for Condition.await(). In case the SpillThread > takes long before calling spillDone.signal(), we would see timeout. > Condition.awaitNanos(long nanosTimeout) should be called. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2142) Refactor RaidNode to remove dependence on map reduce
[ https://issues.apache.org/jira/browse/MAPREDUCE-2142?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929523#action_12929523 ] Hudson commented on MAPREDUCE-2142: --- Integrated in Hadoop-Mapreduce-trunk-Commit #531 (See [https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk-Commit/531/]) MAPREDUCE-2142. Refactor RaidNode so that the map-reduce component is clearly separated out. (Patrick Kling via dhruba) > Refactor RaidNode to remove dependence on map reduce > > > Key: MAPREDUCE-2142 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2142 > Project: Hadoop Map/Reduce > Issue Type: Task >Reporter: Patrick Kling >Assignee: Patrick Kling > Fix For: 0.22.0 > > Attachments: MAPREDUCE-2142.2.patch, MAPREDUCE-2142.3.patch, > MAPREDUCE-2142.patch > > > I am refactoring the RaidNode code as follows: The base class RaidNode will > contain the common functionality needed for raiding files. The derived class > LocalRaidNode contains an implementation of RaidNode that performs raiding > locally. The derived class DistRaidNode performs raiding using map reduce > jobs. This way, only DistRaidNode has a dependency on map reduce code and > RaidNode and LocalRaidNode can be moved to HDFS. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2173) Race condition in TestBlockFixer causes intermittent failure
[ https://issues.apache.org/jira/browse/MAPREDUCE-2173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929513#action_12929513 ] Hudson commented on MAPREDUCE-2173: --- Integrated in Hadoop-Mapreduce-trunk-Commit #530 (See [https://hudson.apache.org/hudson/job/Hadoop-Mapreduce-trunk-Commit/530/]) MAPREDUCE-2173. Fix race condition in TestBlockFixer that was causing intermittent failure (Ramkumar Vadali via dhruba) > Race condition in TestBlockFixer causes intermittent failure > > > Key: MAPREDUCE-2173 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2173 > Project: Hadoop Map/Reduce > Issue Type: Bug >Reporter: Patrick Kling >Assignee: Patrick Kling > Fix For: 0.22.0 > > Attachments: MAPREDUCE-2173.patch > > > TestBlockFixer sometimes fails in reportCorruptBlocks because a corrupt block > is deleted before in.readFully is called. This causes a BlockMissingException > instead of the expected ChecksumException. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2177) The wait for spill completion should call Condition.awaitNanos(long nanosTimeout)
[ https://issues.apache.org/jira/browse/MAPREDUCE-2177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929512#action_12929512 ] Chris Douglas commented on MAPREDUCE-2177: -- {quote}SpillThread doesn't currently have reference to TaskReporter. It is easier to use short timeout for spillDone.awaitNanos() so that Buffer.write() can call progress().{quote} That prevents the task from being killed, but its semantics are incorrect. Todd's suggestion- calling progress() during the merge- at least ensures that the task is doing work; reporting progress from a thread that isn't actually proceeding is broken. Isn't progress already reported during the merge? Can you provide more detail on the environment where you're observing this? > The wait for spill completion should call Condition.awaitNanos(long > nanosTimeout) > - > > Key: MAPREDUCE-2177 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2177 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: tasktracker >Affects Versions: 0.20.2 >Reporter: Ted Yu > > We sometimes saw maptask timeout in cdh3b2. Here is log from one of the > maptasks: > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 119534169; bufend = 59763857; bufvoid = 298844160 > 2010-11-04 10:34:23,820 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 438913; kvend = 585320; length = 983040 > 2010-11-04 10:34:41,615 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 3 > 2010-11-04 10:35:45,352 INFO org.apache.hadoop.mapred.MapTask: Spilling map > output: buffer full= true > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: bufstart = > 59763857; bufend = 298837899; bufvoid = 298844160 > 2010-11-04 10:35:45,547 INFO org.apache.hadoop.mapred.MapTask: kvstart = > 585320; kvend = 731585; length = 983040 > 2010-11-04 10:45:41,289 INFO org.apache.hadoop.mapred.MapTask: Finished spill > 4 > Note how long the last spill took. > In MapTask.java, the following code waits for spill to finish: > while (kvstart != kvend) { reporter.progress(); spillDone.await(); } > In trunk code, code is similar. > There is no timeout mechanism for Condition.await(). In case the SpillThread > takes long before calling spillDone.signal(), we would see timeout. > Condition.awaitNanos(long nanosTimeout) should be called. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Assigned: (MAPREDUCE-2142) Refactor RaidNode to remove dependence on map reduce
[ https://issues.apache.org/jira/browse/MAPREDUCE-2142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] dhruba borthakur reassigned MAPREDUCE-2142: --- Assignee: Patrick Kling > Refactor RaidNode to remove dependence on map reduce > > > Key: MAPREDUCE-2142 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2142 > Project: Hadoop Map/Reduce > Issue Type: Task >Reporter: Patrick Kling >Assignee: Patrick Kling > Fix For: 0.22.0 > > Attachments: MAPREDUCE-2142.2.patch, MAPREDUCE-2142.3.patch, > MAPREDUCE-2142.patch > > > I am refactoring the RaidNode code as follows: The base class RaidNode will > contain the common functionality needed for raiding files. The derived class > LocalRaidNode contains an implementation of RaidNode that performs raiding > locally. The derived class DistRaidNode performs raiding using map reduce > jobs. This way, only DistRaidNode has a dependency on map reduce code and > RaidNode and LocalRaidNode can be moved to HDFS. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Resolved: (MAPREDUCE-2142) Refactor RaidNode to remove dependence on map reduce
[ https://issues.apache.org/jira/browse/MAPREDUCE-2142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] dhruba borthakur resolved MAPREDUCE-2142. - Resolution: Fixed Fix Version/s: 0.22.0 Hadoop Flags: [Reviewed] I just committed it. Thanks Patrick. Please update the wiki too. > Refactor RaidNode to remove dependence on map reduce > > > Key: MAPREDUCE-2142 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2142 > Project: Hadoop Map/Reduce > Issue Type: Task >Reporter: Patrick Kling > Fix For: 0.22.0 > > Attachments: MAPREDUCE-2142.2.patch, MAPREDUCE-2142.3.patch, > MAPREDUCE-2142.patch > > > I am refactoring the RaidNode code as follows: The base class RaidNode will > contain the common functionality needed for raiding files. The derived class > LocalRaidNode contains an implementation of RaidNode that performs raiding > locally. The derived class DistRaidNode performs raiding using map reduce > jobs. This way, only DistRaidNode has a dependency on map reduce code and > RaidNode and LocalRaidNode can be moved to HDFS. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Resolved: (MAPREDUCE-2173) Race condition in TestBlockFixer causes intermittent failure
[ https://issues.apache.org/jira/browse/MAPREDUCE-2173?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] dhruba borthakur resolved MAPREDUCE-2173. - Resolution: Fixed Fix Version/s: 0.22.0 Assignee: Patrick Kling Hadoop Flags: [Reviewed] I just committed this. Thanks Patrick! > Race condition in TestBlockFixer causes intermittent failure > > > Key: MAPREDUCE-2173 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2173 > Project: Hadoop Map/Reduce > Issue Type: Bug >Reporter: Patrick Kling >Assignee: Patrick Kling > Fix For: 0.22.0 > > Attachments: MAPREDUCE-2173.patch > > > TestBlockFixer sometimes fails in reportCorruptBlocks because a corrupt block > is deleted before in.readFully is called. This causes a BlockMissingException > instead of the expected ChecksumException. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (MAPREDUCE-2173) Race condition in TestBlockFixer causes intermittent failure
[ https://issues.apache.org/jira/browse/MAPREDUCE-2173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929501#action_12929501 ] dhruba borthakur commented on MAPREDUCE-2173: - +1 > Race condition in TestBlockFixer causes intermittent failure > > > Key: MAPREDUCE-2173 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2173 > Project: Hadoop Map/Reduce > Issue Type: Bug >Reporter: Patrick Kling > Attachments: MAPREDUCE-2173.patch > > > TestBlockFixer sometimes fails in reportCorruptBlocks because a corrupt block > is deleted before in.readFully is called. This causes a BlockMissingException > instead of the expected ChecksumException. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.