# 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 {
