Repository: hive
Updated Branches:
  refs/heads/spark 344ccad09 -> fc48b075a


HIVE-10473 Spark client is recreated even spark configuration is not changed 
(Jimmy, reviewed by Szehon)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/fc48b075
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/fc48b075
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/fc48b075

Branch: refs/heads/spark
Commit: fc48b075a31b8c3e59e83ac93b893261cfbf30cd
Parents: 344ccad
Author: Jimmy Xiang <[email protected]>
Authored: Fri Apr 24 12:37:29 2015 -0700
Committer: Jimmy Xiang <[email protected]>
Committed: Mon Apr 27 10:14:27 2015 -0700

----------------------------------------------------------------------
 .../src/java/org/apache/hadoop/hive/conf/HiveConf.java   | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/fc48b075/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
----------------------------------------------------------------------
diff --git a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java 
b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
index e138800..43c53fc 100644
--- a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
+++ b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
@@ -79,7 +79,7 @@ public class HiveConf extends Configuration {
   private final List<String> restrictList = new ArrayList<String>();
 
   private Pattern modWhiteListPattern = null;
-  private boolean isSparkConfigUpdated = false;
+  private volatile boolean isSparkConfigUpdated = false;
 
   public boolean getSparkConfigUpdated() {
     return isSparkConfigUpdated;
@@ -2302,8 +2302,13 @@ public class HiveConf extends Configuration {
       throw new IllegalArgumentException("Cannot modify " + name + " at 
runtime. It is in the list"
           + "of parameters that can't be modified at runtime");
     }
-    isSparkConfigUpdated = isSparkRelatedConfig(name);
-    set(name, value);
+    String oldValue = name != null ? get(name) : null;
+    if (name == null || value == null || !value.equals(oldValue)) {
+      // When either name or value is null, the set method below will fail,
+      // and throw IllegalArgumentException
+      set(name, value);
+      isSparkConfigUpdated = isSparkRelatedConfig(name);
+    }
   }
 
   /**

Reply via email to