From 14e5a8ed28cd82ff75ac380ebce88b3593c13031 Mon Sep 17 00:00:00 2001 From: Mingliang Liu Date: Thu, 30 Mar 2017 15:44:06 -0700 Subject: [PATCH] HDFS-11592. Closing a file has a wasteful preconditions in NameNode. Contributed by Eric Badger (cherry picked from commit e5f0622a6f40706d360d45200c8f259c79046438) --- .../org/apache/hadoop/hdfs/server/namenode/INodeFile.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java index b0663d3b877..8a5fd689419 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/INodeFile.java @@ -215,9 +215,11 @@ public class INodeFile extends INodeWithAdditionalFields for (int i = 0; i < blocks.length; i++) { final String err = checkBlockComplete(blocks, i, numCommittedAllowed, minReplication); - Preconditions.checkState(err == null, - "Unexpected block state: %s, file=%s (%s), blocks=%s (i=%s)", - err, this, getClass().getSimpleName(), Arrays.asList(blocks), i); + if(err != null) { + throw new IllegalStateException(String.format("Unexpected block state: " + + "%s, file=%s (%s), blocks=%s (i=%s)", err, this, + getClass().getSimpleName(), Arrays.asList(blocks), i)); + } } }