You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tez.apache.org by ha...@apache.org on 2017/04/19 15:50:24 UTC
tez git commit: TEZ-3616.
TestMergeManager#testLocalDiskMergeMultipleTasks fails intermittently (Fei
Hui via harishjp)
Repository: tez
Updated Branches:
refs/heads/master f355a050c -> fb0e45bf7
TEZ-3616. TestMergeManager#testLocalDiskMergeMultipleTasks fails intermittently (Fei Hui via harishjp)
Project: http://git-wip-us.apache.org/repos/asf/tez/repo
Commit: http://git-wip-us.apache.org/repos/asf/tez/commit/fb0e45bf
Tree: http://git-wip-us.apache.org/repos/asf/tez/tree/fb0e45bf
Diff: http://git-wip-us.apache.org/repos/asf/tez/diff/fb0e45bf
Branch: refs/heads/master
Commit: fb0e45bf7e1d999aba5f60db2b9898ed65537fe5
Parents: f355a05
Author: Harish JP <ha...@gmail.com>
Authored: Wed Apr 19 21:14:01 2017 +0530
Committer: Harish JP <ha...@gmail.com>
Committed: Wed Apr 19 21:16:27 2017 +0530
----------------------------------------------------------------------
.../orderedgrouped/TestMergeManager.java | 26 ++++++++++++--------
1 file changed, 16 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tez/blob/fb0e45bf/tez-runtime-library/src/test/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/TestMergeManager.java
----------------------------------------------------------------------
diff --git a/tez-runtime-library/src/test/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/TestMergeManager.java b/tez-runtime-library/src/test/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/TestMergeManager.java
index a812728..5737578 100644
--- a/tez-runtime-library/src/test/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/TestMergeManager.java
+++ b/tez-runtime-library/src/test/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/TestMergeManager.java
@@ -770,7 +770,7 @@ public class TestMergeManager {
}
- void testLocalDiskMergeMultipleTasks(boolean interruptInMiddle)
+ void testLocalDiskMergeMultipleTasks(final boolean interruptInMiddle)
throws IOException, InterruptedException {
Configuration conf = new TezConfiguration(defaultConf);
conf.setBoolean(TezRuntimeConfiguration.TEZ_RUNTIME_COMPRESS, false);
@@ -795,7 +795,21 @@ public class TestMergeManager {
MergeManager t0mergeManagerReal =
new MergeManager(conf, localFs, localDirAllocator, t0inputContext, null, null, null, null,
- t0exceptionReporter, 2000000, null, false, -1);
+ t0exceptionReporter, 2000000, null, false, -1) {
+ // override for interruptInMiddle testing
+ @Override
+ public synchronized void closeOnDiskFile(FileChunk file) {
+ if (interruptInMiddle) {
+ try {
+ Thread.sleep(2000);
+ } catch (InterruptedException e) {
+ Thread.currentThread().interrupt();
+ return;
+ }
+ }
+ super.closeOnDiskFile(file);
+ }
+ };
MergeManager t0mergeManager = spy(t0mergeManagerReal);
t0mergeManager.configureAndStart();
@@ -859,14 +873,6 @@ public class TestMergeManager {
Assert.assertEquals(1, t0mergeManager.onDiskMapOutputs.size());
} else {
- doAnswer(new Answer() {
- @Override public Object answer(InvocationOnMock invocationOnMock) throws Throwable {
- //Simulate artificial delay so that interrupting thread can get a chance
- Thread.sleep(2000);
- return invocationOnMock.callRealMethod();
- }
- }).when(t0mergeManager).closeOnDiskFile(any(FileChunk.class));
-
//Start Interrupting thread
Thread interruptingThread = new Thread(new InterruptingThread(t0mergeManager.onDiskMerger));
interruptingThread.start();