You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by sp...@apache.org on 2016/05/06 20:42:38 UTC

[07/50] [abbrv] hive git commit: HIVE-13442 : LLAP: refactor submit API to be amenable to signing (Sergey Shelukhin, reviewed by Siddharth Seth)

http://git-wip-us.apache.org/repos/asf/hive/blob/0b5c27fd/llap-common/src/gen/protobuf/gen-java/org/apache/hadoop/hive/llap/daemon/rpc/LlapDaemonProtocolProtos.java
----------------------------------------------------------------------
diff --git a/llap-common/src/gen/protobuf/gen-java/org/apache/hadoop/hive/llap/daemon/rpc/LlapDaemonProtocolProtos.java b/llap-common/src/gen/protobuf/gen-java/org/apache/hadoop/hive/llap/daemon/rpc/LlapDaemonProtocolProtos.java
index 820f6be..16531e3 100644
--- a/llap-common/src/gen/protobuf/gen-java/org/apache/hadoop/hive/llap/daemon/rpc/LlapDaemonProtocolProtos.java
+++ b/llap-common/src/gen/protobuf/gen-java/org/apache/hadoop/hive/llap/daemon/rpc/LlapDaemonProtocolProtos.java
@@ -3212,202 +3212,73 @@ public final class LlapDaemonProtocolProtos {
     // @@protoc_insertion_point(class_scope:GroupInputSpecProto)
   }
 
-  public interface FragmentSpecProtoOrBuilder
+  public interface VertexIdentifierOrBuilder
       extends com.google.protobuf.MessageOrBuilder {
 
-    // optional string fragment_identifier_string = 1;
+    // optional string application_id_string = 1;
     /**
-     * <code>optional string fragment_identifier_string = 1;</code>
+     * <code>optional string application_id_string = 1;</code>
      */
-    boolean hasFragmentIdentifierString();
+    boolean hasApplicationIdString();
     /**
-     * <code>optional string fragment_identifier_string = 1;</code>
+     * <code>optional string application_id_string = 1;</code>
      */
-    java.lang.String getFragmentIdentifierString();
+    java.lang.String getApplicationIdString();
     /**
-     * <code>optional string fragment_identifier_string = 1;</code>
+     * <code>optional string application_id_string = 1;</code>
      */
     com.google.protobuf.ByteString
-        getFragmentIdentifierStringBytes();
+        getApplicationIdStringBytes();
 
-    // optional string dag_name = 2;
-    /**
-     * <code>optional string dag_name = 2;</code>
-     */
-    boolean hasDagName();
+    // optional int32 app_attempt_number = 2;
     /**
-     * <code>optional string dag_name = 2;</code>
+     * <code>optional int32 app_attempt_number = 2;</code>
      */
-    java.lang.String getDagName();
+    boolean hasAppAttemptNumber();
     /**
-     * <code>optional string dag_name = 2;</code>
+     * <code>optional int32 app_attempt_number = 2;</code>
      */
-    com.google.protobuf.ByteString
-        getDagNameBytes();
+    int getAppAttemptNumber();
 
-    // optional int32 dag_id = 11;
+    // optional int32 dag_id = 3;
     /**
-     * <code>optional int32 dag_id = 11;</code>
+     * <code>optional int32 dag_id = 3;</code>
      */
     boolean hasDagId();
     /**
-     * <code>optional int32 dag_id = 11;</code>
+     * <code>optional int32 dag_id = 3;</code>
      */
     int getDagId();
 
-    // optional string vertex_name = 3;
-    /**
-     * <code>optional string vertex_name = 3;</code>
-     */
-    boolean hasVertexName();
-    /**
-     * <code>optional string vertex_name = 3;</code>
-     */
-    java.lang.String getVertexName();
-    /**
-     * <code>optional string vertex_name = 3;</code>
-     */
-    com.google.protobuf.ByteString
-        getVertexNameBytes();
-
-    // optional .EntityDescriptorProto processor_descriptor = 4;
-    /**
-     * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-     */
-    boolean hasProcessorDescriptor();
-    /**
-     * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-     */
-    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto getProcessorDescriptor();
-    /**
-     * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-     */
-    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProtoOrBuilder getProcessorDescriptorOrBuilder();
-
-    // repeated .IOSpecProto input_specs = 5;
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> 
-        getInputSpecsList();
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto getInputSpecs(int index);
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    int getInputSpecsCount();
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder> 
-        getInputSpecsOrBuilderList();
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder getInputSpecsOrBuilder(
-        int index);
-
-    // repeated .IOSpecProto output_specs = 6;
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> 
-        getOutputSpecsList();
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto getOutputSpecs(int index);
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    int getOutputSpecsCount();
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder> 
-        getOutputSpecsOrBuilderList();
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder getOutputSpecsOrBuilder(
-        int index);
-
-    // repeated .GroupInputSpecProto grouped_input_specs = 7;
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto> 
-        getGroupedInputSpecsList();
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto getGroupedInputSpecs(int index);
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    int getGroupedInputSpecsCount();
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProtoOrBuilder> 
-        getGroupedInputSpecsOrBuilderList();
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProtoOrBuilder getGroupedInputSpecsOrBuilder(
-        int index);
-
-    // optional int32 vertex_parallelism = 8;
-    /**
-     * <code>optional int32 vertex_parallelism = 8;</code>
-     */
-    boolean hasVertexParallelism();
-    /**
-     * <code>optional int32 vertex_parallelism = 8;</code>
-     */
-    int getVertexParallelism();
-
-    // optional int32 fragment_number = 9;
-    /**
-     * <code>optional int32 fragment_number = 9;</code>
-     */
-    boolean hasFragmentNumber();
-    /**
-     * <code>optional int32 fragment_number = 9;</code>
-     */
-    int getFragmentNumber();
-
-    // optional int32 attempt_number = 10;
+    // optional int32 vertex_id = 4;
     /**
-     * <code>optional int32 attempt_number = 10;</code>
+     * <code>optional int32 vertex_id = 4;</code>
      */
-    boolean hasAttemptNumber();
+    boolean hasVertexId();
     /**
-     * <code>optional int32 attempt_number = 10;</code>
+     * <code>optional int32 vertex_id = 4;</code>
      */
-    int getAttemptNumber();
+    int getVertexId();
   }
   /**
-   * Protobuf type {@code FragmentSpecProto}
+   * Protobuf type {@code VertexIdentifier}
    */
-  public static final class FragmentSpecProto extends
+  public static final class VertexIdentifier extends
       com.google.protobuf.GeneratedMessage
-      implements FragmentSpecProtoOrBuilder {
-    // Use FragmentSpecProto.newBuilder() to construct.
-    private FragmentSpecProto(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
+      implements VertexIdentifierOrBuilder {
+    // Use VertexIdentifier.newBuilder() to construct.
+    private VertexIdentifier(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
       this.unknownFields = builder.getUnknownFields();
     }
-    private FragmentSpecProto(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+    private VertexIdentifier(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
 
-    private static final FragmentSpecProto defaultInstance;
-    public static FragmentSpecProto getDefaultInstance() {
+    private static final VertexIdentifier defaultInstance;
+    public static VertexIdentifier getDefaultInstance() {
       return defaultInstance;
     }
 
-    public FragmentSpecProto getDefaultInstanceForType() {
+    public VertexIdentifier getDefaultInstanceForType() {
       return defaultInstance;
     }
 
@@ -3417,7 +3288,7 @@ public final class LlapDaemonProtocolProtos {
         getUnknownFields() {
       return this.unknownFields;
     }
-    private FragmentSpecProto(
+    private VertexIdentifier(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -3442,76 +3313,24 @@ public final class LlapDaemonProtocolProtos {
             }
             case 10: {
               bitField0_ |= 0x00000001;
-              fragmentIdentifierString_ = input.readBytes();
+              applicationIdString_ = input.readBytes();
               break;
             }
-            case 18: {
+            case 16: {
               bitField0_ |= 0x00000002;
-              dagName_ = input.readBytes();
-              break;
-            }
-            case 26: {
-              bitField0_ |= 0x00000008;
-              vertexName_ = input.readBytes();
-              break;
-            }
-            case 34: {
-              org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.Builder subBuilder = null;
-              if (((bitField0_ & 0x00000010) == 0x00000010)) {
-                subBuilder = processorDescriptor_.toBuilder();
-              }
-              processorDescriptor_ = input.readMessage(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.PARSER, extensionRegistry);
-              if (subBuilder != null) {
-                subBuilder.mergeFrom(processorDescriptor_);
-                processorDescriptor_ = subBuilder.buildPartial();
-              }
-              bitField0_ |= 0x00000010;
-              break;
-            }
-            case 42: {
-              if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-                inputSpecs_ = new java.util.ArrayList<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto>();
-                mutable_bitField0_ |= 0x00000020;
-              }
-              inputSpecs_.add(input.readMessage(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto.PARSER, extensionRegistry));
-              break;
-            }
-            case 50: {
-              if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                outputSpecs_ = new java.util.ArrayList<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto>();
-                mutable_bitField0_ |= 0x00000040;
-              }
-              outputSpecs_.add(input.readMessage(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto.PARSER, extensionRegistry));
-              break;
-            }
-            case 58: {
-              if (!((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
-                groupedInputSpecs_ = new java.util.ArrayList<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto>();
-                mutable_bitField0_ |= 0x00000080;
-              }
-              groupedInputSpecs_.add(input.readMessage(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto.PARSER, extensionRegistry));
-              break;
-            }
-            case 64: {
-              bitField0_ |= 0x00000020;
-              vertexParallelism_ = input.readInt32();
-              break;
-            }
-            case 72: {
-              bitField0_ |= 0x00000040;
-              fragmentNumber_ = input.readInt32();
-              break;
-            }
-            case 80: {
-              bitField0_ |= 0x00000080;
-              attemptNumber_ = input.readInt32();
+              appAttemptNumber_ = input.readInt32();
               break;
             }
-            case 88: {
+            case 24: {
               bitField0_ |= 0x00000004;
               dagId_ = input.readInt32();
               break;
             }
+            case 32: {
+              bitField0_ |= 0x00000008;
+              vertexId_ = input.readInt32();
+              break;
+            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
@@ -3520,61 +3339,52 @@ public final class LlapDaemonProtocolProtos {
         throw new com.google.protobuf.InvalidProtocolBufferException(
             e.getMessage()).setUnfinishedMessage(this);
       } finally {
-        if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-          inputSpecs_ = java.util.Collections.unmodifiableList(inputSpecs_);
-        }
-        if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-          outputSpecs_ = java.util.Collections.unmodifiableList(outputSpecs_);
-        }
-        if (((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
-          groupedInputSpecs_ = java.util.Collections.unmodifiableList(groupedInputSpecs_);
-        }
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
       }
     }
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_FragmentSpecProto_descriptor;
+      return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_VertexIdentifier_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_FragmentSpecProto_fieldAccessorTable
+      return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_VertexIdentifier_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto.class, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto.Builder.class);
+              org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier.class, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier.Builder.class);
     }
 
-    public static com.google.protobuf.Parser<FragmentSpecProto> PARSER =
-        new com.google.protobuf.AbstractParser<FragmentSpecProto>() {
-      public FragmentSpecProto parsePartialFrom(
+    public static com.google.protobuf.Parser<VertexIdentifier> PARSER =
+        new com.google.protobuf.AbstractParser<VertexIdentifier>() {
+      public VertexIdentifier parsePartialFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws com.google.protobuf.InvalidProtocolBufferException {
-        return new FragmentSpecProto(input, extensionRegistry);
+        return new VertexIdentifier(input, extensionRegistry);
       }
     };
 
     @java.lang.Override
-    public com.google.protobuf.Parser<FragmentSpecProto> getParserForType() {
+    public com.google.protobuf.Parser<VertexIdentifier> getParserForType() {
       return PARSER;
     }
 
     private int bitField0_;
-    // optional string fragment_identifier_string = 1;
-    public static final int FRAGMENT_IDENTIFIER_STRING_FIELD_NUMBER = 1;
-    private java.lang.Object fragmentIdentifierString_;
+    // optional string application_id_string = 1;
+    public static final int APPLICATION_ID_STRING_FIELD_NUMBER = 1;
+    private java.lang.Object applicationIdString_;
     /**
-     * <code>optional string fragment_identifier_string = 1;</code>
+     * <code>optional string application_id_string = 1;</code>
      */
-    public boolean hasFragmentIdentifierString() {
+    public boolean hasApplicationIdString() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
-     * <code>optional string fragment_identifier_string = 1;</code>
+     * <code>optional string application_id_string = 1;</code>
      */
-    public java.lang.String getFragmentIdentifierString() {
-      java.lang.Object ref = fragmentIdentifierString_;
+    public java.lang.String getApplicationIdString() {
+      java.lang.Object ref = applicationIdString_;
       if (ref instanceof java.lang.String) {
         return (java.lang.String) ref;
       } else {
@@ -3582,320 +3392,81 @@ public final class LlapDaemonProtocolProtos {
             (com.google.protobuf.ByteString) ref;
         java.lang.String s = bs.toStringUtf8();
         if (bs.isValidUtf8()) {
-          fragmentIdentifierString_ = s;
+          applicationIdString_ = s;
         }
         return s;
       }
     }
     /**
-     * <code>optional string fragment_identifier_string = 1;</code>
+     * <code>optional string application_id_string = 1;</code>
      */
     public com.google.protobuf.ByteString
-        getFragmentIdentifierStringBytes() {
-      java.lang.Object ref = fragmentIdentifierString_;
+        getApplicationIdStringBytes() {
+      java.lang.Object ref = applicationIdString_;
       if (ref instanceof java.lang.String) {
         com.google.protobuf.ByteString b = 
             com.google.protobuf.ByteString.copyFromUtf8(
                 (java.lang.String) ref);
-        fragmentIdentifierString_ = b;
+        applicationIdString_ = b;
         return b;
       } else {
         return (com.google.protobuf.ByteString) ref;
       }
     }
 
-    // optional string dag_name = 2;
-    public static final int DAG_NAME_FIELD_NUMBER = 2;
-    private java.lang.Object dagName_;
+    // optional int32 app_attempt_number = 2;
+    public static final int APP_ATTEMPT_NUMBER_FIELD_NUMBER = 2;
+    private int appAttemptNumber_;
     /**
-     * <code>optional string dag_name = 2;</code>
+     * <code>optional int32 app_attempt_number = 2;</code>
      */
-    public boolean hasDagName() {
+    public boolean hasAppAttemptNumber() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
-     * <code>optional string dag_name = 2;</code>
-     */
-    public java.lang.String getDagName() {
-      java.lang.Object ref = dagName_;
-      if (ref instanceof java.lang.String) {
-        return (java.lang.String) ref;
-      } else {
-        com.google.protobuf.ByteString bs = 
-            (com.google.protobuf.ByteString) ref;
-        java.lang.String s = bs.toStringUtf8();
-        if (bs.isValidUtf8()) {
-          dagName_ = s;
-        }
-        return s;
-      }
-    }
-    /**
-     * <code>optional string dag_name = 2;</code>
+     * <code>optional int32 app_attempt_number = 2;</code>
      */
-    public com.google.protobuf.ByteString
-        getDagNameBytes() {
-      java.lang.Object ref = dagName_;
-      if (ref instanceof java.lang.String) {
-        com.google.protobuf.ByteString b = 
-            com.google.protobuf.ByteString.copyFromUtf8(
-                (java.lang.String) ref);
-        dagName_ = b;
-        return b;
-      } else {
-        return (com.google.protobuf.ByteString) ref;
-      }
+    public int getAppAttemptNumber() {
+      return appAttemptNumber_;
     }
 
-    // optional int32 dag_id = 11;
-    public static final int DAG_ID_FIELD_NUMBER = 11;
+    // optional int32 dag_id = 3;
+    public static final int DAG_ID_FIELD_NUMBER = 3;
     private int dagId_;
     /**
-     * <code>optional int32 dag_id = 11;</code>
+     * <code>optional int32 dag_id = 3;</code>
      */
     public boolean hasDagId() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
-     * <code>optional int32 dag_id = 11;</code>
+     * <code>optional int32 dag_id = 3;</code>
      */
     public int getDagId() {
       return dagId_;
     }
 
-    // optional string vertex_name = 3;
-    public static final int VERTEX_NAME_FIELD_NUMBER = 3;
-    private java.lang.Object vertexName_;
+    // optional int32 vertex_id = 4;
+    public static final int VERTEX_ID_FIELD_NUMBER = 4;
+    private int vertexId_;
     /**
-     * <code>optional string vertex_name = 3;</code>
+     * <code>optional int32 vertex_id = 4;</code>
      */
-    public boolean hasVertexName() {
+    public boolean hasVertexId() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
-     * <code>optional string vertex_name = 3;</code>
-     */
-    public java.lang.String getVertexName() {
-      java.lang.Object ref = vertexName_;
-      if (ref instanceof java.lang.String) {
-        return (java.lang.String) ref;
-      } else {
-        com.google.protobuf.ByteString bs = 
-            (com.google.protobuf.ByteString) ref;
-        java.lang.String s = bs.toStringUtf8();
-        if (bs.isValidUtf8()) {
-          vertexName_ = s;
-        }
-        return s;
-      }
-    }
-    /**
-     * <code>optional string vertex_name = 3;</code>
+     * <code>optional int32 vertex_id = 4;</code>
      */
-    public com.google.protobuf.ByteString
-        getVertexNameBytes() {
-      java.lang.Object ref = vertexName_;
-      if (ref instanceof java.lang.String) {
-        com.google.protobuf.ByteString b = 
-            com.google.protobuf.ByteString.copyFromUtf8(
-                (java.lang.String) ref);
-        vertexName_ = b;
-        return b;
-      } else {
-        return (com.google.protobuf.ByteString) ref;
-      }
-    }
-
-    // optional .EntityDescriptorProto processor_descriptor = 4;
-    public static final int PROCESSOR_DESCRIPTOR_FIELD_NUMBER = 4;
-    private org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto processorDescriptor_;
-    /**
-     * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-     */
-    public boolean hasProcessorDescriptor() {
-      return ((bitField0_ & 0x00000010) == 0x00000010);
-    }
-    /**
-     * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-     */
-    public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto getProcessorDescriptor() {
-      return processorDescriptor_;
-    }
-    /**
-     * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-     */
-    public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProtoOrBuilder getProcessorDescriptorOrBuilder() {
-      return processorDescriptor_;
-    }
-
-    // repeated .IOSpecProto input_specs = 5;
-    public static final int INPUT_SPECS_FIELD_NUMBER = 5;
-    private java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> inputSpecs_;
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    public java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> getInputSpecsList() {
-      return inputSpecs_;
-    }
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    public java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder> 
-        getInputSpecsOrBuilderList() {
-      return inputSpecs_;
-    }
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    public int getInputSpecsCount() {
-      return inputSpecs_.size();
-    }
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto getInputSpecs(int index) {
-      return inputSpecs_.get(index);
-    }
-    /**
-     * <code>repeated .IOSpecProto input_specs = 5;</code>
-     */
-    public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder getInputSpecsOrBuilder(
-        int index) {
-      return inputSpecs_.get(index);
-    }
-
-    // repeated .IOSpecProto output_specs = 6;
-    public static final int OUTPUT_SPECS_FIELD_NUMBER = 6;
-    private java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> outputSpecs_;
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    public java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> getOutputSpecsList() {
-      return outputSpecs_;
-    }
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    public java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder> 
-        getOutputSpecsOrBuilderList() {
-      return outputSpecs_;
-    }
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    public int getOutputSpecsCount() {
-      return outputSpecs_.size();
-    }
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto getOutputSpecs(int index) {
-      return outputSpecs_.get(index);
-    }
-    /**
-     * <code>repeated .IOSpecProto output_specs = 6;</code>
-     */
-    public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder getOutputSpecsOrBuilder(
-        int index) {
-      return outputSpecs_.get(index);
-    }
-
-    // repeated .GroupInputSpecProto grouped_input_specs = 7;
-    public static final int GROUPED_INPUT_SPECS_FIELD_NUMBER = 7;
-    private java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto> groupedInputSpecs_;
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    public java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto> getGroupedInputSpecsList() {
-      return groupedInputSpecs_;
-    }
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    public java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProtoOrBuilder> 
-        getGroupedInputSpecsOrBuilderList() {
-      return groupedInputSpecs_;
-    }
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    public int getGroupedInputSpecsCount() {
-      return groupedInputSpecs_.size();
-    }
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto getGroupedInputSpecs(int index) {
-      return groupedInputSpecs_.get(index);
-    }
-    /**
-     * <code>repeated .GroupInputSpecProto grouped_input_specs = 7;</code>
-     */
-    public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProtoOrBuilder getGroupedInputSpecsOrBuilder(
-        int index) {
-      return groupedInputSpecs_.get(index);
-    }
-
-    // optional int32 vertex_parallelism = 8;
-    public static final int VERTEX_PARALLELISM_FIELD_NUMBER = 8;
-    private int vertexParallelism_;
-    /**
-     * <code>optional int32 vertex_parallelism = 8;</code>
-     */
-    public boolean hasVertexParallelism() {
-      return ((bitField0_ & 0x00000020) == 0x00000020);
-    }
-    /**
-     * <code>optional int32 vertex_parallelism = 8;</code>
-     */
-    public int getVertexParallelism() {
-      return vertexParallelism_;
-    }
-
-    // optional int32 fragment_number = 9;
-    public static final int FRAGMENT_NUMBER_FIELD_NUMBER = 9;
-    private int fragmentNumber_;
-    /**
-     * <code>optional int32 fragment_number = 9;</code>
-     */
-    public boolean hasFragmentNumber() {
-      return ((bitField0_ & 0x00000040) == 0x00000040);
-    }
-    /**
-     * <code>optional int32 fragment_number = 9;</code>
-     */
-    public int getFragmentNumber() {
-      return fragmentNumber_;
-    }
-
-    // optional int32 attempt_number = 10;
-    public static final int ATTEMPT_NUMBER_FIELD_NUMBER = 10;
-    private int attemptNumber_;
-    /**
-     * <code>optional int32 attempt_number = 10;</code>
-     */
-    public boolean hasAttemptNumber() {
-      return ((bitField0_ & 0x00000080) == 0x00000080);
-    }
-    /**
-     * <code>optional int32 attempt_number = 10;</code>
-     */
-    public int getAttemptNumber() {
-      return attemptNumber_;
+    public int getVertexId() {
+      return vertexId_;
     }
 
     private void initFields() {
-      fragmentIdentifierString_ = "";
-      dagName_ = "";
+      applicationIdString_ = "";
+      appAttemptNumber_ = 0;
       dagId_ = 0;
-      vertexName_ = "";
-      processorDescriptor_ = org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.getDefaultInstance();
-      inputSpecs_ = java.util.Collections.emptyList();
-      outputSpecs_ = java.util.Collections.emptyList();
-      groupedInputSpecs_ = java.util.Collections.emptyList();
-      vertexParallelism_ = 0;
-      fragmentNumber_ = 0;
-      attemptNumber_ = 0;
+      vertexId_ = 0;
     }
     private byte memoizedIsInitialized = -1;
     public final boolean isInitialized() {
@@ -3910,37 +3481,16 @@ public final class LlapDaemonProtocolProtos {
                         throws java.io.IOException {
       getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeBytes(1, getFragmentIdentifierStringBytes());
+        output.writeBytes(1, getApplicationIdStringBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeBytes(2, getDagNameBytes());
-      }
-      if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        output.writeBytes(3, getVertexNameBytes());
-      }
-      if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        output.writeMessage(4, processorDescriptor_);
-      }
-      for (int i = 0; i < inputSpecs_.size(); i++) {
-        output.writeMessage(5, inputSpecs_.get(i));
-      }
-      for (int i = 0; i < outputSpecs_.size(); i++) {
-        output.writeMessage(6, outputSpecs_.get(i));
-      }
-      for (int i = 0; i < groupedInputSpecs_.size(); i++) {
-        output.writeMessage(7, groupedInputSpecs_.get(i));
-      }
-      if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        output.writeInt32(8, vertexParallelism_);
-      }
-      if (((bitField0_ & 0x00000040) == 0x00000040)) {
-        output.writeInt32(9, fragmentNumber_);
-      }
-      if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        output.writeInt32(10, attemptNumber_);
+        output.writeInt32(2, appAttemptNumber_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeInt32(11, dagId_);
+        output.writeInt32(3, dagId_);
+      }
+      if (((bitField0_ & 0x00000008) == 0x00000008)) {
+        output.writeInt32(4, vertexId_);
       }
       getUnknownFields().writeTo(output);
     }
@@ -3953,47 +3503,19 @@ public final class LlapDaemonProtocolProtos {
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeBytesSize(1, getFragmentIdentifierStringBytes());
+          .computeBytesSize(1, getApplicationIdStringBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeBytesSize(2, getDagNameBytes());
-      }
-      if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.CodedOutputStream
-          .computeBytesSize(3, getVertexNameBytes());
-      }
-      if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(4, processorDescriptor_);
+          .computeInt32Size(2, appAttemptNumber_);
       }
-      for (int i = 0; i < inputSpecs_.size(); i++) {
-        size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(5, inputSpecs_.get(i));
-      }
-      for (int i = 0; i < outputSpecs_.size(); i++) {
-        size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(6, outputSpecs_.get(i));
-      }
-      for (int i = 0; i < groupedInputSpecs_.size(); i++) {
-        size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(7, groupedInputSpecs_.get(i));
-      }
-      if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.CodedOutputStream
-          .computeInt32Size(8, vertexParallelism_);
-      }
-      if (((bitField0_ & 0x00000040) == 0x00000040)) {
-        size += com.google.protobuf.CodedOutputStream
-          .computeInt32Size(9, fragmentNumber_);
-      }
-      if (((bitField0_ & 0x00000080) == 0x00000080)) {
+      if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeInt32Size(10, attemptNumber_);
+          .computeInt32Size(3, dagId_);
       }
-      if (((bitField0_ & 0x00000004) == 0x00000004)) {
+      if (((bitField0_ & 0x00000008) == 0x00000008)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeInt32Size(11, dagId_);
+          .computeInt32Size(4, vertexId_);
       }
       size += getUnknownFields().getSerializedSize();
       memoizedSerializedSize = size;
@@ -4012,57 +3534,31 @@ public final class LlapDaemonProtocolProtos {
       if (obj == this) {
        return true;
       }
-      if (!(obj instanceof org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto)) {
+      if (!(obj instanceof org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier)) {
         return super.equals(obj);
       }
-      org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto other = (org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto) obj;
+      org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier other = (org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier) obj;
 
       boolean result = true;
-      result = result && (hasFragmentIdentifierString() == other.hasFragmentIdentifierString());
-      if (hasFragmentIdentifierString()) {
-        result = result && getFragmentIdentifierString()
-            .equals(other.getFragmentIdentifierString());
+      result = result && (hasApplicationIdString() == other.hasApplicationIdString());
+      if (hasApplicationIdString()) {
+        result = result && getApplicationIdString()
+            .equals(other.getApplicationIdString());
       }
-      result = result && (hasDagName() == other.hasDagName());
-      if (hasDagName()) {
-        result = result && getDagName()
-            .equals(other.getDagName());
+      result = result && (hasAppAttemptNumber() == other.hasAppAttemptNumber());
+      if (hasAppAttemptNumber()) {
+        result = result && (getAppAttemptNumber()
+            == other.getAppAttemptNumber());
       }
       result = result && (hasDagId() == other.hasDagId());
       if (hasDagId()) {
         result = result && (getDagId()
             == other.getDagId());
       }
-      result = result && (hasVertexName() == other.hasVertexName());
-      if (hasVertexName()) {
-        result = result && getVertexName()
-            .equals(other.getVertexName());
-      }
-      result = result && (hasProcessorDescriptor() == other.hasProcessorDescriptor());
-      if (hasProcessorDescriptor()) {
-        result = result && getProcessorDescriptor()
-            .equals(other.getProcessorDescriptor());
-      }
-      result = result && getInputSpecsList()
-          .equals(other.getInputSpecsList());
-      result = result && getOutputSpecsList()
-          .equals(other.getOutputSpecsList());
-      result = result && getGroupedInputSpecsList()
-          .equals(other.getGroupedInputSpecsList());
-      result = result && (hasVertexParallelism() == other.hasVertexParallelism());
-      if (hasVertexParallelism()) {
-        result = result && (getVertexParallelism()
-            == other.getVertexParallelism());
-      }
-      result = result && (hasFragmentNumber() == other.hasFragmentNumber());
-      if (hasFragmentNumber()) {
-        result = result && (getFragmentNumber()
-            == other.getFragmentNumber());
-      }
-      result = result && (hasAttemptNumber() == other.hasAttemptNumber());
-      if (hasAttemptNumber()) {
-        result = result && (getAttemptNumber()
-            == other.getAttemptNumber());
+      result = result && (hasVertexId() == other.hasVertexId());
+      if (hasVertexId()) {
+        result = result && (getVertexId()
+            == other.getVertexId());
       }
       result = result &&
           getUnknownFields().equals(other.getUnknownFields());
@@ -4077,102 +3573,74 @@ public final class LlapDaemonProtocolProtos {
       }
       int hash = 41;
       hash = (19 * hash) + getDescriptorForType().hashCode();
-      if (hasFragmentIdentifierString()) {
-        hash = (37 * hash) + FRAGMENT_IDENTIFIER_STRING_FIELD_NUMBER;
-        hash = (53 * hash) + getFragmentIdentifierString().hashCode();
+      if (hasApplicationIdString()) {
+        hash = (37 * hash) + APPLICATION_ID_STRING_FIELD_NUMBER;
+        hash = (53 * hash) + getApplicationIdString().hashCode();
       }
-      if (hasDagName()) {
-        hash = (37 * hash) + DAG_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getDagName().hashCode();
+      if (hasAppAttemptNumber()) {
+        hash = (37 * hash) + APP_ATTEMPT_NUMBER_FIELD_NUMBER;
+        hash = (53 * hash) + getAppAttemptNumber();
       }
       if (hasDagId()) {
         hash = (37 * hash) + DAG_ID_FIELD_NUMBER;
         hash = (53 * hash) + getDagId();
       }
-      if (hasVertexName()) {
-        hash = (37 * hash) + VERTEX_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getVertexName().hashCode();
-      }
-      if (hasProcessorDescriptor()) {
-        hash = (37 * hash) + PROCESSOR_DESCRIPTOR_FIELD_NUMBER;
-        hash = (53 * hash) + getProcessorDescriptor().hashCode();
-      }
-      if (getInputSpecsCount() > 0) {
-        hash = (37 * hash) + INPUT_SPECS_FIELD_NUMBER;
-        hash = (53 * hash) + getInputSpecsList().hashCode();
-      }
-      if (getOutputSpecsCount() > 0) {
-        hash = (37 * hash) + OUTPUT_SPECS_FIELD_NUMBER;
-        hash = (53 * hash) + getOutputSpecsList().hashCode();
-      }
-      if (getGroupedInputSpecsCount() > 0) {
-        hash = (37 * hash) + GROUPED_INPUT_SPECS_FIELD_NUMBER;
-        hash = (53 * hash) + getGroupedInputSpecsList().hashCode();
-      }
-      if (hasVertexParallelism()) {
-        hash = (37 * hash) + VERTEX_PARALLELISM_FIELD_NUMBER;
-        hash = (53 * hash) + getVertexParallelism();
-      }
-      if (hasFragmentNumber()) {
-        hash = (37 * hash) + FRAGMENT_NUMBER_FIELD_NUMBER;
-        hash = (53 * hash) + getFragmentNumber();
-      }
-      if (hasAttemptNumber()) {
-        hash = (37 * hash) + ATTEMPT_NUMBER_FIELD_NUMBER;
-        hash = (53 * hash) + getAttemptNumber();
+      if (hasVertexId()) {
+        hash = (37 * hash) + VERTEX_ID_FIELD_NUMBER;
+        hash = (53 * hash) + getVertexId();
       }
       hash = (29 * hash) + getUnknownFields().hashCode();
       memoizedHashCode = hash;
       return hash;
     }
 
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseFrom(
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseFrom(
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseFrom(
         com.google.protobuf.ByteString data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data, extensionRegistry);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseFrom(byte[] data)
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseFrom(byte[] data)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseFrom(
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseFrom(
         byte[] data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
       return PARSER.parseFrom(data, extensionRegistry);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseFrom(java.io.InputStream input)
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseFrom(java.io.InputStream input)
         throws java.io.IOException {
       return PARSER.parseFrom(input);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseFrom(
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
       return PARSER.parseFrom(input, extensionRegistry);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseDelimitedFrom(java.io.InputStream input)
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
       return PARSER.parseDelimitedFrom(input);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseDelimitedFrom(
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
       return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseFrom(
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
       return PARSER.parseFrom(input);
     }
-    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parseFrom(
+    public static org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
@@ -4181,7 +3649,7 @@ public final class LlapDaemonProtocolProtos {
 
     public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto prototype) {
+    public static Builder newBuilder(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier prototype) {
       return newBuilder().mergeFrom(prototype);
     }
     public Builder toBuilder() { return newBuilder(this); }
@@ -4193,24 +3661,24 @@ public final class LlapDaemonProtocolProtos {
       return builder;
     }
     /**
-     * Protobuf type {@code FragmentSpecProto}
+     * Protobuf type {@code VertexIdentifier}
      */
     public static final class Builder extends
         com.google.protobuf.GeneratedMessage.Builder<Builder>
-       implements org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProtoOrBuilder {
+       implements org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifierOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
-        return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_FragmentSpecProto_descriptor;
+        return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_VertexIdentifier_descriptor;
       }
 
       protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
-        return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_FragmentSpecProto_fieldAccessorTable
+        return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_VertexIdentifier_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
-                org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto.class, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto.Builder.class);
+                org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier.class, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier.Builder.class);
       }
 
-      // Construct using org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto.newBuilder()
+      // Construct using org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier.newBuilder()
       private Builder() {
         maybeForceBuilderInitialization();
       }
@@ -4222,10 +3690,6 @@ public final class LlapDaemonProtocolProtos {
       }
       private void maybeForceBuilderInitialization() {
         if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
-          getProcessorDescriptorFieldBuilder();
-          getInputSpecsFieldBuilder();
-          getOutputSpecsFieldBuilder();
-          getGroupedInputSpecsFieldBuilder();
         }
       }
       private static Builder create() {
@@ -4234,44 +3698,14 @@ public final class LlapDaemonProtocolProtos {
 
       public Builder clear() {
         super.clear();
-        fragmentIdentifierString_ = "";
+        applicationIdString_ = "";
         bitField0_ = (bitField0_ & ~0x00000001);
-        dagName_ = "";
+        appAttemptNumber_ = 0;
         bitField0_ = (bitField0_ & ~0x00000002);
         dagId_ = 0;
         bitField0_ = (bitField0_ & ~0x00000004);
-        vertexName_ = "";
+        vertexId_ = 0;
         bitField0_ = (bitField0_ & ~0x00000008);
-        if (processorDescriptorBuilder_ == null) {
-          processorDescriptor_ = org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.getDefaultInstance();
-        } else {
-          processorDescriptorBuilder_.clear();
-        }
-        bitField0_ = (bitField0_ & ~0x00000010);
-        if (inputSpecsBuilder_ == null) {
-          inputSpecs_ = java.util.Collections.emptyList();
-          bitField0_ = (bitField0_ & ~0x00000020);
-        } else {
-          inputSpecsBuilder_.clear();
-        }
-        if (outputSpecsBuilder_ == null) {
-          outputSpecs_ = java.util.Collections.emptyList();
-          bitField0_ = (bitField0_ & ~0x00000040);
-        } else {
-          outputSpecsBuilder_.clear();
-        }
-        if (groupedInputSpecsBuilder_ == null) {
-          groupedInputSpecs_ = java.util.Collections.emptyList();
-          bitField0_ = (bitField0_ & ~0x00000080);
-        } else {
-          groupedInputSpecsBuilder_.clear();
-        }
-        vertexParallelism_ = 0;
-        bitField0_ = (bitField0_ & ~0x00000100);
-        fragmentNumber_ = 0;
-        bitField0_ = (bitField0_ & ~0x00000200);
-        attemptNumber_ = 0;
-        bitField0_ = (bitField0_ & ~0x00000400);
         return this;
       }
 
@@ -4281,33 +3715,33 @@ public final class LlapDaemonProtocolProtos {
 
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
-        return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_FragmentSpecProto_descriptor;
+        return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.internal_static_VertexIdentifier_descriptor;
       }
 
-      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto getDefaultInstanceForType() {
-        return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto.getDefaultInstance();
+      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier getDefaultInstanceForType() {
+        return org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier.getDefaultInstance();
       }
 
-      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto build() {
-        org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto result = buildPartial();
+      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier build() {
+        org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier result = buildPartial();
         if (!result.isInitialized()) {
           throw newUninitializedMessageException(result);
         }
         return result;
       }
 
-      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto buildPartial() {
-        org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto result = new org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto(this);
+      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier buildPartial() {
+        org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier result = new org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier(this);
         int from_bitField0_ = bitField0_;
         int to_bitField0_ = 0;
         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
           to_bitField0_ |= 0x00000001;
         }
-        result.fragmentIdentifierString_ = fragmentIdentifierString_;
+        result.applicationIdString_ = applicationIdString_;
         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
           to_bitField0_ |= 0x00000002;
         }
-        result.dagName_ = dagName_;
+        result.appAttemptNumber_ = appAttemptNumber_;
         if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
           to_bitField0_ |= 0x00000004;
         }
@@ -4315,177 +3749,36 @@ public final class LlapDaemonProtocolProtos {
         if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
           to_bitField0_ |= 0x00000008;
         }
-        result.vertexName_ = vertexName_;
-        if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
-          to_bitField0_ |= 0x00000010;
-        }
-        if (processorDescriptorBuilder_ == null) {
-          result.processorDescriptor_ = processorDescriptor_;
-        } else {
-          result.processorDescriptor_ = processorDescriptorBuilder_.build();
-        }
-        if (inputSpecsBuilder_ == null) {
-          if (((bitField0_ & 0x00000020) == 0x00000020)) {
-            inputSpecs_ = java.util.Collections.unmodifiableList(inputSpecs_);
-            bitField0_ = (bitField0_ & ~0x00000020);
-          }
-          result.inputSpecs_ = inputSpecs_;
-        } else {
-          result.inputSpecs_ = inputSpecsBuilder_.build();
-        }
-        if (outputSpecsBuilder_ == null) {
-          if (((bitField0_ & 0x00000040) == 0x00000040)) {
-            outputSpecs_ = java.util.Collections.unmodifiableList(outputSpecs_);
-            bitField0_ = (bitField0_ & ~0x00000040);
-          }
-          result.outputSpecs_ = outputSpecs_;
-        } else {
-          result.outputSpecs_ = outputSpecsBuilder_.build();
-        }
-        if (groupedInputSpecsBuilder_ == null) {
-          if (((bitField0_ & 0x00000080) == 0x00000080)) {
-            groupedInputSpecs_ = java.util.Collections.unmodifiableList(groupedInputSpecs_);
-            bitField0_ = (bitField0_ & ~0x00000080);
-          }
-          result.groupedInputSpecs_ = groupedInputSpecs_;
-        } else {
-          result.groupedInputSpecs_ = groupedInputSpecsBuilder_.build();
-        }
-        if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
-          to_bitField0_ |= 0x00000020;
-        }
-        result.vertexParallelism_ = vertexParallelism_;
-        if (((from_bitField0_ & 0x00000200) == 0x00000200)) {
-          to_bitField0_ |= 0x00000040;
-        }
-        result.fragmentNumber_ = fragmentNumber_;
-        if (((from_bitField0_ & 0x00000400) == 0x00000400)) {
-          to_bitField0_ |= 0x00000080;
-        }
-        result.attemptNumber_ = attemptNumber_;
+        result.vertexId_ = vertexId_;
         result.bitField0_ = to_bitField0_;
         onBuilt();
         return result;
       }
 
       public Builder mergeFrom(com.google.protobuf.Message other) {
-        if (other instanceof org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto) {
-          return mergeFrom((org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto)other);
+        if (other instanceof org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier) {
+          return mergeFrom((org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier)other);
         } else {
           super.mergeFrom(other);
           return this;
         }
       }
 
-      public Builder mergeFrom(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto other) {
-        if (other == org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto.getDefaultInstance()) return this;
-        if (other.hasFragmentIdentifierString()) {
+      public Builder mergeFrom(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier other) {
+        if (other == org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier.getDefaultInstance()) return this;
+        if (other.hasApplicationIdString()) {
           bitField0_ |= 0x00000001;
-          fragmentIdentifierString_ = other.fragmentIdentifierString_;
+          applicationIdString_ = other.applicationIdString_;
           onChanged();
         }
-        if (other.hasDagName()) {
-          bitField0_ |= 0x00000002;
-          dagName_ = other.dagName_;
-          onChanged();
+        if (other.hasAppAttemptNumber()) {
+          setAppAttemptNumber(other.getAppAttemptNumber());
         }
         if (other.hasDagId()) {
           setDagId(other.getDagId());
         }
-        if (other.hasVertexName()) {
-          bitField0_ |= 0x00000008;
-          vertexName_ = other.vertexName_;
-          onChanged();
-        }
-        if (other.hasProcessorDescriptor()) {
-          mergeProcessorDescriptor(other.getProcessorDescriptor());
-        }
-        if (inputSpecsBuilder_ == null) {
-          if (!other.inputSpecs_.isEmpty()) {
-            if (inputSpecs_.isEmpty()) {
-              inputSpecs_ = other.inputSpecs_;
-              bitField0_ = (bitField0_ & ~0x00000020);
-            } else {
-              ensureInputSpecsIsMutable();
-              inputSpecs_.addAll(other.inputSpecs_);
-            }
-            onChanged();
-          }
-        } else {
-          if (!other.inputSpecs_.isEmpty()) {
-            if (inputSpecsBuilder_.isEmpty()) {
-              inputSpecsBuilder_.dispose();
-              inputSpecsBuilder_ = null;
-              inputSpecs_ = other.inputSpecs_;
-              bitField0_ = (bitField0_ & ~0x00000020);
-              inputSpecsBuilder_ = 
-                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
-                   getInputSpecsFieldBuilder() : null;
-            } else {
-              inputSpecsBuilder_.addAllMessages(other.inputSpecs_);
-            }
-          }
-        }
-        if (outputSpecsBuilder_ == null) {
-          if (!other.outputSpecs_.isEmpty()) {
-            if (outputSpecs_.isEmpty()) {
-              outputSpecs_ = other.outputSpecs_;
-              bitField0_ = (bitField0_ & ~0x00000040);
-            } else {
-              ensureOutputSpecsIsMutable();
-              outputSpecs_.addAll(other.outputSpecs_);
-            }
-            onChanged();
-          }
-        } else {
-          if (!other.outputSpecs_.isEmpty()) {
-            if (outputSpecsBuilder_.isEmpty()) {
-              outputSpecsBuilder_.dispose();
-              outputSpecsBuilder_ = null;
-              outputSpecs_ = other.outputSpecs_;
-              bitField0_ = (bitField0_ & ~0x00000040);
-              outputSpecsBuilder_ = 
-                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
-                   getOutputSpecsFieldBuilder() : null;
-            } else {
-              outputSpecsBuilder_.addAllMessages(other.outputSpecs_);
-            }
-          }
-        }
-        if (groupedInputSpecsBuilder_ == null) {
-          if (!other.groupedInputSpecs_.isEmpty()) {
-            if (groupedInputSpecs_.isEmpty()) {
-              groupedInputSpecs_ = other.groupedInputSpecs_;
-              bitField0_ = (bitField0_ & ~0x00000080);
-            } else {
-              ensureGroupedInputSpecsIsMutable();
-              groupedInputSpecs_.addAll(other.groupedInputSpecs_);
-            }
-            onChanged();
-          }
-        } else {
-          if (!other.groupedInputSpecs_.isEmpty()) {
-            if (groupedInputSpecsBuilder_.isEmpty()) {
-              groupedInputSpecsBuilder_.dispose();
-              groupedInputSpecsBuilder_ = null;
-              groupedInputSpecs_ = other.groupedInputSpecs_;
-              bitField0_ = (bitField0_ & ~0x00000080);
-              groupedInputSpecsBuilder_ = 
-                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
-                   getGroupedInputSpecsFieldBuilder() : null;
-            } else {
-              groupedInputSpecsBuilder_.addAllMessages(other.groupedInputSpecs_);
-            }
-          }
-        }
-        if (other.hasVertexParallelism()) {
-          setVertexParallelism(other.getVertexParallelism());
-        }
-        if (other.hasFragmentNumber()) {
-          setFragmentNumber(other.getFragmentNumber());
-        }
-        if (other.hasAttemptNumber()) {
-          setAttemptNumber(other.getAttemptNumber());
+        if (other.hasVertexId()) {
+          setVertexId(other.getVertexId());
         }
         this.mergeUnknownFields(other.getUnknownFields());
         return this;
@@ -4499,11 +3792,11 @@ public final class LlapDaemonProtocolProtos {
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
-        org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto parsedMessage = null;
+        org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier parsedMessage = null;
         try {
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-          parsedMessage = (org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.FragmentSpecProto) e.getUnfinishedMessage();
+          parsedMessage = (org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier) e.getUnfinishedMessage();
           throw e;
         } finally {
           if (parsedMessage != null) {
@@ -4514,170 +3807,129 @@ public final class LlapDaemonProtocolProtos {
       }
       private int bitField0_;
 
-      // optional string fragment_identifier_string = 1;
-      private java.lang.Object fragmentIdentifierString_ = "";
+      // optional string application_id_string = 1;
+      private java.lang.Object applicationIdString_ = "";
       /**
-       * <code>optional string fragment_identifier_string = 1;</code>
+       * <code>optional string application_id_string = 1;</code>
        */
-      public boolean hasFragmentIdentifierString() {
+      public boolean hasApplicationIdString() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
-       * <code>optional string fragment_identifier_string = 1;</code>
+       * <code>optional string application_id_string = 1;</code>
        */
-      public java.lang.String getFragmentIdentifierString() {
-        java.lang.Object ref = fragmentIdentifierString_;
+      public java.lang.String getApplicationIdString() {
+        java.lang.Object ref = applicationIdString_;
         if (!(ref instanceof java.lang.String)) {
           java.lang.String s = ((com.google.protobuf.ByteString) ref)
               .toStringUtf8();
-          fragmentIdentifierString_ = s;
+          applicationIdString_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
-       * <code>optional string fragment_identifier_string = 1;</code>
+       * <code>optional string application_id_string = 1;</code>
        */
       public com.google.protobuf.ByteString
-          getFragmentIdentifierStringBytes() {
-        java.lang.Object ref = fragmentIdentifierString_;
+          getApplicationIdStringBytes() {
+        java.lang.Object ref = applicationIdString_;
         if (ref instanceof String) {
           com.google.protobuf.ByteString b = 
               com.google.protobuf.ByteString.copyFromUtf8(
                   (java.lang.String) ref);
-          fragmentIdentifierString_ = b;
+          applicationIdString_ = b;
           return b;
         } else {
           return (com.google.protobuf.ByteString) ref;
         }
       }
       /**
-       * <code>optional string fragment_identifier_string = 1;</code>
+       * <code>optional string application_id_string = 1;</code>
        */
-      public Builder setFragmentIdentifierString(
+      public Builder setApplicationIdString(
           java.lang.String value) {
         if (value == null) {
     throw new NullPointerException();
   }
   bitField0_ |= 0x00000001;
-        fragmentIdentifierString_ = value;
+        applicationIdString_ = value;
         onChanged();
         return this;
       }
       /**
-       * <code>optional string fragment_identifier_string = 1;</code>
+       * <code>optional string application_id_string = 1;</code>
        */
-      public Builder clearFragmentIdentifierString() {
+      public Builder clearApplicationIdString() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        fragmentIdentifierString_ = getDefaultInstance().getFragmentIdentifierString();
+        applicationIdString_ = getDefaultInstance().getApplicationIdString();
         onChanged();
         return this;
       }
       /**
-       * <code>optional string fragment_identifier_string = 1;</code>
+       * <code>optional string application_id_string = 1;</code>
        */
-      public Builder setFragmentIdentifierStringBytes(
+      public Builder setApplicationIdStringBytes(
           com.google.protobuf.ByteString value) {
         if (value == null) {
     throw new NullPointerException();
   }
   bitField0_ |= 0x00000001;
-        fragmentIdentifierString_ = value;
+        applicationIdString_ = value;
         onChanged();
         return this;
       }
 
-      // optional string dag_name = 2;
-      private java.lang.Object dagName_ = "";
+      // optional int32 app_attempt_number = 2;
+      private int appAttemptNumber_ ;
       /**
-       * <code>optional string dag_name = 2;</code>
+       * <code>optional int32 app_attempt_number = 2;</code>
        */
-      public boolean hasDagName() {
+      public boolean hasAppAttemptNumber() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
-       * <code>optional string dag_name = 2;</code>
+       * <code>optional int32 app_attempt_number = 2;</code>
        */
-      public java.lang.String getDagName() {
-        java.lang.Object ref = dagName_;
-        if (!(ref instanceof java.lang.String)) {
-          java.lang.String s = ((com.google.protobuf.ByteString) ref)
-              .toStringUtf8();
-          dagName_ = s;
-          return s;
-        } else {
-          return (java.lang.String) ref;
-        }
+      public int getAppAttemptNumber() {
+        return appAttemptNumber_;
       }
       /**
-       * <code>optional string dag_name = 2;</code>
+       * <code>optional int32 app_attempt_number = 2;</code>
        */
-      public com.google.protobuf.ByteString
-          getDagNameBytes() {
-        java.lang.Object ref = dagName_;
-        if (ref instanceof String) {
-          com.google.protobuf.ByteString b = 
-              com.google.protobuf.ByteString.copyFromUtf8(
-                  (java.lang.String) ref);
-          dagName_ = b;
-          return b;
-        } else {
-          return (com.google.protobuf.ByteString) ref;
-        }
-      }
-      /**
-       * <code>optional string dag_name = 2;</code>
-       */
-      public Builder setDagName(
-          java.lang.String value) {
-        if (value == null) {
-    throw new NullPointerException();
-  }
-  bitField0_ |= 0x00000002;
-        dagName_ = value;
+      public Builder setAppAttemptNumber(int value) {
+        bitField0_ |= 0x00000002;
+        appAttemptNumber_ = value;
         onChanged();
         return this;
       }
       /**
-       * <code>optional string dag_name = 2;</code>
+       * <code>optional int32 app_attempt_number = 2;</code>
        */
-      public Builder clearDagName() {
+      public Builder clearAppAttemptNumber() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        dagName_ = getDefaultInstance().getDagName();
-        onChanged();
-        return this;
-      }
-      /**
-       * <code>optional string dag_name = 2;</code>
-       */
-      public Builder setDagNameBytes(
-          com.google.protobuf.ByteString value) {
-        if (value == null) {
-    throw new NullPointerException();
-  }
-  bitField0_ |= 0x00000002;
-        dagName_ = value;
+        appAttemptNumber_ = 0;
         onChanged();
         return this;
       }
 
-      // optional int32 dag_id = 11;
+      // optional int32 dag_id = 3;
       private int dagId_ ;
       /**
-       * <code>optional int32 dag_id = 11;</code>
+       * <code>optional int32 dag_id = 3;</code>
        */
       public boolean hasDagId() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
-       * <code>optional int32 dag_id = 11;</code>
+       * <code>optional int32 dag_id = 3;</code>
        */
       public int getDagId() {
         return dagId_;
       }
       /**
-       * <code>optional int32 dag_id = 11;</code>
+       * <code>optional int32 dag_id = 3;</code>
        */
       public Builder setDagId(int value) {
         bitField0_ |= 0x00000004;
@@ -4686,7 +3938,7 @@ public final class LlapDaemonProtocolProtos {
         return this;
       }
       /**
-       * <code>optional int32 dag_id = 11;</code>
+       * <code>optional int32 dag_id = 3;</code>
        */
       public Builder clearDagId() {
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -4695,1025 +3947,3552 @@ public final class LlapDaemonProtocolProtos {
         return this;
       }
 
-      // optional string vertex_name = 3;
-      private java.lang.Object vertexName_ = "";
+      // optional int32 vertex_id = 4;
+      private int vertexId_ ;
       /**
-       * <code>optional string vertex_name = 3;</code>
+       * <code>optional int32 vertex_id = 4;</code>
        */
-      public boolean hasVertexName() {
+      public boolean hasVertexId() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
-       * <code>optional string vertex_name = 3;</code>
-       */
-      public java.lang.String getVertexName() {
-        java.lang.Object ref = vertexName_;
-        if (!(ref instanceof java.lang.String)) {
-          java.lang.String s = ((com.google.protobuf.ByteString) ref)
-              .toStringUtf8();
-          vertexName_ = s;
-          return s;
-        } else {
-          return (java.lang.String) ref;
-        }
-      }
-      /**
-       * <code>optional string vertex_name = 3;</code>
+       * <code>optional int32 vertex_id = 4;</code>
        */
-      public com.google.protobuf.ByteString
-          getVertexNameBytes() {
-        java.lang.Object ref = vertexName_;
-        if (ref instanceof String) {
-          com.google.protobuf.ByteString b = 
-              com.google.protobuf.ByteString.copyFromUtf8(
-                  (java.lang.String) ref);
-          vertexName_ = b;
-          return b;
-        } else {
-          return (com.google.protobuf.ByteString) ref;
-        }
+      public int getVertexId() {
+        return vertexId_;
       }
       /**
-       * <code>optional string vertex_name = 3;</code>
+       * <code>optional int32 vertex_id = 4;</code>
        */
-      public Builder setVertexName(
-          java.lang.String value) {
-        if (value == null) {
-    throw new NullPointerException();
-  }
-  bitField0_ |= 0x00000008;
-        vertexName_ = value;
+      public Builder setVertexId(int value) {
+        bitField0_ |= 0x00000008;
+        vertexId_ = value;
         onChanged();
         return this;
       }
       /**
-       * <code>optional string vertex_name = 3;</code>
+       * <code>optional int32 vertex_id = 4;</code>
        */
-      public Builder clearVertexName() {
+      public Builder clearVertexId() {
         bitField0_ = (bitField0_ & ~0x00000008);
-        vertexName_ = getDefaultInstance().getVertexName();
+        vertexId_ = 0;
         onChanged();
         return this;
       }
-      /**
-       * <code>optional string vertex_name = 3;</code>
-       */
-      public Builder setVertexNameBytes(
-          com.google.protobuf.ByteString value) {
-        if (value == null) {
-    throw new NullPointerException();
+
+      // @@protoc_insertion_point(builder_scope:VertexIdentifier)
+    }
+
+    static {
+      defaultInstance = new VertexIdentifier(true);
+      defaultInstance.initFields();
+    }
+
+    // @@protoc_insertion_point(class_scope:VertexIdentifier)
   }
-  bitField0_ |= 0x00000008;
-        vertexName_ = value;
-        onChanged();
-        return this;
-      }
 
-      // optional .EntityDescriptorProto processor_descriptor = 4;
-      private org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto processorDescriptor_ = org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.getDefaultInstance();
-      private com.google.protobuf.SingleFieldBuilder<
-          org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.Builder, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProtoOrBuilder> processorDescriptorBuilder_;
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      public boolean hasProcessorDescriptor() {
-        return ((bitField0_ & 0x00000010) == 0x00000010);
-      }
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto getProcessorDescriptor() {
-        if (processorDescriptorBuilder_ == null) {
-          return processorDescriptor_;
-        } else {
-          return processorDescriptorBuilder_.getMessage();
-        }
-      }
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      public Builder setProcessorDescriptor(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto value) {
-        if (processorDescriptorBuilder_ == null) {
-          if (value == null) {
-            throw new NullPointerException();
-          }
-          processorDescriptor_ = value;
-          onChanged();
-        } else {
-          processorDescriptorBuilder_.setMessage(value);
-        }
-        bitField0_ |= 0x00000010;
-        return this;
-      }
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      public Builder setProcessorDescriptor(
-          org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.Builder builderForValue) {
-        if (processorDescriptorBuilder_ == null) {
-          processorDescriptor_ = builderForValue.build();
-          onChanged();
-        } else {
-          processorDescriptorBuilder_.setMessage(builderForValue.build());
-        }
-        bitField0_ |= 0x00000010;
-        return this;
-      }
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      public Builder mergeProcessorDescriptor(org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto value) {
-        if (processorDescriptorBuilder_ == null) {
-          if (((bitField0_ & 0x00000010) == 0x00000010) &&
-              processorDescriptor_ != org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.getDefaultInstance()) {
-            processorDescriptor_ =
-              org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.newBuilder(processorDescriptor_).mergeFrom(value).buildPartial();
-          } else {
-            processorDescriptor_ = value;
-          }
-          onChanged();
-        } else {
-          processorDescriptorBuilder_.mergeFrom(value);
-        }
-        bitField0_ |= 0x00000010;
-        return this;
-      }
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      public Builder clearProcessorDescriptor() {
-        if (processorDescriptorBuilder_ == null) {
-          processorDescriptor_ = org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.getDefaultInstance();
-          onChanged();
-        } else {
-          processorDescriptorBuilder_.clear();
-        }
-        bitField0_ = (bitField0_ & ~0x00000010);
-        return this;
-      }
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.Builder getProcessorDescriptorBuilder() {
-        bitField0_ |= 0x00000010;
-        onChanged();
-        return getProcessorDescriptorFieldBuilder().getBuilder();
-      }
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProtoOrBuilder getProcessorDescriptorOrBuilder() {
-        if (processorDescriptorBuilder_ != null) {
-          return processorDescriptorBuilder_.getMessageOrBuilder();
-        } else {
-          return processorDescriptor_;
-        }
-      }
-      /**
-       * <code>optional .EntityDescriptorProto processor_descriptor = 4;</code>
-       */
-      private com.google.protobuf.SingleFieldBuilder<
-          org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.Builder, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProtoOrBuilder> 
-          getProcessorDescriptorFieldBuilder() {
-        if (processorDescriptorBuilder_ == null) {
-          processorDescriptorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto.Builder, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProtoOrBuilder>(
-                  processorDescriptor_,
-                  getParentForChildren(),
-                  isClean());
-          processorDescriptor_ = null;
-        }
-        return processorDescriptorBuilder_;
-      }
+  public interface SignableVertexSpecOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
-      // repeated .IOSpecProto input_specs = 5;
-      private java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> inputSpecs_ =
-        java.util.Collections.emptyList();
-      private void ensureInputSpecsIsMutable() {
-        if (!((bitField0_ & 0x00000020) == 0x00000020)) {
-          inputSpecs_ = new java.util.ArrayList<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto>(inputSpecs_);
-          bitField0_ |= 0x00000020;
-         }
-      }
+    // optional string user = 1;
+    /**
+     * <code>optional string user = 1;</code>
+     */
+    boolean hasUser();
+    /**
+     * <code>optional string user = 1;</code>
+     */
+    java.lang.String getUser();
+    /**
+     * <code>optional string user = 1;</code>
+     */
+    com.google.protobuf.ByteString
+        getUserBytes();
 
-      private com.google.protobuf.RepeatedFieldBuilder<
-          org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto.Builder, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder> inputSpecsBuilder_;
+    // optional int64 signatureKeyId = 2;
+    /**
+     * <code>optional int64 signatureKeyId = 2;</code>
+     */
+    boolean hasSignatureKeyId();
+    /**
+     * <code>optional int64 signatureKeyId = 2;</code>
+     */
+    long getSignatureKeyId();
 
-      /**
-       * <code>repeated .IOSpecProto input_specs = 5;</code>
-       */
-      public java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> getInputSpecsList() {
-        if (inputSpecsBuilder_ == null) {
-          return java.util.Collections.unmodifiableList(inputSpecs_);
-        } else {
-          return inputSpecsBuilder_.getMessageList();
-        }
-      }
-      /**
-       * <code>repeated .IOSpecProto input_specs = 5;</code>
-       */
-      public int getInputSpecsCount() {
-        if (inputSpecsBuilder_ == null) {
-          return inputSpecs_.size();
-        } else {
-          return inputSpecsBuilder_.getCount();
-        }
-      }
-      /**
-       * <code>repeated .IOSpecProto input_specs = 5;</code>
-       */
-      public org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto getInputSpecs(int index) {
-        if (inputSpecsBuilder_ == null) {
-          return inputSpecs_.get(index);
-        } else {
-          return inputSpecsBuilder_.getMessage(index);
-        }
-      }
-      /**
-       * <code>repeated .IOSpecProto input_specs = 5;</code>
-       */
-      public Builder setInputSpecs(
-          int index, org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto value) {
-        if (inputSpecsBuilder_ == null) {
+    // optional .VertexIdentifier vertexIdentifier = 3;
+    /**
+     * <code>optional .VertexIdentifier vertexIdentifier = 3;</code>
+     */
+    boolean hasVertexIdentifier();
+    /**
+     * <code>optional .VertexIdentifier vertexIdentifier = 3;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifier getVertexIdentifier();
+    /**
+     * <code>optional .VertexIdentifier vertexIdentifier = 3;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.VertexIdentifierOrBuilder getVertexIdentifierOrBuilder();
+
+    // optional string dag_name = 4;
+    /**
+     * <code>optional string dag_name = 4;</code>
+     *
+     * <pre>
+     * Display names cannot be modified by the client for now. If needed, they should be sent to HS2 who will put them here.
+     * </pre>
+     */
+    boolean hasDagName();
+    /**
+     * <code>optional string dag_name = 4;</code>
+     *
+     * <pre>
+     * Display names cannot be modified by the client for now. If needed, they should be sent to HS2 who will put them here.
+     * </pre>
+     */
+    java.lang.String getDagName();
+    /**
+     * <code>optional string dag_name = 4;</code>
+     *
+     * <pre>
+     * Display names cannot be modified by the client for now. If needed, they should be sent to HS2 who will put them here.
+     * </pre>
+     */
+    com.google.protobuf.ByteString
+        getDagNameBytes();
+
+    // optional string vertex_name = 5;
+    /**
+     * <code>optional string vertex_name = 5;</code>
+     */
+    boolean hasVertexName();
+    /**
+     * <code>optional string vertex_name = 5;</code>
+     */
+    java.lang.String getVertexName();
+    /**
+     * <code>optional string vertex_name = 5;</code>
+     */
+    com.google.protobuf.ByteString
+        getVertexNameBytes();
+
+    // optional string token_identifier = 6;
+    /**
+     * <code>optional string token_identifier = 6;</code>
+     *
+     * <pre>
+     * The core vertex stuff 
+     * </pre>
+     */
+    boolean hasTokenIdentifier();
+    /**
+     * <code>optional string token_identifier = 6;</code>
+     *
+     * <pre>
+     * The core vertex stuff 
+     * </pre>
+     */
+    java.lang.String getTokenIdentifier();
+    /**
+     * <code>optional string token_identifier = 6;</code>
+     *
+     * <pre>
+     * The core vertex stuff 
+     * </pre>
+     */
+    com.google.protobuf.ByteString
+        getTokenIdentifierBytes();
+
+    // optional .EntityDescriptorProto processor_descriptor = 7;
+    /**
+     * <code>optional .EntityDescriptorProto processor_descriptor = 7;</code>
+     */
+    boolean hasProcessorDescriptor();
+    /**
+     * <code>optional .EntityDescriptorProto processor_descriptor = 7;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProto getProcessorDescriptor();
+    /**
+     * <code>optional .EntityDescriptorProto processor_descriptor = 7;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.EntityDescriptorProtoOrBuilder getProcessorDescriptorOrBuilder();
+
+    // repeated .IOSpecProto input_specs = 8;
+    /**
+     * <code>repeated .IOSpecProto input_specs = 8;</code>
+     */
+    java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> 
+        getInputSpecsList();
+    /**
+     * <code>repeated .IOSpecProto input_specs = 8;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto getInputSpecs(int index);
+    /**
+     * <code>repeated .IOSpecProto input_specs = 8;</code>
+     */
+    int getInputSpecsCount();
+    /**
+     * <code>repeated .IOSpecProto input_specs = 8;</code>
+     */
+    java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder> 
+        getInputSpecsOrBuilderList();
+    /**
+     * <code>repeated .IOSpecProto input_specs = 8;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder getInputSpecsOrBuilder(
+        int index);
+
+    // repeated .IOSpecProto output_specs = 9;
+    /**
+     * <code>repeated .IOSpecProto output_specs = 9;</code>
+     */
+    java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto> 
+        getOutputSpecsList();
+    /**
+     * <code>repeated .IOSpecProto output_specs = 9;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProto getOutputSpecs(int index);
+    /**
+     * <code>repeated .IOSpecProto output_specs = 9;</code>
+     */
+    int getOutputSpecsCount();
+    /**
+     * <code>repeated .IOSpecProto output_specs = 9;</code>
+     */
+    java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder> 
+        getOutputSpecsOrBuilderList();
+    /**
+     * <code>repeated .IOSpecProto output_specs = 9;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.IOSpecProtoOrBuilder getOutputSpecsOrBuilder(
+        int index);
+
+    // repeated .GroupInputSpecProto grouped_input_specs = 10;
+    /**
+     * <code>repeated .GroupInputSpecProto grouped_input_specs = 10;</code>
+     */
+    java.util.List<org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto> 
+        getGroupedInputSpecsList();
+    /**
+     * <code>repeated .GroupInputSpecProto grouped_input_specs = 10;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProto getGroupedInputSpecs(int index);
+    /**
+     * <code>repeated .GroupInputSpecProto grouped_input_specs = 10;</code>
+     */
+    int getGroupedInputSpecsCount();
+    /**
+     * <code>repeated .GroupInputSpecProto grouped_input_specs = 10;</code>
+     */
+    java.util.List<? extends org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProtoOrBuilder> 
+        getGroupedInputSpecsOrBuilderList();
+    /**
+     * <code>repeated .GroupInputSpecProto grouped_input_specs = 10;</code>
+     */
+    org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos.GroupInputSpecProtoOrBuilder getGroupedInputSpecsOrBuilder(
+        int index);
+
+    // optional int32 vertex_parallelism = 11;
+    /**
+     * <code>optional int32 vertex_parallelism = 11;</code>
+     *
+     * <pre>
+     * An internal field required for Tez.
+     * </pre>
+     */
+    boolean hasVertexParallelism();
+    /**
+     * <code>optional int32 vertex_parallelism = 11;</code>
+     *
+     * <pre>
+     * An internal field required for Tez.
+     * </pre>
+     */
+    int getVertexParallelism();
+  }
+  /**
+   * Protobuf type {@code SignableVertexSpec}
+   *
+   * <pre>
+   * The part of SubmitWork that can be signed 
+   * </pre>
+   */
+  public static final class SignableVertexSpec extends
+      com.google.protobuf.GeneratedMessage
+      implements SignableVertexSpecOrBuilder {
+    // Use SignableVertexSpec.newBuilder() to construct.
+    private SignableVertexSpec(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
+      super(builder);
+      this.unknownFields = builder.getUnknownFields();
+    }
+    private SignableVertexSpec(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final SignableVertexSpec defaultInstance;
+    public static SignableVertexSpec getDefaultInstance() {
+      return defaultInstance;
+    }
+
+    public SignableVertexSpec getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
+    @java.lang.Override
+    public final com.google.protobuf.UnknownFieldSet
+        getUnknownFields() {
+      return this.unknownFields;
+    }
+    private SignableVertexSpec(
+        com.google.protobuf.CodedInputStream input,
+        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+        throws com.google.protobuf.InvalidProtocolBufferException {
+      initFields();
+      int mutable_bitField0_ = 0;
+      c

<TRUNCATED>