# ignite-773: hadoop

Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/803881d5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/803881d5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/803881d5

Branch: refs/heads/ignite-774
Commit: 803881d5d6cab1bc4f74be47e2076798a18a6e1b
Parents: 0568d52
Author: Artem Shutak <[email protected]>
Authored: Tue Apr 21 18:56:58 2015 +0300
Committer: Artem Shutak <[email protected]>
Committed: Tue Apr 21 18:56:58 2015 +0300

----------------------------------------------------------------------
 .../internal/processors/hadoop/HadoopDefaultJobInfo.java |  3 +++
 .../internal/processors/hadoop/igfs/HadoopIgfsIpcIo.java |  3 +++
 .../processors/hadoop/jobtracker/HadoopJobTracker.java   |  5 ++++-
 .../hadoop/taskexecutor/HadoopRunnableTask.java          |  3 +++
 .../external/HadoopExternalTaskExecutor.java             |  3 +++
 .../internal/processors/hadoop/v2/HadoopV2Job.java       | 11 ++++++++++-
 .../processors/hadoop/v2/HadoopV2TaskContext.java        |  9 +++++++++
 7 files changed, 35 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/803881d5/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopDefaultJobInfo.java
----------------------------------------------------------------------
diff --git 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopDefaultJobInfo.java
 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopDefaultJobInfo.java
index 76e9a43..d0a327e 100644
--- 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopDefaultJobInfo.java
+++ 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopDefaultJobInfo.java
@@ -103,6 +103,9 @@ public class HadoopDefaultJobInfo implements HadoopJobInfo, 
Externalizable {
         }
         // NB: java.lang.NoClassDefFoundError may be thrown from 
Class#getConstructor() call.
         catch (Throwable t) {
+            if (t instanceof Error)
+                throw (Error)t;
+            
             throw new IgniteCheckedException(t);
         }
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/803881d5/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/igfs/HadoopIgfsIpcIo.java
----------------------------------------------------------------------
diff --git 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/igfs/HadoopIgfsIpcIo.java
 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/igfs/HadoopIgfsIpcIo.java
index 7d590c7..0264e7b 100644
--- 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/igfs/HadoopIgfsIpcIo.java
+++ 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/igfs/HadoopIgfsIpcIo.java
@@ -589,6 +589,9 @@ public class HadoopIgfsIpcIo implements HadoopIgfsIo {
                     log.error("Failed to obtain endpoint input stream 
(connection will be closed)", e);
 
                 err = e;
+
+                if (e instanceof Error)
+                    throw (Error)e;
             }
             finally {
                 close0(err);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/803881d5/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/jobtracker/HadoopJobTracker.java
----------------------------------------------------------------------
diff --git 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/jobtracker/HadoopJobTracker.java
 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/jobtracker/HadoopJobTracker.java
index 3757060..2f07817 100644
--- 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/jobtracker/HadoopJobTracker.java
+++ 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/jobtracker/HadoopJobTracker.java
@@ -1042,7 +1042,7 @@ public class HadoopJobTracker extends HadoopComponent {
             try {
                 fut.get();
             }
-            catch (Throwable e) {
+            catch (Exception e) {
                 if (e.getCause() instanceof HadoopTaskCancelledException)
                     return true;
             }
@@ -1086,6 +1086,9 @@ public class HadoopJobTracker extends HadoopComponent {
             }
             catch (Throwable e) {
                 U.error(log, "Unhandled exception while processing event.", e);
+
+                if (e instanceof Error)
+                    throw (Error)e;
             }
             finally {
                 busyLock.readUnlock();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/803881d5/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
----------------------------------------------------------------------
diff --git 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
index 2b36267..2e04ac1 100644
--- 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
+++ 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/HadoopRunnableTask.java
@@ -138,6 +138,9 @@ public abstract class HadoopRunnableTask implements 
Callable<Void> {
             err = e;
 
             U.error(log, "Task execution failed.", e);
+
+            if (e instanceof Error)
+                throw e;
         }
         finally {
             execEndTs = U.currentTimeMillis();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/803881d5/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/HadoopExternalTaskExecutor.java
----------------------------------------------------------------------
diff --git 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/HadoopExternalTaskExecutor.java
 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/HadoopExternalTaskExecutor.java
index 0791d1e..66fb42a 100644
--- 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/HadoopExternalTaskExecutor.java
+++ 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/HadoopExternalTaskExecutor.java
@@ -398,6 +398,9 @@ public class HadoopExternalTaskExecutor extends 
HadoopTaskExecutorAdapter {
                 }
                 catch (Throwable e) {
                     fut.onDone(new IgniteCheckedException("Failed to 
initialize child process: " + job, e));
+
+                    if (e instanceof Error)
+                        throw (Error)e;
                 }
                 finally {
                     busyLock.readUnlock();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/803881d5/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2Job.java
----------------------------------------------------------------------
diff --git 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2Job.java
 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2Job.java
index e3c2bfa..d265ca8 100644
--- 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2Job.java
+++ 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2Job.java
@@ -172,7 +172,10 @@ public class HadoopV2Job implements HadoopJob {
                 }
             }
             catch (Throwable e) {
-                throw transformException(e);
+                if (e instanceof Error)
+                    throw (Error)e;
+                else
+                    throw transformException(e);
             }
         }
         finally {
@@ -235,6 +238,9 @@ public class HadoopV2Job implements HadoopJob {
 
             fut.onDone(te);
 
+            if (e instanceof Error)
+                throw (Error)e;
+
             throw te;
         }
     }
@@ -287,6 +293,9 @@ public class HadoopV2Job implements HadoopJob {
                 catch (Throwable e) {
                     if (err == null)
                         err = e;
+
+                    if (e instanceof Error)
+                        throw (Error)e;
                 }
             }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/803881d5/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2TaskContext.java
----------------------------------------------------------------------
diff --git 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2TaskContext.java
 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2TaskContext.java
index 24f10a6..e9c859bd 100644
--- 
a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2TaskContext.java
+++ 
b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/v2/HadoopV2TaskContext.java
@@ -183,6 +183,9 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
                 task = createTask();
             }
             catch (Throwable e) {
+                if (e instanceof Error)
+                    throw e;
+
                 throw transformException(e);
             }
 
@@ -193,6 +196,9 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
                 task.run(this);
             }
             catch (Throwable e) {
+                if (e instanceof Error)
+                    throw e;
+
                 throw transformException(e);
             }
         }
@@ -242,6 +248,9 @@ public class HadoopV2TaskContext extends HadoopTaskContext {
             locFs.setWorkingDirectory(new Path(locDir.getAbsolutePath()));
         }
         catch (Throwable e) {
+            if (e instanceof Error)
+                throw (Error)e;
+
             throw transformException(e);
         }
         finally {

Reply via email to