diff --git a/engine/src/main/java/org/apache/apex/engine/api/plugin/DAGExecutionPlugin.java b/engine/src/main/java/org/apache/apex/engine/api/plugin/DAGExecutionPlugin.java
index a9722ac..7cfb1fa 100644
--- a/engine/src/main/java/org/apache/apex/engine/api/plugin/DAGExecutionPlugin.java
+++ b/engine/src/main/java/org/apache/apex/engine/api/plugin/DAGExecutionPlugin.java
@@ -23,7 +23,6 @@
 import java.util.Queue;
 
 import org.apache.apex.api.plugin.Plugin;
-import org.apache.hadoop.classification.InterfaceStability;
 import org.apache.hadoop.conf.Configuration;
 
 import com.datatorrent.api.DAG;
@@ -45,7 +44,6 @@
  * </ul>
  *
  */
-@InterfaceStability.Evolving
 public interface DAGExecutionPlugin<T extends DAGExecutionPlugin.Context> extends Plugin<T>
 {
 
@@ -60,7 +58,6 @@
    * </ul>
    *
    */
-  @InterfaceStability.Evolving
   interface Context<E extends DAGExecutionEvent> extends PluginContext<DAGExecutionEvent.Type, E>
   {
     VersionInfo getEngineVersion();
diff --git a/engine/src/main/java/org/apache/apex/engine/api/plugin/PluginLocator.java b/engine/src/main/java/org/apache/apex/engine/api/plugin/PluginLocator.java
index b93d64c..cd9a208 100644
--- a/engine/src/main/java/org/apache/apex/engine/api/plugin/PluginLocator.java
+++ b/engine/src/main/java/org/apache/apex/engine/api/plugin/PluginLocator.java
@@ -20,14 +20,12 @@
 
 import java.util.Collection;
 
-import org.apache.hadoop.classification.InterfaceStability;
 import org.apache.hadoop.conf.Configuration;
 
 /**
  * Interface to discover plugins during Apex Master initialization. This should return collection of
  * objects implementing an interface of type T.
  */
-@InterfaceStability.Evolving
 public interface PluginLocator<T>
 {
   /**
diff --git a/engine/src/main/java/org/apache/apex/engine/util/CascadeStorageAgent.java b/engine/src/main/java/org/apache/apex/engine/util/CascadeStorageAgent.java
index 9903010..bc3df77 100644
--- a/engine/src/main/java/org/apache/apex/engine/util/CascadeStorageAgent.java
+++ b/engine/src/main/java/org/apache/apex/engine/util/CascadeStorageAgent.java
@@ -28,7 +28,6 @@
 import org.slf4j.LoggerFactory;
 
 import org.apache.apex.common.util.AsyncStorageAgent;
-import org.apache.hadoop.classification.InterfaceStability;
 
 import com.google.common.collect.Maps;
 
@@ -42,7 +41,6 @@
  * restart to avoiding copying checkpoints from old application directory to improve application
  * restart time.
  */
-@InterfaceStability.Evolving
 public class CascadeStorageAgent implements StorageAgent, AsyncStorageAgent, Serializable
 {
   private static final long serialVersionUID = 985557590735264920L;
