Merge branch 'gerrit/mad-hatter'

Change-Id: Iac75fe1fe6640d7da49071220f33597a1464f89e
diff --git a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/ICoordinationService.java b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/ICoordinationService.java
index 2019da9..5d2ef07 100644
--- a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/ICoordinationService.java
+++ b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/ICoordinationService.java
@@ -35,6 +35,18 @@
     void put(String key, byte[] value) throws HyracksDataException;
 
     /**
+     * Adds or updates the property with the name {@code key}
+     * with {@code value}, and indicates that values associated with
+     * this key should be treated as sensitive (e.g. not logged). Once a
+     * key is considered sensitive, it remains sensitive until deleted.
+     *
+     * @param key
+     * @param value
+     * @throws HyracksDataException
+     */
+    void putSensitive(String key, byte[] value) throws HyracksDataException;
+
+    /**
      * Gets the value of the property with name {@code key} if exists.
      *
      * @param key
diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/NoOpCoordinationService.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/NoOpCoordinationService.java
index 6f9a8d2..3cbaed4 100644
--- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/NoOpCoordinationService.java
+++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/NoOpCoordinationService.java
@@ -35,6 +35,11 @@
     }
 
     @Override
+    public void putSensitive(String key, byte[] value) {
+        throw new UnsupportedOperationException();
+    }
+
+    @Override
     public Optional<byte[]> get(String key) {
         throw new UnsupportedOperationException();
     }