You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by mc...@apache.org on 2015/03/09 14:39:43 UTC

[08/11] incubator-nifi git commit: NIFI-302: Blacklist a partition if IOException is thrown on rollover

NIFI-302: Blacklist a partition if IOException is thrown on rollover


Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/608f8007
Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/608f8007
Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/608f8007

Branch: refs/heads/NIFI-250
Commit: 608f8007ed945f5fd9bcfa6cd31e56a871d0a096
Parents: f9620cc
Author: Mark Payne <ma...@hotmail.com>
Authored: Fri Mar 6 15:17:56 2015 -0500
Committer: Mark Payne <ma...@hotmail.com>
Committed: Fri Mar 6 15:17:56 2015 -0500

----------------------------------------------------------------------
 .../src/main/java/org/wali/MinimalLockingWriteAheadLog.java   | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/608f8007/nifi/nifi-commons/nifi-write-ahead-log/src/main/java/org/wali/MinimalLockingWriteAheadLog.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-commons/nifi-write-ahead-log/src/main/java/org/wali/MinimalLockingWriteAheadLog.java b/nifi/nifi-commons/nifi-write-ahead-log/src/main/java/org/wali/MinimalLockingWriteAheadLog.java
index 19208d3..5b20b93 100644
--- a/nifi/nifi-commons/nifi-write-ahead-log/src/main/java/org/wali/MinimalLockingWriteAheadLog.java
+++ b/nifi/nifi-commons/nifi-write-ahead-log/src/main/java/org/wali/MinimalLockingWriteAheadLog.java
@@ -500,7 +500,12 @@ public final class MinimalLockingWriteAheadLog<T> implements WriteAheadRepositor
 
                 swapLocations = new HashSet<>(externalLocations);
                 for (final Partition<T> partition : partitions) {
-                    partition.rollover();
+                    try {
+                        partition.rollover();
+                    } catch (final IOException ioe) {
+                        partition.blackList();
+                        throw ioe;
+                    }
                 }
 
                 // notify global sync with the write lock held. We do this because we don't want the repository to get updated