FAQ
Repository: hive
Updated Branches:
   refs/heads/master 1ff3b142f -> fe5cd560c


http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java
----------------------------------------------------------------------
diff --git a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java
index 47cdaf4..9c56ee3 100644
--- a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java
+++ b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java
@@ -42,6 +42,9 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
    private static final org.apache.thrift.protocol.TField STATE_FIELD_DESC = new org.apache.thrift.protocol.TField("state", org.apache.thrift.protocol.TType.I32, (short)2);
    private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)3);
    private static final org.apache.thrift.protocol.TField HOSTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("hostname", org.apache.thrift.protocol.TType.STRING, (short)4);
+ private static final org.apache.thrift.protocol.TField AGENT_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("agentInfo", org.apache.thrift.protocol.TType.STRING, (short)5);
+ private static final org.apache.thrift.protocol.TField HEARTBEAT_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("heartbeatCount", org.apache.thrift.protocol.TType.I32, (short)6);
+ private static final org.apache.thrift.protocol.TField META_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("metaInfo", org.apache.thrift.protocol.TType.STRING, (short)7);

    private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
    static {
@@ -53,6 +56,9 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
    private TxnState state; // required
    private String user; // required
    private String hostname; // required
+ private String agentInfo; // optional
+ private int heartbeatCount; // optional
+ private String metaInfo; // optional

    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
    public enum _Fields implements org.apache.thrift.TFieldIdEnum {
@@ -63,7 +69,10 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
       */
      STATE((short)2, "state"),
      USER((short)3, "user"),
- HOSTNAME((short)4, "hostname");
+ HOSTNAME((short)4, "hostname"),
+ AGENT_INFO((short)5, "agentInfo"),
+ HEARTBEAT_COUNT((short)6, "heartbeatCount"),
+ META_INFO((short)7, "metaInfo");

      private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

@@ -86,6 +95,12 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
            return USER;
          case 4: // HOSTNAME
            return HOSTNAME;
+ case 5: // AGENT_INFO
+ return AGENT_INFO;
+ case 6: // HEARTBEAT_COUNT
+ return HEARTBEAT_COUNT;
+ case 7: // META_INFO
+ return META_INFO;
          default:
            return null;
        }
@@ -127,7 +142,9 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields

    // isset id assignments
    private static final int __ID_ISSET_ID = 0;
+ private static final int __HEARTBEATCOUNT_ISSET_ID = 1;
    private byte __isset_bitfield = 0;
+ private static final _Fields optionals[] = {_Fields.AGENT_INFO,_Fields.HEARTBEAT_COUNT,_Fields.META_INFO};
    public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
    static {
      Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@ -139,11 +156,21 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
      tmpMap.put(_Fields.HOSTNAME, new org.apache.thrift.meta_data.FieldMetaData("hostname", org.apache.thrift.TFieldRequirementType.REQUIRED,
          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.AGENT_INFO, new org.apache.thrift.meta_data.FieldMetaData("agentInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.HEARTBEAT_COUNT, new org.apache.thrift.meta_data.FieldMetaData("heartbeatCount", org.apache.thrift.TFieldRequirementType.OPTIONAL,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+ tmpMap.put(_Fields.META_INFO, new org.apache.thrift.meta_data.FieldMetaData("metaInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
      metaDataMap = Collections.unmodifiableMap(tmpMap);
      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TxnInfo.class, metaDataMap);
    }

    public TxnInfo() {
+ this.agentInfo = "Unknown";
+
+ this.heartbeatCount = 0;
+
    }

    public TxnInfo(
@@ -175,6 +202,13 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
      if (other.isSetHostname()) {
        this.hostname = other.hostname;
      }
+ if (other.isSetAgentInfo()) {
+ this.agentInfo = other.agentInfo;
+ }
+ this.heartbeatCount = other.heartbeatCount;
+ if (other.isSetMetaInfo()) {
+ this.metaInfo = other.metaInfo;
+ }
    }

    public TxnInfo deepCopy() {
@@ -188,6 +222,11 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
      this.state = null;
      this.user = null;
      this.hostname = null;
+ this.agentInfo = "Unknown";
+
+ this.heartbeatCount = 0;
+
+ this.metaInfo = null;
    }

    public long getId() {
@@ -289,6 +328,74 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
      }
    }

+ public String getAgentInfo() {
+ return this.agentInfo;
+ }
+
+ public void setAgentInfo(String agentInfo) {
+ this.agentInfo = agentInfo;
+ }
+
+ public void unsetAgentInfo() {
+ this.agentInfo = null;
+ }
+
+ /** Returns true if field agentInfo is set (has been assigned a value) and false otherwise */
+ public boolean isSetAgentInfo() {
+ return this.agentInfo != null;
+ }
+
+ public void setAgentInfoIsSet(boolean value) {
+ if (!value) {
+ this.agentInfo = null;
+ }
+ }
+
+ public int getHeartbeatCount() {
+ return this.heartbeatCount;
+ }
+
+ public void setHeartbeatCount(int heartbeatCount) {
+ this.heartbeatCount = heartbeatCount;
+ setHeartbeatCountIsSet(true);
+ }
+
+ public void unsetHeartbeatCount() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID);
+ }
+
+ /** Returns true if field heartbeatCount is set (has been assigned a value) and false otherwise */
+ public boolean isSetHeartbeatCount() {
+ return EncodingUtils.testBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID);
+ }
+
+ public void setHeartbeatCountIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID, value);
+ }
+
+ public String getMetaInfo() {
+ return this.metaInfo;
+ }
+
+ public void setMetaInfo(String metaInfo) {
+ this.metaInfo = metaInfo;
+ }
+
+ public void unsetMetaInfo() {
+ this.metaInfo = null;
+ }
+
+ /** Returns true if field metaInfo is set (has been assigned a value) and false otherwise */
+ public boolean isSetMetaInfo() {
+ return this.metaInfo != null;
+ }
+
+ public void setMetaInfoIsSet(boolean value) {
+ if (!value) {
+ this.metaInfo = null;
+ }
+ }
+
    public void setFieldValue(_Fields field, Object value) {
      switch (field) {
      case ID:
@@ -323,6 +430,30 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
        }
        break;

+ case AGENT_INFO:
+ if (value == null) {
+ unsetAgentInfo();
+ } else {
+ setAgentInfo((String)value);
+ }
+ break;
+
+ case HEARTBEAT_COUNT:
+ if (value == null) {
+ unsetHeartbeatCount();
+ } else {
+ setHeartbeatCount((Integer)value);
+ }
+ break;
+
+ case META_INFO:
+ if (value == null) {
+ unsetMetaInfo();
+ } else {
+ setMetaInfo((String)value);
+ }
+ break;
+
      }
    }

@@ -340,6 +471,15 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
      case HOSTNAME:
        return getHostname();

+ case AGENT_INFO:
+ return getAgentInfo();
+
+ case HEARTBEAT_COUNT:
+ return getHeartbeatCount();
+
+ case META_INFO:
+ return getMetaInfo();
+
      }
      throw new IllegalStateException();
    }
@@ -359,6 +499,12 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
        return isSetUser();
      case HOSTNAME:
        return isSetHostname();
+ case AGENT_INFO:
+ return isSetAgentInfo();
+ case HEARTBEAT_COUNT:
+ return isSetHeartbeatCount();
+ case META_INFO:
+ return isSetMetaInfo();
      }
      throw new IllegalStateException();
    }
@@ -412,6 +558,33 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
          return false;
      }

+ boolean this_present_agentInfo = true && this.isSetAgentInfo();
+ boolean that_present_agentInfo = true && that.isSetAgentInfo();
+ if (this_present_agentInfo || that_present_agentInfo) {
+ if (!(this_present_agentInfo && that_present_agentInfo))
+ return false;
+ if (!this.agentInfo.equals(that.agentInfo))
+ return false;
+ }
+
+ boolean this_present_heartbeatCount = true && this.isSetHeartbeatCount();
+ boolean that_present_heartbeatCount = true && that.isSetHeartbeatCount();
+ if (this_present_heartbeatCount || that_present_heartbeatCount) {
+ if (!(this_present_heartbeatCount && that_present_heartbeatCount))
+ return false;
+ if (this.heartbeatCount != that.heartbeatCount)
+ return false;
+ }
+
+ boolean this_present_metaInfo = true && this.isSetMetaInfo();
+ boolean that_present_metaInfo = true && that.isSetMetaInfo();
+ if (this_present_metaInfo || that_present_metaInfo) {
+ if (!(this_present_metaInfo && that_present_metaInfo))
+ return false;
+ if (!this.metaInfo.equals(that.metaInfo))
+ return false;
+ }
+
      return true;
    }

@@ -439,6 +612,21 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
      if (present_hostname)
        list.add(hostname);

+ boolean present_agentInfo = true && (isSetAgentInfo());
+ list.add(present_agentInfo);
+ if (present_agentInfo)
+ list.add(agentInfo);
+
+ boolean present_heartbeatCount = true && (isSetHeartbeatCount());
+ list.add(present_heartbeatCount);
+ if (present_heartbeatCount)
+ list.add(heartbeatCount);
+
+ boolean present_metaInfo = true && (isSetMetaInfo());
+ list.add(present_metaInfo);
+ if (present_metaInfo)
+ list.add(metaInfo);
+
      return list.hashCode();
    }

@@ -490,6 +678,36 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
          return lastComparison;
        }
      }
+ lastComparison = Boolean.valueOf(isSetAgentInfo()).compareTo(other.isSetAgentInfo());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetAgentInfo()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.agentInfo, other.agentInfo);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetHeartbeatCount()).compareTo(other.isSetHeartbeatCount());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetHeartbeatCount()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.heartbeatCount, other.heartbeatCount);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetMetaInfo()).compareTo(other.isSetMetaInfo());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetMetaInfo()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.metaInfo, other.metaInfo);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
      return 0;
    }

@@ -537,6 +755,32 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
        sb.append(this.hostname);
      }
      first = false;
+ if (isSetAgentInfo()) {
+ if (!first) sb.append(", ");
+ sb.append("agentInfo:");
+ if (this.agentInfo == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.agentInfo);
+ }
+ first = false;
+ }
+ if (isSetHeartbeatCount()) {
+ if (!first) sb.append(", ");
+ sb.append("heartbeatCount:");
+ sb.append(this.heartbeatCount);
+ first = false;
+ }
+ if (isSetMetaInfo()) {
+ if (!first) sb.append(", ");
+ sb.append("metaInfo:");
+ if (this.metaInfo == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.metaInfo);
+ }
+ first = false;
+ }
      sb.append(")");
      return sb.toString();
    }
@@ -630,6 +874,30 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
              }
              break;
+ case 5: // AGENT_INFO
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.agentInfo = iprot.readString();
+ struct.setAgentInfoIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 6: // HEARTBEAT_COUNT
+ if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+ struct.heartbeatCount = iprot.readI32();
+ struct.setHeartbeatCountIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 7: // META_INFO
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.metaInfo = iprot.readString();
+ struct.setMetaInfoIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
            default:
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
          }
@@ -661,6 +929,25 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
          oprot.writeString(struct.hostname);
          oprot.writeFieldEnd();
        }
+ if (struct.agentInfo != null) {
+ if (struct.isSetAgentInfo()) {
+ oprot.writeFieldBegin(AGENT_INFO_FIELD_DESC);
+ oprot.writeString(struct.agentInfo);
+ oprot.writeFieldEnd();
+ }
+ }
+ if (struct.isSetHeartbeatCount()) {
+ oprot.writeFieldBegin(HEARTBEAT_COUNT_FIELD_DESC);
+ oprot.writeI32(struct.heartbeatCount);
+ oprot.writeFieldEnd();
+ }
+ if (struct.metaInfo != null) {
+ if (struct.isSetMetaInfo()) {
+ oprot.writeFieldBegin(META_INFO_FIELD_DESC);
+ oprot.writeString(struct.metaInfo);
+ oprot.writeFieldEnd();
+ }
+ }
        oprot.writeFieldStop();
        oprot.writeStructEnd();
      }
@@ -682,6 +969,26 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
        oprot.writeI32(struct.state.getValue());
        oprot.writeString(struct.user);
        oprot.writeString(struct.hostname);
+ BitSet optionals = new BitSet();
+ if (struct.isSetAgentInfo()) {
+ optionals.set(0);
+ }
+ if (struct.isSetHeartbeatCount()) {
+ optionals.set(1);
+ }
+ if (struct.isSetMetaInfo()) {
+ optionals.set(2);
+ }
+ oprot.writeBitSet(optionals, 3);
+ if (struct.isSetAgentInfo()) {
+ oprot.writeString(struct.agentInfo);
+ }
+ if (struct.isSetHeartbeatCount()) {
+ oprot.writeI32(struct.heartbeatCount);
+ }
+ if (struct.isSetMetaInfo()) {
+ oprot.writeString(struct.metaInfo);
+ }
      }

      @Override
@@ -695,6 +1002,19 @@ public class TxnInfo implements org.apache.thrift.TBase<TxnInfo, TxnInfo._Fields
        struct.setUserIsSet(true);
        struct.hostname = iprot.readString();
        struct.setHostnameIsSet(true);
+ BitSet incoming = iprot.readBitSet(3);
+ if (incoming.get(0)) {
+ struct.agentInfo = iprot.readString();
+ struct.setAgentInfoIsSet(true);
+ }
+ if (incoming.get(1)) {
+ struct.heartbeatCount = iprot.readI32();
+ struct.setHeartbeatCountIsSet(true);
+ }
+ if (incoming.get(2)) {
+ struct.metaInfo = iprot.readString();
+ struct.setMetaInfoIsSet(true);
+ }
      }
    }


http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-php/metastore/Types.php
----------------------------------------------------------------------
diff --git a/metastore/src/gen/thrift/gen-php/metastore/Types.php b/metastore/src/gen/thrift/gen-php/metastore/Types.php
index fe4c966..380e6d0 100644
--- a/metastore/src/gen/thrift/gen-php/metastore/Types.php
+++ b/metastore/src/gen/thrift/gen-php/metastore/Types.php
@@ -10085,6 +10085,18 @@ class TxnInfo {
     * @var string
     */
    public $hostname = null;
+ /**
+ * @var string
+ */
+ public $agentInfo = "Unknown";
+ /**
+ * @var int
+ */
+ public $heartbeatCount = 0;
+ /**
+ * @var string
+ */
+ public $metaInfo = null;

    public function __construct($vals=null) {
      if (!isset(self::$_TSPEC)) {
@@ -10105,6 +10117,18 @@ class TxnInfo {
            'var' => 'hostname',
            'type' => TType::STRING,
            ),
+ 5 => array(
+ 'var' => 'agentInfo',
+ 'type' => TType::STRING,
+ ),
+ 6 => array(
+ 'var' => 'heartbeatCount',
+ 'type' => TType::I32,
+ ),
+ 7 => array(
+ 'var' => 'metaInfo',
+ 'type' => TType::STRING,
+ ),
          );
      }
      if (is_array($vals)) {
@@ -10120,6 +10144,15 @@ class TxnInfo {
        if (isset($vals['hostname'])) {
          $this->hostname = $vals['hostname'];
        }
+ if (isset($vals['agentInfo'])) {
+ $this->agentInfo = $vals['agentInfo'];
+ }
+ if (isset($vals['heartbeatCount'])) {
+ $this->heartbeatCount = $vals['heartbeatCount'];
+ }
+ if (isset($vals['metaInfo'])) {
+ $this->metaInfo = $vals['metaInfo'];
+ }
      }
    }

@@ -10170,6 +10203,27 @@ class TxnInfo {
              $xfer += $input->skip($ftype);
            }
            break;
+ case 5:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->agentInfo);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 6:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->heartbeatCount);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 7:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->metaInfo);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
          default:
            $xfer += $input->skip($ftype);
            break;
@@ -10203,6 +10257,21 @@ class TxnInfo {
        $xfer += $output->writeString($this->hostname);
        $xfer += $output->writeFieldEnd();
      }
+ if ($this->agentInfo !== null) {
+ $xfer += $output->writeFieldBegin('agentInfo', TType::STRING, 5);
+ $xfer += $output->writeString($this->agentInfo);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->heartbeatCount !== null) {
+ $xfer += $output->writeFieldBegin('heartbeatCount', TType::I32, 6);
+ $xfer += $output->writeI32($this->heartbeatCount);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->metaInfo !== null) {
+ $xfer += $output->writeFieldBegin('metaInfo', TType::STRING, 7);
+ $xfer += $output->writeString($this->metaInfo);
+ $xfer += $output->writeFieldEnd();
+ }
      $xfer += $output->writeFieldStop();
      $xfer += $output->writeStructEnd();
      return $xfer;
@@ -10483,6 +10552,10 @@ class OpenTxnRequest {
     * @var string
     */
    public $hostname = null;
+ /**
+ * @var string
+ */
+ public $agentInfo = "Unknown";

    public function __construct($vals=null) {
      if (!isset(self::$_TSPEC)) {
@@ -10499,6 +10572,10 @@ class OpenTxnRequest {
            'var' => 'hostname',
            'type' => TType::STRING,
            ),
+ 4 => array(
+ 'var' => 'agentInfo',
+ 'type' => TType::STRING,
+ ),
          );
      }
      if (is_array($vals)) {
@@ -10511,6 +10588,9 @@ class OpenTxnRequest {
        if (isset($vals['hostname'])) {
          $this->hostname = $vals['hostname'];
        }
+ if (isset($vals['agentInfo'])) {
+ $this->agentInfo = $vals['agentInfo'];
+ }
      }
    }

@@ -10554,6 +10634,13 @@ class OpenTxnRequest {
              $xfer += $input->skip($ftype);
            }
            break;
+ case 4:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->agentInfo);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
          default:
            $xfer += $input->skip($ftype);
            break;
@@ -10582,6 +10669,11 @@ class OpenTxnRequest {
        $xfer += $output->writeString($this->hostname);
        $xfer += $output->writeFieldEnd();
      }
+ if ($this->agentInfo !== null) {
+ $xfer += $output->writeFieldBegin('agentInfo', TType::STRING, 4);
+ $xfer += $output->writeString($this->agentInfo);
+ $xfer += $output->writeFieldEnd();
+ }
      $xfer += $output->writeFieldStop();
      $xfer += $output->writeStructEnd();
      return $xfer;
@@ -11026,6 +11118,10 @@ class LockRequest {
     * @var string
     */
    public $hostname = null;
+ /**
+ * @var string
+ */
+ public $agentInfo = "Unknown";

    public function __construct($vals=null) {
      if (!isset(self::$_TSPEC)) {
@@ -11051,6 +11147,10 @@ class LockRequest {
            'var' => 'hostname',
            'type' => TType::STRING,
            ),
+ 5 => array(
+ 'var' => 'agentInfo',
+ 'type' => TType::STRING,
+ ),
          );
      }
      if (is_array($vals)) {
@@ -11066,6 +11166,9 @@ class LockRequest {
        if (isset($vals['hostname'])) {
          $this->hostname = $vals['hostname'];
        }
+ if (isset($vals['agentInfo'])) {
+ $this->agentInfo = $vals['agentInfo'];
+ }
      }
    }

@@ -11127,6 +11230,13 @@ class LockRequest {
              $xfer += $input->skip($ftype);
            }
            break;
+ case 5:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->agentInfo);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
          default:
            $xfer += $input->skip($ftype);
            break;
@@ -11172,6 +11282,11 @@ class LockRequest {
        $xfer += $output->writeString($this->hostname);
        $xfer += $output->writeFieldEnd();
      }
+ if ($this->agentInfo !== null) {
+ $xfer += $output->writeFieldBegin('agentInfo', TType::STRING, 5);
+ $xfer += $output->writeString($this->agentInfo);
+ $xfer += $output->writeFieldEnd();
+ }
      $xfer += $output->writeFieldStop();
      $xfer += $output->writeStructEnd();
      return $xfer;
@@ -11284,6 +11399,14 @@ class CheckLockRequest {
     * @var int
     */
    public $lockid = null;
+ /**
+ * @var int
+ */
+ public $txnid = null;
+ /**
+ * @var int
+ */
+ public $elapsed_ms = null;

    public function __construct($vals=null) {
      if (!isset(self::$_TSPEC)) {
@@ -11292,12 +11415,26 @@ class CheckLockRequest {
            'var' => 'lockid',
            'type' => TType::I64,
            ),
+ 2 => array(
+ 'var' => 'txnid',
+ 'type' => TType::I64,
+ ),
+ 3 => array(
+ 'var' => 'elapsed_ms',
+ 'type' => TType::I64,
+ ),
          );
      }
      if (is_array($vals)) {
        if (isset($vals['lockid'])) {
          $this->lockid = $vals['lockid'];
        }
+ if (isset($vals['txnid'])) {
+ $this->txnid = $vals['txnid'];
+ }
+ if (isset($vals['elapsed_ms'])) {
+ $this->elapsed_ms = $vals['elapsed_ms'];
+ }
      }
    }

@@ -11327,6 +11464,20 @@ class CheckLockRequest {
              $xfer += $input->skip($ftype);
            }
            break;
+ case 2:
+ if ($ftype == TType::I64) {
+ $xfer += $input->readI64($this->txnid);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::I64) {
+ $xfer += $input->readI64($this->elapsed_ms);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
          default:
            $xfer += $input->skip($ftype);
            break;
@@ -11345,6 +11496,16 @@ class CheckLockRequest {
        $xfer += $output->writeI64($this->lockid);
        $xfer += $output->writeFieldEnd();
      }
+ if ($this->txnid !== null) {
+ $xfer += $output->writeFieldBegin('txnid', TType::I64, 2);
+ $xfer += $output->writeI64($this->txnid);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->elapsed_ms !== null) {
+ $xfer += $output->writeFieldBegin('elapsed_ms', TType::I64, 3);
+ $xfer += $output->writeI64($this->elapsed_ms);
+ $xfer += $output->writeFieldEnd();
+ }
      $xfer += $output->writeFieldStop();
      $xfer += $output->writeStructEnd();
      return $xfer;
@@ -11430,12 +11591,58 @@ class UnlockRequest {
  class ShowLocksRequest {
    static $_TSPEC;

+ /**
+ * @var string
+ */
+ public $dbname = null;
+ /**
+ * @var string
+ */
+ public $tablename = null;
+ /**
+ * @var string
+ */
+ public $partname = null;
+ /**
+ * @var bool
+ */
+ public $isExtended = false;

- public function __construct() {
+ public function __construct($vals=null) {
      if (!isset(self::$_TSPEC)) {
        self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'dbname',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'tablename',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'partname',
+ 'type' => TType::STRING,
+ ),
+ 4 => array(
+ 'var' => 'isExtended',
+ 'type' => TType::BOOL,
+ ),
          );
      }
+ if (is_array($vals)) {
+ if (isset($vals['dbname'])) {
+ $this->dbname = $vals['dbname'];
+ }
+ if (isset($vals['tablename'])) {
+ $this->tablename = $vals['tablename'];
+ }
+ if (isset($vals['partname'])) {
+ $this->partname = $vals['partname'];
+ }
+ if (isset($vals['isExtended'])) {
+ $this->isExtended = $vals['isExtended'];
+ }
+ }
    }

    public function getName() {
@@ -11457,6 +11664,34 @@ class ShowLocksRequest {
        }
        switch ($fid)
        {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->dbname);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->tablename);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->partname);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 4:
+ if ($ftype == TType::BOOL) {
+ $xfer += $input->readBool($this->isExtended);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
          default:
            $xfer += $input->skip($ftype);
            break;
@@ -11470,6 +11705,26 @@ class ShowLocksRequest {
    public function write($output) {
      $xfer = 0;
      $xfer += $output->writeStructBegin('ShowLocksRequest');
+ if ($this->dbname !== null) {
+ $xfer += $output->writeFieldBegin('dbname', TType::STRING, 1);
+ $xfer += $output->writeString($this->dbname);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->tablename !== null) {
+ $xfer += $output->writeFieldBegin('tablename', TType::STRING, 2);
+ $xfer += $output->writeString($this->tablename);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->partname !== null) {
+ $xfer += $output->writeFieldBegin('partname', TType::STRING, 3);
+ $xfer += $output->writeString($this->partname);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->isExtended !== null) {
+ $xfer += $output->writeFieldBegin('isExtended', TType::BOOL, 4);
+ $xfer += $output->writeBool($this->isExtended);
+ $xfer += $output->writeFieldEnd();
+ }
      $xfer += $output->writeFieldStop();
      $xfer += $output->writeStructEnd();
      return $xfer;
@@ -11524,6 +11779,26 @@ class ShowLocksResponseElement {
     * @var string
     */
    public $hostname = null;
+ /**
+ * @var int
+ */
+ public $heartbeatCount = 0;
+ /**
+ * @var string
+ */
+ public $agentInfo = null;
+ /**
+ * @var int
+ */
+ public $blockedByExtId = null;
+ /**
+ * @var int
+ */
+ public $blockedByIntId = null;
+ /**
+ * @var int
+ */
+ public $lockIdInternal = null;

    public function __construct($vals=null) {
      if (!isset(self::$_TSPEC)) {
@@ -11572,6 +11847,26 @@ class ShowLocksResponseElement {
            'var' => 'hostname',
            'type' => TType::STRING,
            ),
+ 12 => array(
+ 'var' => 'heartbeatCount',
+ 'type' => TType::I32,
+ ),
+ 13 => array(
+ 'var' => 'agentInfo',
+ 'type' => TType::STRING,
+ ),
+ 14 => array(
+ 'var' => 'blockedByExtId',
+ 'type' => TType::I64,
+ ),
+ 15 => array(
+ 'var' => 'blockedByIntId',
+ 'type' => TType::I64,
+ ),
+ 16 => array(
+ 'var' => 'lockIdInternal',
+ 'type' => TType::I64,
+ ),
          );
      }
      if (is_array($vals)) {
@@ -11608,6 +11903,21 @@ class ShowLocksResponseElement {
        if (isset($vals['hostname'])) {
          $this->hostname = $vals['hostname'];
        }
+ if (isset($vals['heartbeatCount'])) {
+ $this->heartbeatCount = $vals['heartbeatCount'];
+ }
+ if (isset($vals['agentInfo'])) {
+ $this->agentInfo = $vals['agentInfo'];
+ }
+ if (isset($vals['blockedByExtId'])) {
+ $this->blockedByExtId = $vals['blockedByExtId'];
+ }
+ if (isset($vals['blockedByIntId'])) {
+ $this->blockedByIntId = $vals['blockedByIntId'];
+ }
+ if (isset($vals['lockIdInternal'])) {
+ $this->lockIdInternal = $vals['lockIdInternal'];
+ }
      }
    }

@@ -11707,6 +12017,41 @@ class ShowLocksResponseElement {
              $xfer += $input->skip($ftype);
            }
            break;
+ case 12:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->heartbeatCount);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 13:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->agentInfo);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 14:
+ if ($ftype == TType::I64) {
+ $xfer += $input->readI64($this->blockedByExtId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 15:
+ if ($ftype == TType::I64) {
+ $xfer += $input->readI64($this->blockedByIntId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 16:
+ if ($ftype == TType::I64) {
+ $xfer += $input->readI64($this->lockIdInternal);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
          default:
            $xfer += $input->skip($ftype);
            break;
@@ -11775,6 +12120,31 @@ class ShowLocksResponseElement {
        $xfer += $output->writeString($this->hostname);
        $xfer += $output->writeFieldEnd();
      }
+ if ($this->heartbeatCount !== null) {
+ $xfer += $output->writeFieldBegin('heartbeatCount', TType::I32, 12);
+ $xfer += $output->writeI32($this->heartbeatCount);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->agentInfo !== null) {
+ $xfer += $output->writeFieldBegin('agentInfo', TType::STRING, 13);
+ $xfer += $output->writeString($this->agentInfo);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->blockedByExtId !== null) {
+ $xfer += $output->writeFieldBegin('blockedByExtId', TType::I64, 14);
+ $xfer += $output->writeI64($this->blockedByExtId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->blockedByIntId !== null) {
+ $xfer += $output->writeFieldBegin('blockedByIntId', TType::I64, 15);
+ $xfer += $output->writeI64($this->blockedByIntId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->lockIdInternal !== null) {
+ $xfer += $output->writeFieldBegin('lockIdInternal', TType::I64, 16);
+ $xfer += $output->writeI64($this->lockIdInternal);
+ $xfer += $output->writeFieldEnd();
+ }
      $xfer += $output->writeFieldStop();
      $xfer += $output->writeStructEnd();
      return $xfer;
@@ -12499,6 +12869,22 @@ class ShowCompactResponseElement {
     * @var string
     */
    public $runAs = null;
+ /**
+ * @var int
+ */
+ public $hightestTxnId = null;
+ /**
+ * @var string
+ */
+ public $metaInfo = null;
+ /**
+ * @var int
+ */
+ public $endTime = null;
+ /**
+ * @var string
+ */
+ public $hadoopJobId = "None";

    public function __construct($vals=null) {
      if (!isset(self::$_TSPEC)) {
@@ -12535,6 +12921,22 @@ class ShowCompactResponseElement {
            'var' => 'runAs',
            'type' => TType::STRING,
            ),
+ 9 => array(
+ 'var' => 'hightestTxnId',
+ 'type' => TType::I64,
+ ),
+ 10 => array(
+ 'var' => 'metaInfo',
+ 'type' => TType::STRING,
+ ),
+ 11 => array(
+ 'var' => 'endTime',
+ 'type' => TType::I64,
+ ),
+ 12 => array(
+ 'var' => 'hadoopJobId',
+ 'type' => TType::STRING,
+ ),
          );
      }
      if (is_array($vals)) {
@@ -12562,6 +12964,18 @@ class ShowCompactResponseElement {
        if (isset($vals['runAs'])) {
          $this->runAs = $vals['runAs'];
        }
+ if (isset($vals['hightestTxnId'])) {
+ $this->hightestTxnId = $vals['hightestTxnId'];
+ }
+ if (isset($vals['metaInfo'])) {
+ $this->metaInfo = $vals['metaInfo'];
+ }
+ if (isset($vals['endTime'])) {
+ $this->endTime = $vals['endTime'];
+ }
+ if (isset($vals['hadoopJobId'])) {
+ $this->hadoopJobId = $vals['hadoopJobId'];
+ }
      }
    }

@@ -12640,6 +13054,34 @@ class ShowCompactResponseElement {
              $xfer += $input->skip($ftype);
            }
            break;
+ case 9:
+ if ($ftype == TType::I64) {
+ $xfer += $input->readI64($this->hightestTxnId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 10:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->metaInfo);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 11:
+ if ($ftype == TType::I64) {
+ $xfer += $input->readI64($this->endTime);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 12:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->hadoopJobId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
          default:
            $xfer += $input->skip($ftype);
            break;
@@ -12693,6 +13135,26 @@ class ShowCompactResponseElement {
        $xfer += $output->writeString($this->runAs);
        $xfer += $output->writeFieldEnd();
      }
+ if ($this->hightestTxnId !== null) {
+ $xfer += $output->writeFieldBegin('hightestTxnId', TType::I64, 9);
+ $xfer += $output->writeI64($this->hightestTxnId);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->metaInfo !== null) {
+ $xfer += $output->writeFieldBegin('metaInfo', TType::STRING, 10);
+ $xfer += $output->writeString($this->metaInfo);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->endTime !== null) {
+ $xfer += $output->writeFieldBegin('endTime', TType::I64, 11);
+ $xfer += $output->writeI64($this->endTime);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->hadoopJobId !== null) {
+ $xfer += $output->writeFieldBegin('hadoopJobId', TType::STRING, 12);
+ $xfer += $output->writeString($this->hadoopJobId);
+ $xfer += $output->writeFieldEnd();
+ }
      $xfer += $output->writeFieldStop();
      $xfer += $output->writeStructEnd();
      return $xfer;

http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py
----------------------------------------------------------------------
diff --git a/metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py b/metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py
index fbeab5e..409c247 100644
--- a/metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py
+++ b/metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py
@@ -6917,6 +6917,9 @@ class TxnInfo:
     - state
     - user
     - hostname
+ - agentInfo
+ - heartbeatCount
+ - metaInfo
    """

    thrift_spec = (
@@ -6925,13 +6928,19 @@ class TxnInfo:
      (2, TType.I32, 'state', None, None, ), # 2
      (3, TType.STRING, 'user', None, None, ), # 3
      (4, TType.STRING, 'hostname', None, None, ), # 4
+ (5, TType.STRING, 'agentInfo', None, "Unknown", ), # 5
+ (6, TType.I32, 'heartbeatCount', None, 0, ), # 6
+ (7, TType.STRING, 'metaInfo', None, None, ), # 7
    )

- def __init__(self, id=None, state=None, user=None, hostname=None,):
+ def __init__(self, id=None, state=None, user=None, hostname=None, agentInfo=thrift_spec[5][4], heartbeatCount=thrift_spec[6][4], metaInfo=None,):
      self.id = id
      self.state = state
      self.user = user
      self.hostname = hostname
+ self.agentInfo = agentInfo
+ self.heartbeatCount = heartbeatCount
+ self.metaInfo = metaInfo

    def read(self, iprot):
      if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -6962,6 +6971,21 @@ class TxnInfo:
            self.hostname = iprot.readString()
          else:
            iprot.skip(ftype)
+ elif fid == 5:
+ if ftype == TType.STRING:
+ self.agentInfo = iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 6:
+ if ftype == TType.I32:
+ self.heartbeatCount = iprot.readI32()
+ else:
+ iprot.skip(ftype)
+ elif fid == 7:
+ if ftype == TType.STRING:
+ self.metaInfo = iprot.readString()
+ else:
+ iprot.skip(ftype)
        else:
          iprot.skip(ftype)
        iprot.readFieldEnd()
@@ -6988,6 +7012,18 @@ class TxnInfo:
        oprot.writeFieldBegin('hostname', TType.STRING, 4)
        oprot.writeString(self.hostname)
        oprot.writeFieldEnd()
+ if self.agentInfo is not None:
+ oprot.writeFieldBegin('agentInfo', TType.STRING, 5)
+ oprot.writeString(self.agentInfo)
+ oprot.writeFieldEnd()
+ if self.heartbeatCount is not None:
+ oprot.writeFieldBegin('heartbeatCount', TType.I32, 6)
+ oprot.writeI32(self.heartbeatCount)
+ oprot.writeFieldEnd()
+ if self.metaInfo is not None:
+ oprot.writeFieldBegin('metaInfo', TType.STRING, 7)
+ oprot.writeString(self.metaInfo)
+ oprot.writeFieldEnd()
      oprot.writeFieldStop()
      oprot.writeStructEnd()

@@ -7009,6 +7045,9 @@ class TxnInfo:
      value = (value * 31) ^ hash(self.state)
      value = (value * 31) ^ hash(self.user)
      value = (value * 31) ^ hash(self.hostname)
+ value = (value * 31) ^ hash(self.agentInfo)
+ value = (value * 31) ^ hash(self.heartbeatCount)
+ value = (value * 31) ^ hash(self.metaInfo)
      return value

    def __repr__(self):
@@ -7209,6 +7248,7 @@ class OpenTxnRequest:
     - num_txns
     - user
     - hostname
+ - agentInfo
    """

    thrift_spec = (
@@ -7216,12 +7256,14 @@ class OpenTxnRequest:
      (1, TType.I32, 'num_txns', None, None, ), # 1
      (2, TType.STRING, 'user', None, None, ), # 2
      (3, TType.STRING, 'hostname', None, None, ), # 3
+ (4, TType.STRING, 'agentInfo', None, "Unknown", ), # 4
    )

- def __init__(self, num_txns=None, user=None, hostname=None,):
+ def __init__(self, num_txns=None, user=None, hostname=None, agentInfo=thrift_spec[4][4],):
      self.num_txns = num_txns
      self.user = user
      self.hostname = hostname
+ self.agentInfo = agentInfo

    def read(self, iprot):
      if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -7247,6 +7289,11 @@ class OpenTxnRequest:
            self.hostname = iprot.readString()
          else:
            iprot.skip(ftype)
+ elif fid == 4:
+ if ftype == TType.STRING:
+ self.agentInfo = iprot.readString()
+ else:
+ iprot.skip(ftype)
        else:
          iprot.skip(ftype)
        iprot.readFieldEnd()
@@ -7269,6 +7316,10 @@ class OpenTxnRequest:
        oprot.writeFieldBegin('hostname', TType.STRING, 3)
        oprot.writeString(self.hostname)
        oprot.writeFieldEnd()
+ if self.agentInfo is not None:
+ oprot.writeFieldBegin('agentInfo', TType.STRING, 4)
+ oprot.writeString(self.agentInfo)
+ oprot.writeFieldEnd()
      oprot.writeFieldStop()
      oprot.writeStructEnd()

@@ -7287,6 +7338,7 @@ class OpenTxnRequest:
      value = (value * 31) ^ hash(self.num_txns)
      value = (value * 31) ^ hash(self.user)
      value = (value * 31) ^ hash(self.hostname)
+ value = (value * 31) ^ hash(self.agentInfo)
      return value

    def __repr__(self):
@@ -7639,6 +7691,7 @@ class LockRequest:
     - txnid
     - user
     - hostname
+ - agentInfo
    """

    thrift_spec = (
@@ -7647,13 +7700,15 @@ class LockRequest:
      (2, TType.I64, 'txnid', None, None, ), # 2
      (3, TType.STRING, 'user', None, None, ), # 3
      (4, TType.STRING, 'hostname', None, None, ), # 4
+ (5, TType.STRING, 'agentInfo', None, "Unknown", ), # 5
    )

- def __init__(self, component=None, txnid=None, user=None, hostname=None,):
+ def __init__(self, component=None, txnid=None, user=None, hostname=None, agentInfo=thrift_spec[5][4],):
      self.component = component
      self.txnid = txnid
      self.user = user
      self.hostname = hostname
+ self.agentInfo = agentInfo

    def read(self, iprot):
      if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -7690,6 +7745,11 @@ class LockRequest:
            self.hostname = iprot.readString()
          else:
            iprot.skip(ftype)
+ elif fid == 5:
+ if ftype == TType.STRING:
+ self.agentInfo = iprot.readString()
+ else:
+ iprot.skip(ftype)
        else:
          iprot.skip(ftype)
        iprot.readFieldEnd()
@@ -7719,6 +7779,10 @@ class LockRequest:
        oprot.writeFieldBegin('hostname', TType.STRING, 4)
        oprot.writeString(self.hostname)
        oprot.writeFieldEnd()
+ if self.agentInfo is not None:
+ oprot.writeFieldBegin('agentInfo', TType.STRING, 5)
+ oprot.writeString(self.agentInfo)
+ oprot.writeFieldEnd()
      oprot.writeFieldStop()
      oprot.writeStructEnd()

@@ -7738,6 +7802,7 @@ class LockRequest:
      value = (value * 31) ^ hash(self.txnid)
      value = (value * 31) ^ hash(self.user)
      value = (value * 31) ^ hash(self.hostname)
+ value = (value * 31) ^ hash(self.agentInfo)
      return value

    def __repr__(self):
@@ -7837,15 +7902,21 @@ class CheckLockRequest:
    """
    Attributes:
     - lockid
+ - txnid
+ - elapsed_ms
    """

    thrift_spec = (
      None, # 0
      (1, TType.I64, 'lockid', None, None, ), # 1
+ (2, TType.I64, 'txnid', None, None, ), # 2
+ (3, TType.I64, 'elapsed_ms', None, None, ), # 3
    )

- def __init__(self, lockid=None,):
+ def __init__(self, lockid=None, txnid=None, elapsed_ms=None,):
      self.lockid = lockid
+ self.txnid = txnid
+ self.elapsed_ms = elapsed_ms

    def read(self, iprot):
      if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -7861,6 +7932,16 @@ class CheckLockRequest:
            self.lockid = iprot.readI64()
          else:
            iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.I64:
+ self.txnid = iprot.readI64()
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.I64:
+ self.elapsed_ms = iprot.readI64()
+ else:
+ iprot.skip(ftype)
        else:
          iprot.skip(ftype)
        iprot.readFieldEnd()
@@ -7875,6 +7956,14 @@ class CheckLockRequest:
        oprot.writeFieldBegin('lockid', TType.I64, 1)
        oprot.writeI64(self.lockid)
        oprot.writeFieldEnd()
+ if self.txnid is not None:
+ oprot.writeFieldBegin('txnid', TType.I64, 2)
+ oprot.writeI64(self.txnid)
+ oprot.writeFieldEnd()
+ if self.elapsed_ms is not None:
+ oprot.writeFieldBegin('elapsed_ms', TType.I64, 3)
+ oprot.writeI64(self.elapsed_ms)
+ oprot.writeFieldEnd()
      oprot.writeFieldStop()
      oprot.writeStructEnd()

@@ -7887,6 +7976,8 @@ class CheckLockRequest:
    def __hash__(self):
      value = 17
      value = (value * 31) ^ hash(self.lockid)
+ value = (value * 31) ^ hash(self.txnid)
+ value = (value * 31) ^ hash(self.elapsed_ms)
      return value

    def __repr__(self):
@@ -7968,10 +8059,28 @@ class UnlockRequest:
      return not (self == other)

  class ShowLocksRequest:
+ """
+ Attributes:
+ - dbname
+ - tablename
+ - partname
+ - isExtended
+ """

    thrift_spec = (
+ None, # 0
+ (1, TType.STRING, 'dbname', None, None, ), # 1
+ (2, TType.STRING, 'tablename', None, None, ), # 2
+ (3, TType.STRING, 'partname', None, None, ), # 3
+ (4, TType.BOOL, 'isExtended', None, False, ), # 4
    )

+ def __init__(self, dbname=None, tablename=None, partname=None, isExtended=thrift_spec[4][4],):
+ self.dbname = dbname
+ self.tablename = tablename
+ self.partname = partname
+ self.isExtended = isExtended
+
    def read(self, iprot):
      if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
        fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
@@ -7981,6 +8090,26 @@ class ShowLocksRequest:
        (fname, ftype, fid) = iprot.readFieldBegin()
        if ftype == TType.STOP:
          break
+ if fid == 1:
+ if ftype == TType.STRING:
+ self.dbname = iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRING:
+ self.tablename = iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.STRING:
+ self.partname = iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 4:
+ if ftype == TType.BOOL:
+ self.isExtended = iprot.readBool()
+ else:
+ iprot.skip(ftype)
        else:
          iprot.skip(ftype)
        iprot.readFieldEnd()
@@ -7991,6 +8120,22 @@ class ShowLocksRequest:
        oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
        return
      oprot.writeStructBegin('ShowLocksRequest')
+ if self.dbname is not None:
+ oprot.writeFieldBegin('dbname', TType.STRING, 1)
+ oprot.writeString(self.dbname)
+ oprot.writeFieldEnd()
+ if self.tablename is not None:
+ oprot.writeFieldBegin('tablename', TType.STRING, 2)
+ oprot.writeString(self.tablename)
+ oprot.writeFieldEnd()
+ if self.partname is not None:
+ oprot.writeFieldBegin('partname', TType.STRING, 3)
+ oprot.writeString(self.partname)
+ oprot.writeFieldEnd()
+ if self.isExtended is not None:
+ oprot.writeFieldBegin('isExtended', TType.BOOL, 4)
+ oprot.writeBool(self.isExtended)
+ oprot.writeFieldEnd()
      oprot.writeFieldStop()
      oprot.writeStructEnd()

@@ -8000,6 +8145,10 @@ class ShowLocksRequest:

    def __hash__(self):
      value = 17
+ value = (value * 31) ^ hash(self.dbname)
+ value = (value * 31) ^ hash(self.tablename)
+ value = (value * 31) ^ hash(self.partname)
+ value = (value * 31) ^ hash(self.isExtended)
      return value

    def __repr__(self):
@@ -8027,6 +8176,11 @@ class ShowLocksResponseElement:
     - acquiredat
     - user
     - hostname
+ - heartbeatCount
+ - agentInfo
+ - blockedByExtId
+ - blockedByIntId
+ - lockIdInternal
    """

    thrift_spec = (
@@ -8042,9 +8196,14 @@ class ShowLocksResponseElement:
      (9, TType.I64, 'acquiredat', None, None, ), # 9
      (10, TType.STRING, 'user', None, None, ), # 10
      (11, TType.STRING, 'hostname', None, None, ), # 11
+ (12, TType.I32, 'heartbeatCount', None, 0, ), # 12
+ (13, TType.STRING, 'agentInfo', None, None, ), # 13
+ (14, TType.I64, 'blockedByExtId', None, None, ), # 14
+ (15, TType.I64, 'blockedByIntId', None, None, ), # 15
+ (16, TType.I64, 'lockIdInternal', None, None, ), # 16
    )

- def __init__(self, lockid=None, dbname=None, tablename=None, partname=None, state=None, type=None, txnid=None, lastheartbeat=None, acquiredat=None, user=None, hostname=None,):
+ def __init__(self, lockid=None, dbname=None, tablename=None, partname=None, state=None, type=None, txnid=None, lastheartbeat=None, acquiredat=None, user=None, hostname=None, heartbeatCount=thrift_spec[12][4], agentInfo=None, blockedByExtId=None, blockedByIntId=None, lockIdInternal=None,):
      self.lockid = lockid
      self.dbname = dbname
      self.tablename = tablename
@@ -8056,6 +8215,11 @@ class ShowLocksResponseElement:
      self.acquiredat = acquiredat
      self.user = user
      self.hostname = hostname
+ self.heartbeatCount = heartbeatCount
+ self.agentInfo = agentInfo
+ self.blockedByExtId = blockedByExtId
+ self.blockedByIntId = blockedByIntId
+ self.lockIdInternal = lockIdInternal

    def read(self, iprot):
      if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -8121,6 +8285,31 @@ class ShowLocksResponseElement:
            self.hostname = iprot.readString()
          else:
            iprot.skip(ftype)
+ elif fid == 12:
+ if ftype == TType.I32:
+ self.heartbeatCount = iprot.readI32()
+ else:
+ iprot.skip(ftype)
+ elif fid == 13:
+ if ftype == TType.STRING:
+ self.agentInfo = iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 14:
+ if ftype == TType.I64:
+ self.blockedByExtId = iprot.readI64()
+ else:
+ iprot.skip(ftype)
+ elif fid == 15:
+ if ftype == TType.I64:
+ self.blockedByIntId = iprot.readI64()
+ else:
+ iprot.skip(ftype)
+ elif fid == 16:
+ if ftype == TType.I64:
+ self.lockIdInternal = iprot.readI64()
+ else:
+ iprot.skip(ftype)
        else:
          iprot.skip(ftype)
        iprot.readFieldEnd()
@@ -8175,6 +8364,26 @@ class ShowLocksResponseElement:
        oprot.writeFieldBegin('hostname', TType.STRING, 11)
        oprot.writeString(self.hostname)
        oprot.writeFieldEnd()
+ if self.heartbeatCount is not None:
+ oprot.writeFieldBegin('heartbeatCount', TType.I32, 12)
+ oprot.writeI32(self.heartbeatCount)
+ oprot.writeFieldEnd()
+ if self.agentInfo is not None:
+ oprot.writeFieldBegin('agentInfo', TType.STRING, 13)
+ oprot.writeString(self.agentInfo)
+ oprot.writeFieldEnd()
+ if self.blockedByExtId is not None:
+ oprot.writeFieldBegin('blockedByExtId', TType.I64, 14)
+ oprot.writeI64(self.blockedByExtId)
+ oprot.writeFieldEnd()
+ if self.blockedByIntId is not None:
+ oprot.writeFieldBegin('blockedByIntId', TType.I64, 15)
+ oprot.writeI64(self.blockedByIntId)
+ oprot.writeFieldEnd()
+ if self.lockIdInternal is not None:
+ oprot.writeFieldBegin('lockIdInternal', TType.I64, 16)
+ oprot.writeI64(self.lockIdInternal)
+ oprot.writeFieldEnd()
      oprot.writeFieldStop()
      oprot.writeStructEnd()

@@ -8209,6 +8418,11 @@ class ShowLocksResponseElement:
      value = (value * 31) ^ hash(self.acquiredat)
      value = (value * 31) ^ hash(self.user)
      value = (value * 31) ^ hash(self.hostname)
+ value = (value * 31) ^ hash(self.heartbeatCount)
+ value = (value * 31) ^ hash(self.agentInfo)
+ value = (value * 31) ^ hash(self.blockedByExtId)
+ value = (value * 31) ^ hash(self.blockedByIntId)
+ value = (value * 31) ^ hash(self.lockIdInternal)
      return value

    def __repr__(self):
@@ -8734,6 +8948,10 @@ class ShowCompactResponseElement:
     - workerid
     - start
     - runAs
+ - hightestTxnId
+ - metaInfo
+ - endTime
+ - hadoopJobId
    """

    thrift_spec = (
@@ -8746,9 +8964,13 @@ class ShowCompactResponseElement:
      (6, TType.STRING, 'workerid', None, None, ), # 6
      (7, TType.I64, 'start', None, None, ), # 7
      (8, TType.STRING, 'runAs', None, None, ), # 8
+ (9, TType.I64, 'hightestTxnId', None, None, ), # 9
+ (10, TType.STRING, 'metaInfo', None, None, ), # 10
+ (11, TType.I64, 'endTime', None, None, ), # 11
+ (12, TType.STRING, 'hadoopJobId', None, "None", ), # 12
    )

- def __init__(self, dbname=None, tablename=None, partitionname=None, type=None, state=None, workerid=None, start=None, runAs=None,):
+ def __init__(self, dbname=None, tablename=None, partitionname=None, type=None, state=None, workerid=None, start=None, runAs=None, hightestTxnId=None, metaInfo=None, endTime=None, hadoopJobId=thrift_spec[12][4],):
      self.dbname = dbname
      self.tablename = tablename
      self.partitionname = partitionname
@@ -8757,6 +8979,10 @@ class ShowCompactResponseElement:
      self.workerid = workerid
      self.start = start
      self.runAs = runAs
+ self.hightestTxnId = hightestTxnId
+ self.metaInfo = metaInfo
+ self.endTime = endTime
+ self.hadoopJobId = hadoopJobId

    def read(self, iprot):
      if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -8807,6 +9033,26 @@ class ShowCompactResponseElement:
            self.runAs = iprot.readString()
          else:
            iprot.skip(ftype)
+ elif fid == 9:
+ if ftype == TType.I64:
+ self.hightestTxnId = iprot.readI64()
+ else:
+ iprot.skip(ftype)
+ elif fid == 10:
+ if ftype == TType.STRING:
+ self.metaInfo = iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 11:
+ if ftype == TType.I64:
+ self.endTime = iprot.readI64()
+ else:
+ iprot.skip(ftype)
+ elif fid == 12:
+ if ftype == TType.STRING:
+ self.hadoopJobId = iprot.readString()
+ else:
+ iprot.skip(ftype)
        else:
          iprot.skip(ftype)
        iprot.readFieldEnd()
@@ -8849,6 +9095,22 @@ class ShowCompactResponseElement:
        oprot.writeFieldBegin('runAs', TType.STRING, 8)
        oprot.writeString(self.runAs)
        oprot.writeFieldEnd()
+ if self.hightestTxnId is not None:
+ oprot.writeFieldBegin('hightestTxnId', TType.I64, 9)
+ oprot.writeI64(self.hightestTxnId)
+ oprot.writeFieldEnd()
+ if self.metaInfo is not None:
+ oprot.writeFieldBegin('metaInfo', TType.STRING, 10)
+ oprot.writeString(self.metaInfo)
+ oprot.writeFieldEnd()
+ if self.endTime is not None:
+ oprot.writeFieldBegin('endTime', TType.I64, 11)
+ oprot.writeI64(self.endTime)
+ oprot.writeFieldEnd()
+ if self.hadoopJobId is not None:
+ oprot.writeFieldBegin('hadoopJobId', TType.STRING, 12)
+ oprot.writeString(self.hadoopJobId)
+ oprot.writeFieldEnd()
      oprot.writeFieldStop()
      oprot.writeStructEnd()

@@ -8874,6 +9136,10 @@ class ShowCompactResponseElement:
      value = (value * 31) ^ hash(self.workerid)
      value = (value * 31) ^ hash(self.start)
      value = (value * 31) ^ hash(self.runAs)
+ value = (value * 31) ^ hash(self.hightestTxnId)
+ value = (value * 31) ^ hash(self.metaInfo)
+ value = (value * 31) ^ hash(self.endTime)
+ value = (value * 31) ^ hash(self.hadoopJobId)
      return value

    def __repr__(self):

http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb
----------------------------------------------------------------------
diff --git a/metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb b/metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb
index a7b1e86..a473611 100644
--- a/metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb
+++ b/metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb
@@ -1558,12 +1558,18 @@ class TxnInfo
    STATE = 2
    USER = 3
    HOSTNAME = 4
+ AGENTINFO = 5
+ HEARTBEATCOUNT = 6
+ METAINFO = 7

    FIELDS = {
      ID => {:type => ::Thrift::Types::I64, :name => 'id'},
      STATE => {:type => ::Thrift::Types::I32, :name => 'state', :enum_class => ::TxnState},
      USER => {:type => ::Thrift::Types::STRING, :name => 'user'},
- HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'}
+ HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'},
+ AGENTINFO => {:type => ::Thrift::Types::STRING, :name => 'agentInfo', :default => %q"Unknown", :optional => true},
+ HEARTBEATCOUNT => {:type => ::Thrift::Types::I32, :name => 'heartbeatCount', :default => 0, :optional => true},
+ METAINFO => {:type => ::Thrift::Types::STRING, :name => 'metaInfo', :optional => true}
    }

    def struct_fields; FIELDS; end
@@ -1626,11 +1632,13 @@ class OpenTxnRequest
    NUM_TXNS = 1
    USER = 2
    HOSTNAME = 3
+ AGENTINFO = 4

    FIELDS = {
      NUM_TXNS => {:type => ::Thrift::Types::I32, :name => 'num_txns'},
      USER => {:type => ::Thrift::Types::STRING, :name => 'user'},
- HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'}
+ HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'},
+ AGENTINFO => {:type => ::Thrift::Types::STRING, :name => 'agentInfo', :default => %q"Unknown", :optional => true}
    }

    def struct_fields; FIELDS; end
@@ -1734,12 +1742,14 @@ class LockRequest
    TXNID = 2
    USER = 3
    HOSTNAME = 4
+ AGENTINFO = 5

    FIELDS = {
      COMPONENT => {:type => ::Thrift::Types::LIST, :name => 'component', :element => {:type => ::Thrift::Types::STRUCT, :class => ::LockComponent}},
      TXNID => {:type => ::Thrift::Types::I64, :name => 'txnid', :optional => true},
      USER => {:type => ::Thrift::Types::STRING, :name => 'user'},
- HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'}
+ HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'},
+ AGENTINFO => {:type => ::Thrift::Types::STRING, :name => 'agentInfo', :default => %q"Unknown", :optional => true}
    }

    def struct_fields; FIELDS; end
@@ -1779,9 +1789,13 @@ end
  class CheckLockRequest
    include ::Thrift::Struct, ::Thrift::Struct_Union
    LOCKID = 1
+ TXNID = 2
+ ELAPSED_MS = 3

    FIELDS = {
- LOCKID => {:type => ::Thrift::Types::I64, :name => 'lockid'}
+ LOCKID => {:type => ::Thrift::Types::I64, :name => 'lockid'},
+ TXNID => {:type => ::Thrift::Types::I64, :name => 'txnid', :optional => true},
+ ELAPSED_MS => {:type => ::Thrift::Types::I64, :name => 'elapsed_ms', :optional => true}
    }

    def struct_fields; FIELDS; end
@@ -1812,9 +1826,16 @@ end

  class ShowLocksRequest
    include ::Thrift::Struct, ::Thrift::Struct_Union
+ DBNAME = 1
+ TABLENAME = 2
+ PARTNAME = 3
+ ISEXTENDED = 4

    FIELDS = {
-
+ DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbname', :optional => true},
+ TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tablename', :optional => true},
+ PARTNAME => {:type => ::Thrift::Types::STRING, :name => 'partname', :optional => true},
+ ISEXTENDED => {:type => ::Thrift::Types::BOOL, :name => 'isExtended', :default => false, :optional => true}
    }

    def struct_fields; FIELDS; end
@@ -1838,6 +1859,11 @@ class ShowLocksResponseElement
    ACQUIREDAT = 9
    USER = 10
    HOSTNAME = 11
+ HEARTBEATCOUNT = 12
+ AGENTINFO = 13
+ BLOCKEDBYEXTID = 14
+ BLOCKEDBYINTID = 15
+ LOCKIDINTERNAL = 16

    FIELDS = {
      LOCKID => {:type => ::Thrift::Types::I64, :name => 'lockid'},
@@ -1850,7 +1876,12 @@ class ShowLocksResponseElement
      LASTHEARTBEAT => {:type => ::Thrift::Types::I64, :name => 'lastheartbeat'},
      ACQUIREDAT => {:type => ::Thrift::Types::I64, :name => 'acquiredat', :optional => true},
      USER => {:type => ::Thrift::Types::STRING, :name => 'user'},
- HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'}
+ HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'},
+ HEARTBEATCOUNT => {:type => ::Thrift::Types::I32, :name => 'heartbeatCount', :default => 0, :optional => true},
+ AGENTINFO => {:type => ::Thrift::Types::STRING, :name => 'agentInfo', :optional => true},
+ BLOCKEDBYEXTID => {:type => ::Thrift::Types::I64, :name => 'blockedByExtId', :optional => true},
+ BLOCKEDBYINTID => {:type => ::Thrift::Types::I64, :name => 'blockedByIntId', :optional => true},
+ LOCKIDINTERNAL => {:type => ::Thrift::Types::I64, :name => 'lockIdInternal', :optional => true}
    }

    def struct_fields; FIELDS; end
@@ -2003,6 +2034,10 @@ class ShowCompactResponseElement
    WORKERID = 6
    START = 7
    RUNAS = 8
+ HIGHTESTTXNID = 9
+ METAINFO = 10
+ ENDTIME = 11
+ HADOOPJOBID = 12

    FIELDS = {
      DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbname'},
@@ -2012,7 +2047,11 @@ class ShowCompactResponseElement
      STATE => {:type => ::Thrift::Types::STRING, :name => 'state'},
      WORKERID => {:type => ::Thrift::Types::STRING, :name => 'workerid', :optional => true},
      START => {:type => ::Thrift::Types::I64, :name => 'start', :optional => true},
- RUNAS => {:type => ::Thrift::Types::STRING, :name => 'runAs', :optional => true}
+ RUNAS => {:type => ::Thrift::Types::STRING, :name => 'runAs', :optional => true},
+ HIGHTESTTXNID => {:type => ::Thrift::Types::I64, :name => 'hightestTxnId', :optional => true},
+ METAINFO => {:type => ::Thrift::Types::STRING, :name => 'metaInfo', :optional => true},
+ ENDTIME => {:type => ::Thrift::Types::I64, :name => 'endTime', :optional => true},
+ HADOOPJOBID => {:type => ::Thrift::Types::STRING, :name => 'hadoopJobId', :default => %q"None", :optional => true}
    }

    def struct_fields; FIELDS; end

Search Discussions

  • Gates at Jan 14, 2016 at 7:47 pm
    HIVE-12832 A bunch of thrift and RDBMS changes for ACID fixes.


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

    Branch: refs/heads/master
    Commit: fe5cd560ca86e6f394749f13f327477452daacc8
    Parents: 1ff3b14
    Author: Alan Gates <gates@hortonworks.com>
    Authored: Thu Jan 14 11:35:17 2016 -0800
    Committer: Alan Gates <gates@hortonworks.com>
    Committed: Thu Jan 14 11:35:17 2016 -0800

    ----------------------------------------------------------------------
      .../org/apache/hive/beeline/HiveSchemaTool.java | 42 +-
      metastore/if/hive_metastore.thrift | 20 +
      .../upgrade/derby/023-HIVE-12807.derby.sql | 1 +
      .../upgrade/derby/024-HIVE-12814.derby.sql | 1 +
      .../upgrade/derby/025-HIVE-12816.derby.sql | 1 +
      .../upgrade/derby/026-HIVE-12818.derby.sql | 15 +
      .../upgrade/derby/027-HIVE-12819.derby.sql | 1 +
      .../upgrade/derby/028-HIVE-12821.derby.sql | 2 +
      .../upgrade/derby/029-HIVE-12822.derby.sql | 1 +
      .../upgrade/derby/030-HIVE-12823.derby.sql | 1 +
      .../upgrade/derby/031-HIVE-12831.derby.sql | 2 +
      .../upgrade/derby/032-HIVE-12832.derby.sql | 7 +
      .../upgrade/derby/hive-schema-1.3.0.derby.sql | 2 +-
      .../upgrade/derby/hive-schema-2.0.0.derby.sql | 2 +-
      .../upgrade/derby/hive-schema-2.1.0.derby.sql | 2 +-
      .../derby/hive-txn-schema-1.3.0.derby.sql | 119 +++++
      .../derby/hive-txn-schema-2.0.0.derby.sql | 119 +++++
      .../derby/upgrade-1.2.0-to-1.3.0.derby.sql | 10 +
      .../derby/upgrade-1.2.0-to-2.0.0.derby.sql | 10 +
      .../upgrade/mssql/008-HIVE-12807.mssql.sql | 1 +
      .../upgrade/mssql/009-HIVE-12814.mssql.sql | 1 +
      .../upgrade/mssql/010-HIVE-12816.mssql.sql | 1 +
      .../upgrade/mssql/011-HIVE-12818.mssql.sql | 21 +
      .../upgrade/mssql/012-HIVE-12819.mssql.sql | 1 +
      .../upgrade/mssql/013-HIVE-12821.mssql.sql | 2 +
      .../upgrade/mssql/014-HIVE-12822.mssql.sql | 1 +
      .../upgrade/mssql/015-HIVE-12823.mssql.sql | 1 +
      .../upgrade/mssql/016-HIVE-12831.mssql.sql | 2 +
      .../upgrade/mssql/017-HIVE-12832.mssql.sql | 10 +
      .../upgrade/mssql/hive-schema-1.3.0.mssql.sql | 40 ++
      .../upgrade/mssql/hive-schema-2.0.0.mssql.sql | 40 ++
      .../upgrade/mssql/hive-schema-2.1.0.mssql.sql | 40 ++
      .../mssql/upgrade-1.2.0-to-1.3.0.mssql.sql | 10 +
      .../mssql/upgrade-1.2.0-to-2.0.0.mssql.sql | 10 +
      .../upgrade/mysql/023-HIVE-12807.mysql.sql | 1 +
      .../upgrade/mysql/024-HIVE-12814.mysql.sql | 1 +
      .../upgrade/mysql/025-HIVE-12816.mysql.sql | 1 +
      .../upgrade/mysql/026-HIVE-12818.mysql.sql | 17 +
      .../upgrade/mysql/027-HIVE-12819.mysql.sql | 1 +
      .../upgrade/mysql/028-HIVE-12821.mysql.sql | 2 +
      .../upgrade/mysql/029-HIVE-12822.mysql.sql | 1 +
      .../upgrade/mysql/030-HIVE-12823.mysql.sql | 1 +
      .../upgrade/mysql/031-HIVE-12831.mysql.sql | 2 +
      .../upgrade/mysql/032-HIVE-12832.mysql.sql | 7 +
      .../upgrade/mysql/hive-schema-1.3.0.mysql.sql | 2 +-
      .../upgrade/mysql/hive-schema-2.0.0.mysql.sql | 2 +-
      .../upgrade/mysql/hive-schema-2.1.0.mysql.sql | 2 +-
      .../mysql/hive-txn-schema-1.3.0.mysql.sql | 122 +++++
      .../mysql/hive-txn-schema-2.0.0.mysql.sql | 122 +++++
      .../mysql/upgrade-1.2.0-to-1.3.0.mysql.sql | 11 +
      .../mysql/upgrade-1.2.0-to-2.0.0.mysql.sql | 11 +
      .../upgrade/oracle/023-HIVE-12807.oracle.sql | 1 +
      .../upgrade/oracle/024-HIVE-12814.oracle.sql | 1 +
      .../upgrade/oracle/025-HIVE-12816.oracle.sql | 1 +
      .../upgrade/oracle/026-HIVE-12818.oracle.sql | 17 +
      .../upgrade/oracle/027-HIVE-12819.oracle.sql | 1 +
      .../upgrade/oracle/028-HIVE-12821.oracle.sql | 2 +
      .../upgrade/oracle/029-HIVE-12822.oracle.sql | 1 +
      .../upgrade/oracle/030-HIVE-12823.oracle.sql | 1 +
      .../upgrade/oracle/031-HIVE-12381.oracle.sql | 2 +
      .../upgrade/oracle/032-HIVE-12832.oracle.sql | 7 +
      .../upgrade/oracle/hive-schema-1.3.0.oracle.sql | 2 +-
      .../upgrade/oracle/hive-schema-2.0.0.oracle.sql | 2 +-
      .../upgrade/oracle/hive-schema-2.1.0.oracle.sql | 2 +-
      .../oracle/hive-txn-schema-1.3.0.oracle.sql | 120 +++++
      .../oracle/hive-txn-schema-2.0.0.oracle.sql | 120 +++++
      .../oracle/upgrade-1.2.0-to-1.3.0.oracle.sql | 10 +
      .../oracle/upgrade-1.2.0-to-2.0.0.oracle.sql | 10 +
      .../postgres/022-HIVE-12807.postgres.sql | 1 +
      .../postgres/023-HIVE-12814.postgres.sql | 1 +
      .../postgres/024-HIVE-12816.postgres.sql | 1 +
      .../postgres/025-HIVE-12818.postgres.sql | 17 +
      .../postgres/026-HIVE-12819.postgres.sql | 1 +
      .../postgres/027-HIVE-12821.postgres.sql | 2 +
      .../postgres/028-HIVE-12822.postgres.sql | 1 +
      .../postgres/029-HIVE-12823.postgres.sql | 1 +
      .../postgres/030-HIVE-12831.postgres.sql | 2 +
      .../postgres/031-HIVE-12832.postgres.sql | 7 +
      .../postgres/hive-schema-1.3.0.postgres.sql | 2 +-
      .../postgres/hive-schema-2.0.0.postgres.sql | 2 +-
      .../postgres/hive-schema-2.1.0.postgres.sql | 2 +-
      .../postgres/hive-txn-schema-1.3.0.postgres.sql | 121 +++++
      .../postgres/hive-txn-schema-2.0.0.postgres.sql | 121 +++++
      .../upgrade-1.2.0-to-1.3.0.postgres.sql | 10 +
      .../upgrade-1.2.0-to-2.0.0.postgres.sql | 10 +
      .../gen/thrift/gen-cpp/hive_metastore_types.cpp | 463 ++++++++++++++++-
      .../gen/thrift/gen-cpp/hive_metastore_types.h | 202 +++++++-
      .../hive/metastore/api/CheckLockRequest.java | 204 +++++++-
      .../hadoop/hive/metastore/api/LockRequest.java | 117 ++++-
      .../hive/metastore/api/OpenTxnRequest.java | 115 ++++-
      .../api/ShowCompactResponseElement.java | 421 ++++++++++++++-
      .../hive/metastore/api/ShowLocksRequest.java | 429 +++++++++++++++-
      .../metastore/api/ShowLocksResponseElement.java | 512 ++++++++++++++++++-
      .../hadoop/hive/metastore/api/TxnInfo.java | 322 +++++++++++-
      .../src/gen/thrift/gen-php/metastore/Types.php | 464 ++++++++++++++++-
      .../gen/thrift/gen-py/hive_metastore/ttypes.py | 278 +++++++++-
      .../gen/thrift/gen-rb/hive_metastore_types.rb | 53 +-
      97 files changed, 4957 insertions(+), 70 deletions(-)
    ----------------------------------------------------------------------


    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java
    ----------------------------------------------------------------------
    diff --git a/beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java b/beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java
    index 6f0ba07..2d7910d 100644
    --- a/beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java
    +++ b/beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java
    @@ -17,18 +17,6 @@
       */
      package org.apache.hive.beeline;

    -import java.io.BufferedWriter;
    -import java.io.File;
    -import java.io.FileWriter;
    -import java.io.IOException;
    -import java.io.PrintStream;
    -import java.sql.Connection;
    -import java.sql.ResultSet;
    -import java.sql.SQLException;
    -import java.sql.Statement;
    -import java.util.ArrayList;
    -import java.util.List;
    -
      import org.apache.commons.cli.CommandLine;
      import org.apache.commons.cli.CommandLineParser;
      import org.apache.commons.cli.GnuParser;
    @@ -39,6 +27,7 @@ import org.apache.commons.cli.OptionGroup;
      import org.apache.commons.cli.Options;
      import org.apache.commons.cli.ParseException;
      import org.apache.commons.io.output.NullOutputStream;
    +import org.apache.commons.lang.StringUtils;
      import org.apache.hadoop.hive.conf.HiveConf;
      import org.apache.hadoop.hive.conf.HiveConf.ConfVars;
      import org.apache.hadoop.hive.metastore.HiveMetaException;
    @@ -46,6 +35,22 @@ import org.apache.hadoop.hive.metastore.MetaStoreSchemaInfo;
      import org.apache.hadoop.hive.metastore.api.MetaException;
      import org.apache.hadoop.hive.shims.ShimLoader;
      import org.apache.hive.beeline.HiveSchemaHelper.NestedScriptParser;
    +import org.slf4j.Logger;
    +import org.slf4j.LoggerFactory;
    +
    +import java.io.BufferedReader;
    +import java.io.BufferedWriter;
    +import java.io.File;
    +import java.io.FileReader;
    +import java.io.FileWriter;
    +import java.io.IOException;
    +import java.io.PrintStream;
    +import java.sql.Connection;
    +import java.sql.ResultSet;
    +import java.sql.SQLException;
    +import java.sql.Statement;
    +import java.util.ArrayList;
    +import java.util.List;

      public class HiveSchemaTool {
        private String userName = null;
    @@ -57,6 +62,8 @@ public class HiveSchemaTool {
        private final String dbType;
        private final MetaStoreSchemaInfo metaStoreSchemaInfo;

    + static final private Logger LOG = LoggerFactory.getLogger(HiveSchemaTool.class.getName());
    +
        public HiveSchemaTool(String dbType) throws HiveMetaException {
          this(System.getenv("HIVE_HOME"), new HiveConf(HiveSchemaTool.class), dbType);
        }
    @@ -356,6 +363,16 @@ public class HiveSchemaTool {
          argList.add("-f");
          argList.add(sqlScriptFile);

    + if (LOG.isDebugEnabled()) {
    + LOG.debug("Going to invoke file that contains:");
    + FileReader fr = new FileReader(sqlScriptFile);
    + BufferedReader reader = new BufferedReader(fr);
    + String line;
    + while ((line = reader.readLine()) != null) {
    + LOG.debug("script: " + line);
    + }
    + }
    +
          // run the script using Beeline
          BeeLine beeLine = new BeeLine();
          if (!verbose) {
    @@ -367,6 +384,7 @@ public class HiveSchemaTool {
          // We can be pretty sure that an entire line can be processed as a single command since
          // we always add a line separator at the end while calling dbCommandParser.buildCommand.
          beeLine.getOpts().setEntireLineAsCommand(true);
    + LOG.debug("Going to run command <" + StringUtils.join(argList, " ") + ">");
          int status = beeLine.begin(argList.toArray(new String[0]), null);
          if (status != 0) {
            throw new IOException("Schema script failed, errorcode " + status);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/if/hive_metastore.thrift
    ----------------------------------------------------------------------
    diff --git a/metastore/if/hive_metastore.thrift b/metastore/if/hive_metastore.thrift
    index 56ec9aa..81837e6 100755
    --- a/metastore/if/hive_metastore.thrift
    +++ b/metastore/if/hive_metastore.thrift
    @@ -543,6 +543,9 @@ struct TxnInfo {
          2: required TxnState state,
          3: required string user, // used in 'show transactions' to help admins find who has open transactions
          4: required string hostname, // used in 'show transactions' to help admins find who has open transactions
    + 5: optional string agentInfo = "Unknown",
    + 6: optional i32 heartbeatCount=0,
    + 7: optional string metaInfo,
      }

      struct GetOpenTxnsInfoResponse {
    @@ -559,6 +562,7 @@ struct OpenTxnRequest {
          1: required i32 num_txns,
          2: required string user,
          3: required string hostname,
    + 4: optional string agentInfo = "Unknown",
      }

      struct OpenTxnsResponse {
    @@ -586,6 +590,7 @@ struct LockRequest {
          2: optional i64 txnid,
          3: required string user, // used in 'show locks' to help admins find who has open locks
          4: required string hostname, // used in 'show locks' to help admins find who has open locks
    + 5: optional string agentInfo = "Unknown",
      }

      struct LockResponse {
    @@ -595,6 +600,8 @@ struct LockResponse {

      struct CheckLockRequest {
          1: required i64 lockid,
    + 2: optional i64 txnid,
    + 3: optional i64 elapsed_ms,
      }

      struct UnlockRequest {
    @@ -602,6 +609,10 @@ struct UnlockRequest {
      }

      struct ShowLocksRequest {
    + 1: optional string dbname,
    + 2: optional string tablename,
    + 3: optional string partname,
    + 4: optional bool isExtended=false,
      }

      struct ShowLocksResponseElement {
    @@ -616,6 +627,11 @@ struct ShowLocksResponseElement {
          9: optional i64 acquiredat,
          10: required string user,
          11: required string hostname,
    + 12: optional i32 heartbeatCount = 0,
    + 13: optional string agentInfo,
    + 14: optional i64 blockedByExtId,
    + 15: optional i64 blockedByIntId,
    + 16: optional i64 lockIdInternal,
      }

      struct ShowLocksResponse {
    @@ -657,6 +673,10 @@ struct ShowCompactResponseElement {
          6: optional string workerid,
          7: optional i64 start,
          8: optional string runAs,
    + 9: optional i64 hightestTxnId, // Highest Txn ID handled by this compaction
    + 10: optional string metaInfo,
    + 11: optional i64 endTime,
    + 12: optional string hadoopJobId = "None",
      }

      struct ShowCompactResponse {

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/023-HIVE-12807.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/023-HIVE-12807.derby.sql b/metastore/scripts/upgrade/derby/023-HIVE-12807.derby.sql
    new file mode 100644
    index 0000000..3dfc6fe
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/023-HIVE-12807.derby.sql
    @@ -0,0 +1 @@
    +ALTER TABLE "COMPACTION_QUEUE" ADD "CQ_HIGHEST_TXN_ID" bigint;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/024-HIVE-12814.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/024-HIVE-12814.derby.sql b/metastore/scripts/upgrade/derby/024-HIVE-12814.derby.sql
    new file mode 100644
    index 0000000..a451846
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/024-HIVE-12814.derby.sql
    @@ -0,0 +1 @@
    +ALTER TABLE "COMPACTION_QUEUE" ADD "CQ_META_INFO" varchar(2048) for bit data;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/025-HIVE-12816.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/025-HIVE-12816.derby.sql b/metastore/scripts/upgrade/derby/025-HIVE-12816.derby.sql
    new file mode 100644
    index 0000000..2a78bf1
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/025-HIVE-12816.derby.sql
    @@ -0,0 +1 @@
    +ALTER TABLE "COMPACTION_QUEUE" ADD "CQ_HADOOP_JOB_ID" VARCHAR(32);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/026-HIVE-12818.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/026-HIVE-12818.derby.sql b/metastore/scripts/upgrade/derby/026-HIVE-12818.derby.sql
    new file mode 100644
    index 0000000..4e3c82b
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/026-HIVE-12818.derby.sql
    @@ -0,0 +1,15 @@
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO varchar(2048) for bit data,
    + CC_HADOOP_JOB_ID varchar(32)
    +);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/027-HIVE-12819.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/027-HIVE-12819.derby.sql b/metastore/scripts/upgrade/derby/027-HIVE-12819.derby.sql
    new file mode 100644
    index 0000000..69b8a3a
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/027-HIVE-12819.derby.sql
    @@ -0,0 +1 @@
    +ALTER TABLE "TXNS" ADD "TXN_AGENT_INFO" varchar(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/028-HIVE-12821.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/028-HIVE-12821.derby.sql b/metastore/scripts/upgrade/derby/028-HIVE-12821.derby.sql
    new file mode 100644
    index 0000000..0c10245
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/028-HIVE-12821.derby.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE "TXNS" ADD "TXN_HEARTBEAT_COUNT" INTEGER;
    +ALTER TABLE "HIVE_LOCKS" ADD "HL_HEARTBEAT_COUNT" INTEGER;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/029-HIVE-12822.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/029-HIVE-12822.derby.sql b/metastore/scripts/upgrade/derby/029-HIVE-12822.derby.sql
    new file mode 100644
    index 0000000..9f9423e
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/029-HIVE-12822.derby.sql
    @@ -0,0 +1 @@
    +ALTER TABLE "TXNS" ADD "TXN_META_INFO" varchar(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/030-HIVE-12823.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/030-HIVE-12823.derby.sql b/metastore/scripts/upgrade/derby/030-HIVE-12823.derby.sql
    new file mode 100644
    index 0000000..b7fbc71
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/030-HIVE-12823.derby.sql
    @@ -0,0 +1 @@
    +ALTER TABLE "HIVE_LOCKS" ADD "HL_AGENT_INFO" varchar(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/031-HIVE-12831.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/031-HIVE-12831.derby.sql b/metastore/scripts/upgrade/derby/031-HIVE-12831.derby.sql
    new file mode 100644
    index 0000000..890fa1a
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/031-HIVE-12831.derby.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE "HIVE_LOCKS" ADD "HL_BLOCKEDBY_EXT_ID" bigint;
    +ALTER TABLE "HIVE_LOCKS" ADD "HL_BLOCKEDBY_INT_ID" bigint;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/032-HIVE-12832.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/032-HIVE-12832.derby.sql b/metastore/scripts/upgrade/derby/032-HIVE-12832.derby.sql
    new file mode 100644
    index 0000000..0e5515c
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/032-HIVE-12832.derby.sql
    @@ -0,0 +1,7 @@
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql b/metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql
    index 20eb326..3893194 100644
    --- a/metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql
    +++ b/metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql
    @@ -327,7 +327,7 @@ ALTER TABLE "APP"."SDS" ADD CONSTRAINT "SQL110318025505550" CHECK (IS_COMPRESSED
      -- ----------------------------
      -- Transaction and Lock Tables
      -- ----------------------------
    -RUN 'hive-txn-schema-0.13.0.derby.sql';
    +RUN 'hive-txn-schema-1.3.0.derby.sql';

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql b/metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql
    index abc6bf4..2c2f1e7 100644
    --- a/metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql
    +++ b/metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql
    @@ -327,7 +327,7 @@ ALTER TABLE "APP"."SDS" ADD CONSTRAINT "SQL110318025505550" CHECK (IS_COMPRESSED
      -- ----------------------------
      -- Transaction and Lock Tables
      -- ----------------------------
    -RUN 'hive-txn-schema-0.13.0.derby.sql';
    +RUN 'hive-txn-schema-2.0.0.derby.sql';

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql b/metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql
    index 8083199..660a85a 100644
    --- a/metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql
    +++ b/metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql
    @@ -325,7 +325,7 @@ ALTER TABLE "APP"."SDS" ADD CONSTRAINT "SQL110318025505550" CHECK (IS_COMPRESSED
      -- ----------------------------
      -- Transaction and Lock Tables
      -- ----------------------------
    -RUN 'hive-txn-schema-0.13.0.derby.sql';
    +RUN 'hive-txn-schema-2.0.0.derby.sql';

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/hive-txn-schema-1.3.0.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/hive-txn-schema-1.3.0.derby.sql b/metastore/scripts/upgrade/derby/hive-txn-schema-1.3.0.derby.sql
    new file mode 100644
    index 0000000..13f3340
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/hive-txn-schema-1.3.0.derby.sql
    @@ -0,0 +1,119 @@
    +-- Licensed to the Apache Software Foundation (ASF) under one or more
    +-- contributor license agreements. See the NOTICE file distributed with
    +-- this work for additional information regarding copyright ownership.
    +-- The ASF licenses this file to You under the Apache License, Version 2.0
    +-- (the License); you may not use this file except in compliance with
    +-- the License. You may obtain a copy of the License at
    +--
    +-- http://www.apache.org/licenses/LICENSE-2.0
    +--
    +-- Unless required by applicable law or agreed to in writing, software
    +-- distributed under the License is distributed on an AS IS BASIS,
    +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +-- See the License for the specific language governing permissions and
    +-- limitations under the License.
    +
    +--
    +-- Tables for transaction management
    +--
    +CREATE TABLE TXNS (
    + TXN_ID bigint PRIMARY KEY,
    + TXN_STATE char(1) NOT NULL,
    + TXN_STARTED bigint NOT NULL,
    + TXN_LAST_HEARTBEAT bigint NOT NULL,
    + TXN_USER varchar(128) NOT NULL,
    + TXN_HOST varchar(128) NOT NULL,
    + TXN_AGENT_INFO varchar(128),
    + TXN_META_INFO varchar(128),
    + TXN_HEARTBEAT_COUNT integer
    +);
    +
    +CREATE TABLE TXN_COMPONENTS (
    + TC_TXNID bigint REFERENCES TXNS (TXN_ID),
    + TC_DATABASE varchar(128) NOT NULL,
    + TC_TABLE varchar(128),
    + TC_PARTITION varchar(767)
    +);
    +
    +CREATE TABLE COMPLETED_TXN_COMPONENTS (
    + CTC_TXNID bigint,
    + CTC_DATABASE varchar(128) NOT NULL,
    + CTC_TABLE varchar(128),
    + CTC_PARTITION varchar(767)
    +);
    +
    +CREATE TABLE NEXT_TXN_ID (
    + NTXN_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_TXN_ID VALUES(1);
    +
    +CREATE TABLE HIVE_LOCKS (
    + HL_LOCK_EXT_ID bigint NOT NULL,
    + HL_LOCK_INT_ID bigint NOT NULL,
    + HL_TXNID bigint,
    + HL_DB varchar(128) NOT NULL,
    + HL_TABLE varchar(128),
    + HL_PARTITION varchar(767),
    + HL_LOCK_STATE char(1) NOT NULL,
    + HL_LOCK_TYPE char(1) NOT NULL,
    + HL_LAST_HEARTBEAT bigint NOT NULL,
    + HL_ACQUIRED_AT bigint,
    + HL_USER varchar(128) NOT NULL,
    + HL_HOST varchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT integer,
    + HL_AGENT_INFO varchar(128),
    + HL_BLOCKEDBY_EXT_ID bigint,
    + HL_BLOCKEDBY_INT_ID bigint,
    + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID)
    +);
    +
    +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS (HL_TXNID);
    +
    +CREATE TABLE NEXT_LOCK_ID (
    + NL_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_LOCK_ID VALUES(1);
    +
    +CREATE TABLE COMPACTION_QUEUE (
    + CQ_ID bigint PRIMARY KEY,
    + CQ_DATABASE varchar(128) NOT NULL,
    + CQ_TABLE varchar(128) NOT NULL,
    + CQ_PARTITION varchar(767),
    + CQ_STATE char(1) NOT NULL,
    + CQ_TYPE char(1) NOT NULL,
    + CQ_WORKER_ID varchar(128),
    + CQ_START bigint,
    + CQ_RUN_AS varchar(128),
    + CQ_HIGHEST_TXN_ID bigint,
    + CQ_META_INFO varchar(2048) for bit data,
    + CQ_HADOOP_JOB_ID varchar(32)
    +);
    +
    +CREATE TABLE NEXT_COMPACTION_QUEUE_ID (
    + NCQ_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1);
    +
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO varchar(2048) for bit data,
    + CC_HADOOP_JOB_ID varchar(32)
    +);
    +
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/hive-txn-schema-2.0.0.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/hive-txn-schema-2.0.0.derby.sql b/metastore/scripts/upgrade/derby/hive-txn-schema-2.0.0.derby.sql
    new file mode 100644
    index 0000000..13f3340
    --- /dev/null
    +++ b/metastore/scripts/upgrade/derby/hive-txn-schema-2.0.0.derby.sql
    @@ -0,0 +1,119 @@
    +-- Licensed to the Apache Software Foundation (ASF) under one or more
    +-- contributor license agreements. See the NOTICE file distributed with
    +-- this work for additional information regarding copyright ownership.
    +-- The ASF licenses this file to You under the Apache License, Version 2.0
    +-- (the License); you may not use this file except in compliance with
    +-- the License. You may obtain a copy of the License at
    +--
    +-- http://www.apache.org/licenses/LICENSE-2.0
    +--
    +-- Unless required by applicable law or agreed to in writing, software
    +-- distributed under the License is distributed on an AS IS BASIS,
    +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +-- See the License for the specific language governing permissions and
    +-- limitations under the License.
    +
    +--
    +-- Tables for transaction management
    +--
    +CREATE TABLE TXNS (
    + TXN_ID bigint PRIMARY KEY,
    + TXN_STATE char(1) NOT NULL,
    + TXN_STARTED bigint NOT NULL,
    + TXN_LAST_HEARTBEAT bigint NOT NULL,
    + TXN_USER varchar(128) NOT NULL,
    + TXN_HOST varchar(128) NOT NULL,
    + TXN_AGENT_INFO varchar(128),
    + TXN_META_INFO varchar(128),
    + TXN_HEARTBEAT_COUNT integer
    +);
    +
    +CREATE TABLE TXN_COMPONENTS (
    + TC_TXNID bigint REFERENCES TXNS (TXN_ID),
    + TC_DATABASE varchar(128) NOT NULL,
    + TC_TABLE varchar(128),
    + TC_PARTITION varchar(767)
    +);
    +
    +CREATE TABLE COMPLETED_TXN_COMPONENTS (
    + CTC_TXNID bigint,
    + CTC_DATABASE varchar(128) NOT NULL,
    + CTC_TABLE varchar(128),
    + CTC_PARTITION varchar(767)
    +);
    +
    +CREATE TABLE NEXT_TXN_ID (
    + NTXN_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_TXN_ID VALUES(1);
    +
    +CREATE TABLE HIVE_LOCKS (
    + HL_LOCK_EXT_ID bigint NOT NULL,
    + HL_LOCK_INT_ID bigint NOT NULL,
    + HL_TXNID bigint,
    + HL_DB varchar(128) NOT NULL,
    + HL_TABLE varchar(128),
    + HL_PARTITION varchar(767),
    + HL_LOCK_STATE char(1) NOT NULL,
    + HL_LOCK_TYPE char(1) NOT NULL,
    + HL_LAST_HEARTBEAT bigint NOT NULL,
    + HL_ACQUIRED_AT bigint,
    + HL_USER varchar(128) NOT NULL,
    + HL_HOST varchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT integer,
    + HL_AGENT_INFO varchar(128),
    + HL_BLOCKEDBY_EXT_ID bigint,
    + HL_BLOCKEDBY_INT_ID bigint,
    + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID)
    +);
    +
    +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS (HL_TXNID);
    +
    +CREATE TABLE NEXT_LOCK_ID (
    + NL_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_LOCK_ID VALUES(1);
    +
    +CREATE TABLE COMPACTION_QUEUE (
    + CQ_ID bigint PRIMARY KEY,
    + CQ_DATABASE varchar(128) NOT NULL,
    + CQ_TABLE varchar(128) NOT NULL,
    + CQ_PARTITION varchar(767),
    + CQ_STATE char(1) NOT NULL,
    + CQ_TYPE char(1) NOT NULL,
    + CQ_WORKER_ID varchar(128),
    + CQ_START bigint,
    + CQ_RUN_AS varchar(128),
    + CQ_HIGHEST_TXN_ID bigint,
    + CQ_META_INFO varchar(2048) for bit data,
    + CQ_HADOOP_JOB_ID varchar(32)
    +);
    +
    +CREATE TABLE NEXT_COMPACTION_QUEUE_ID (
    + NCQ_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1);
    +
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO varchar(2048) for bit data,
    + CC_HADOOP_JOB_ID varchar(32)
    +);
    +
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql b/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql
    index 6359de4..74ecac2 100644
    --- a/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql
    +++ b/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql
    @@ -1,4 +1,14 @@
      -- Upgrade MetaStore schema from 1.2.0 to 1.3.0
      RUN '021-HIVE-11970.derby.sql';
    +RUN '023-HIVE-12807.derby.sql';
    +RUN '024-HIVE-12814.derby.sql';
    +RUN '025-HIVE-12816.derby.sql';
    +RUN '026-HIVE-12818.derby.sql';
    +RUN '027-HIVE-12819.derby.sql';
    +RUN '028-HIVE-12821.derby.sql';
    +RUN '029-HIVE-12822.derby.sql';
    +RUN '030-HIVE-12823.derby.sql';
    +RUN '031-HIVE-12831.derby.sql';
    +RUN '032-HIVE-12832.derby.sql';

      UPDATE "APP".VERSION SET SCHEMA_VERSION='1.3.0', VERSION_COMMENT='Hive release version 1.3.0' where VER_ID=1;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql b/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql
    index adf3cb0..e6817ad 100644
    --- a/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql
    +++ b/metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql
    @@ -1,4 +1,14 @@
      -- Upgrade MetaStore schema from 1.2.0 to 2.0.0
      RUN '021-HIVE-11970.derby.sql';
    +RUN '023-HIVE-12807.derby.sql';
    +RUN '024-HIVE-12814.derby.sql';
    +RUN '025-HIVE-12816.derby.sql';
    +RUN '026-HIVE-12818.derby.sql';
    +RUN '027-HIVE-12819.derby.sql';
    +RUN '028-HIVE-12821.derby.sql';
    +RUN '029-HIVE-12822.derby.sql';
    +RUN '030-HIVE-12823.derby.sql';
    +RUN '031-HIVE-12831.derby.sql';
    +RUN '032-HIVE-12832.derby.sql';

      UPDATE "APP".VERSION SET SCHEMA_VERSION='2.0.0', VERSION_COMMENT='Hive release version 2.0.0' where VER_ID=1;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/008-HIVE-12807.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/008-HIVE-12807.mssql.sql b/metastore/scripts/upgrade/mssql/008-HIVE-12807.mssql.sql
    new file mode 100644
    index 0000000..e2d7615
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/008-HIVE-12807.mssql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD CQ_HIGHEST_TXN_ID bigint NULL;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/009-HIVE-12814.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/009-HIVE-12814.mssql.sql b/metastore/scripts/upgrade/mssql/009-HIVE-12814.mssql.sql
    new file mode 100644
    index 0000000..0088290
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/009-HIVE-12814.mssql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD CQ_META_INFO varbinary(2048) NULL;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/010-HIVE-12816.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/010-HIVE-12816.mssql.sql b/metastore/scripts/upgrade/mssql/010-HIVE-12816.mssql.sql
    new file mode 100644
    index 0000000..0c0342f
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/010-HIVE-12816.mssql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD CQ_HADOOP_JOB_ID nvarchar(32) NULL;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/011-HIVE-12818.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/011-HIVE-12818.mssql.sql b/metastore/scripts/upgrade/mssql/011-HIVE-12818.mssql.sql
    new file mode 100644
    index 0000000..74ac5bf
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/011-HIVE-12818.mssql.sql
    @@ -0,0 +1,21 @@
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint NOT NULL,
    + CC_DATABASE nvarchar(128) NOT NULL,
    + CC_TABLE nvarchar(128) NOT NULL,
    + CC_PARTITION nvarchar(767) NULL,
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID nvarchar(128) NULL,
    + CC_START bigint NULL,
    + CC_END bigint NULL,
    + CC_RUN_AS nvarchar(128) NULL,
    + CC_HIGHEST_TXN_ID bigint NULL,
    + CC_META_INFO varbinary(2048) NULL,
    + CC_HADOOP_JOB_ID nvarchar(128) NULL,
    +PRIMARY KEY CLUSTERED
    +(
    + CC_ID ASC
    +)
    +);
    +
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/012-HIVE-12819.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/012-HIVE-12819.mssql.sql b/metastore/scripts/upgrade/mssql/012-HIVE-12819.mssql.sql
    new file mode 100644
    index 0000000..778cbd5
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/012-HIVE-12819.mssql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE TXNS ADD TXN_AGENT_INFO nvarchar(128) NULL;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/013-HIVE-12821.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/013-HIVE-12821.mssql.sql b/metastore/scripts/upgrade/mssql/013-HIVE-12821.mssql.sql
    new file mode 100644
    index 0000000..3b8a610
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/013-HIVE-12821.mssql.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE TXNS ADD TXN_HEARTBEAT_COUNT int NULL;
    +ALTER TABLE HIVE_LOCKS ADD HL_HEARTBEAT_COUNT int NULL;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/014-HIVE-12822.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/014-HIVE-12822.mssql.sql b/metastore/scripts/upgrade/mssql/014-HIVE-12822.mssql.sql
    new file mode 100644
    index 0000000..b82d0ec
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/014-HIVE-12822.mssql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE TXNS ADD TXN_META_INFO nvarchar(128) NULL;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/015-HIVE-12823.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/015-HIVE-12823.mssql.sql b/metastore/scripts/upgrade/mssql/015-HIVE-12823.mssql.sql
    new file mode 100644
    index 0000000..d125b24
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/015-HIVE-12823.mssql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE HIVE_LOCKS ADD HL_AGENT_INFO nvarchar(128) NULL;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/016-HIVE-12831.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/016-HIVE-12831.mssql.sql b/metastore/scripts/upgrade/mssql/016-HIVE-12831.mssql.sql
    new file mode 100644
    index 0000000..9f37461
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/016-HIVE-12831.mssql.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE HIVE_LOCKS ADD HL_BLOCKEDBY_EXT_ID bigint NULL;
    +ALTER TABLE HIVE_LOCKS ADD HL_BLOCKEDBY_INT_ID bigint NULL;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/017-HIVE-12832.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/017-HIVE-12832.mssql.sql b/metastore/scripts/upgrade/mssql/017-HIVE-12832.mssql.sql
    new file mode 100644
    index 0000000..7adfe2e
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mssql/017-HIVE-12832.mssql.sql
    @@ -0,0 +1,10 @@
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 nvarchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT nvarchar(255) NULL,
    + PRIMARY KEY CLUSTERED
    +(
    + MT_KEY1 ASC,
    + MT_KEY2 ASC
    +)
    +);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql b/metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql
    index 01c1376..57d2343 100644
    --- a/metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql
    +++ b/metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql
    @@ -866,12 +866,35 @@ CREATE TABLE COMPACTION_QUEUE(
       CQ_WORKER_ID nvarchar(128) NULL,
       CQ_START bigint NULL,
       CQ_RUN_AS nvarchar(128) NULL,
    + CQ_HIGHEST_TXN_ID bigint NULL,
    + CQ_META_INFO varbinary(2048) NULL,
    + CQ_HADOOP_JOB_ID nvarchar(128) NULL,
      PRIMARY KEY CLUSTERED
      (
       CQ_ID ASC
      )
      );

    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint NOT NULL,
    + CC_DATABASE nvarchar(128) NOT NULL,
    + CC_TABLE nvarchar(128) NOT NULL,
    + CC_PARTITION nvarchar(767) NULL,
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID nvarchar(128) NULL,
    + CC_START bigint NULL,
    + CC_END bigint NULL,
    + CC_RUN_AS nvarchar(128) NULL,
    + CC_HIGHEST_TXN_ID bigint NULL,
    + CC_META_INFO varbinary(2048) NULL,
    + CC_HADOOP_JOB_ID nvarchar(128) NULL,
    +PRIMARY KEY CLUSTERED
    +(
    + CC_ID ASC
    +)
    +);
    +
      CREATE TABLE COMPLETED_TXN_COMPONENTS(
       CTC_TXNID bigint NULL,
       CTC_DATABASE nvarchar(128) NOT NULL,
    @@ -892,6 +915,10 @@ CREATE TABLE HIVE_LOCKS(
       HL_ACQUIRED_AT bigint NULL,
       HL_USER nvarchar(128) NOT NULL,
       HL_HOST nvarchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT int NULL,
    + HL_AGENT_INFO nvarchar(128) NULL,
    + HL_BLOCKEDBY_EXT_ID bigint NULL,
    + HL_BLOCKEDBY_INT_ID bigint NULL,
      PRIMARY KEY CLUSTERED
      (
       HL_LOCK_EXT_ID ASC,
    @@ -924,6 +951,9 @@ CREATE TABLE TXNS(
       TXN_LAST_HEARTBEAT bigint NOT NULL,
       TXN_USER nvarchar(128) NOT NULL,
       TXN_HOST nvarchar(128) NOT NULL,
    + TXN_AGENT_INFO nvarchar(128) NULL,
    + TXN_META_INFO nvarchar(128) NULL,
    + TXN_HEARTBEAT_COUNT int NULL,
      PRIMARY KEY CLUSTERED
      (
       TXN_ID ASC
    @@ -939,6 +969,16 @@ CREATE TABLE TXN_COMPONENTS(

      ALTER TABLE TXN_COMPONENTS WITH CHECK ADD FOREIGN KEY(TC_TXNID) REFERENCES TXNS (TXN_ID);

    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 nvarchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT nvarchar(255) NULL,
    + PRIMARY KEY CLUSTERED
    +(
    + MT_KEY1 ASC,
    + MT_KEY2 ASC
    +)
    +);


      -- -----------------------------------------------------------------

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql b/metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql
    index 1ec8632..57257c4 100644
    --- a/metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql
    +++ b/metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql
    @@ -866,12 +866,35 @@ CREATE TABLE COMPACTION_QUEUE(
       CQ_WORKER_ID nvarchar(128) NULL,
       CQ_START bigint NULL,
       CQ_RUN_AS nvarchar(128) NULL,
    + CQ_HIGHEST_TXN_ID bigint NULL,
    + CQ_META_INFO varbinary(2048) NULL,
    + CQ_HADOOP_JOB_ID nvarchar(128) NULL,
      PRIMARY KEY CLUSTERED
      (
       CQ_ID ASC
      )
      );

    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint NOT NULL,
    + CC_DATABASE nvarchar(128) NOT NULL,
    + CC_TABLE nvarchar(128) NOT NULL,
    + CC_PARTITION nvarchar(767) NULL,
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID nvarchar(128) NULL,
    + CC_START bigint NULL,
    + CC_END bigint NULL,
    + CC_RUN_AS nvarchar(128) NULL,
    + CC_HIGHEST_TXN_ID bigint NULL,
    + CC_META_INFO varbinary(2048) NULL,
    + CC_HADOOP_JOB_ID nvarchar(128) NULL,
    +PRIMARY KEY CLUSTERED
    +(
    + CC_ID ASC
    +)
    +);
    +
      CREATE TABLE COMPLETED_TXN_COMPONENTS(
       CTC_TXNID bigint NULL,
       CTC_DATABASE nvarchar(128) NOT NULL,
    @@ -892,6 +915,10 @@ CREATE TABLE HIVE_LOCKS(
       HL_ACQUIRED_AT bigint NULL,
       HL_USER nvarchar(128) NOT NULL,
       HL_HOST nvarchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT int NULL,
    + HL_AGENT_INFO nvarchar(128) NULL,
    + HL_BLOCKEDBY_EXT_ID bigint NULL,
    + HL_BLOCKEDBY_INT_ID bigint NULL,
      PRIMARY KEY CLUSTERED
      (
       HL_LOCK_EXT_ID ASC,
    @@ -924,6 +951,9 @@ CREATE TABLE TXNS(
       TXN_LAST_HEARTBEAT bigint NOT NULL,
       TXN_USER nvarchar(128) NOT NULL,
       TXN_HOST nvarchar(128) NOT NULL,
    + TXN_AGENT_INFO nvarchar(128) NULL,
    + TXN_META_INFO nvarchar(128) NULL,
    + TXN_HEARTBEAT_COUNT int NULL,
      PRIMARY KEY CLUSTERED
      (
       TXN_ID ASC
    @@ -939,6 +969,16 @@ CREATE TABLE TXN_COMPONENTS(

      ALTER TABLE TXN_COMPONENTS WITH CHECK ADD FOREIGN KEY(TC_TXNID) REFERENCES TXNS (TXN_ID);

    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 nvarchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT nvarchar(255) NULL,
    + PRIMARY KEY CLUSTERED
    +(
    + MT_KEY1 ASC,
    + MT_KEY2 ASC
    +)
    +);


      -- -----------------------------------------------------------------

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql b/metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql
    index 731cc25..085c17d 100644
    --- a/metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql
    +++ b/metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql
    @@ -866,12 +866,35 @@ CREATE TABLE COMPACTION_QUEUE(
       CQ_WORKER_ID nvarchar(128) NULL,
       CQ_START bigint NULL,
       CQ_RUN_AS nvarchar(128) NULL,
    + CQ_HIGHEST_TXN_ID bigint NULL,
    + CQ_META_INFO varbinary(2048) NULL,
    + CQ_HADOOP_JOB_ID nvarchar(128) NULL,
      PRIMARY KEY CLUSTERED
      (
       CQ_ID ASC
      )
      );

    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint NOT NULL,
    + CC_DATABASE nvarchar(128) NOT NULL,
    + CC_TABLE nvarchar(128) NOT NULL,
    + CC_PARTITION nvarchar(767) NULL,
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID nvarchar(128) NULL,
    + CC_START bigint NULL,
    + CC_END bigint NULL,
    + CC_RUN_AS nvarchar(128) NULL,
    + CC_HIGHEST_TXN_ID bigint NULL,
    + CC_META_INFO varbinary(2048) NULL,
    + CC_HADOOP_JOB_ID nvarchar(128) NULL,
    +PRIMARY KEY CLUSTERED
    +(
    + CC_ID ASC
    +)
    +);
    +
      CREATE TABLE COMPLETED_TXN_COMPONENTS(
       CTC_TXNID bigint NULL,
       CTC_DATABASE nvarchar(128) NOT NULL,
    @@ -892,6 +915,10 @@ CREATE TABLE HIVE_LOCKS(
       HL_ACQUIRED_AT bigint NULL,
       HL_USER nvarchar(128) NOT NULL,
       HL_HOST nvarchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT int NULL,
    + HL_AGENT_INFO nvarchar(128) NULL,
    + HL_BLOCKEDBY_EXT_ID bigint NULL,
    + HL_BLOCKEDBY_INT_ID bigint NULL,
      PRIMARY KEY CLUSTERED
      (
       HL_LOCK_EXT_ID ASC,
    @@ -924,6 +951,9 @@ CREATE TABLE TXNS(
       TXN_LAST_HEARTBEAT bigint NOT NULL,
       TXN_USER nvarchar(128) NOT NULL,
       TXN_HOST nvarchar(128) NOT NULL,
    + TXN_AGENT_INFO nvarchar(128) NULL,
    + TXN_META_INFO nvarchar(128) NULL,
    + TXN_HEARTBEAT_COUNT int NULL,
      PRIMARY KEY CLUSTERED
      (
       TXN_ID ASC
    @@ -939,6 +969,16 @@ CREATE TABLE TXN_COMPONENTS(

      ALTER TABLE TXN_COMPONENTS WITH CHECK ADD FOREIGN KEY(TC_TXNID) REFERENCES TXNS (TXN_ID);

    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 nvarchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT nvarchar(255) NULL,
    + PRIMARY KEY CLUSTERED
    +(
    + MT_KEY1 ASC,
    + MT_KEY2 ASC
    +)
    +);


      -- -----------------------------------------------------------------

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql b/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql
    index 9cf9d25..b0f28bb 100644
    --- a/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql
    +++ b/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql
    @@ -1,6 +1,16 @@
      SELECT 'Upgrading MetaStore schema from 1.2.0 to 1.3.0' AS MESSAGE;

      :r 007-HIVE-11970.mssql.sql;
    +:r 008-HIVE-12807.mssql.sql;
    +:r 009-HIVE-12814.mssql.sql;
    +:r 010-HIVE-12816.mssql.sql;
    +:r 011-HIVE-12818.mssql.sql;
    +:r 012-HIVE-12819.mssql.sql;
    +:r 013-HIVE-12821.mssql.sql;
    +:r 014-HIVE-12822.mssql.sql;
    +:r 015-HIVE-12823.mssql.sql;
    +:r 016-HIVE-12831.mssql.sql;
    +:r 017-HIVE-12832.mssql.sql;

      UPDATE VERSION SET SCHEMA_VERSION='1.3.0', VERSION_COMMENT='Hive release version 1.3.0' where VER_ID=1;
      SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 1.3.0' AS MESSAGE;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql b/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql
    index de3d29d..66a09a8 100644
    --- a/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql
    +++ b/metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql
    @@ -1,6 +1,16 @@
      SELECT 'Upgrading MetaStore schema from 1.2.0 to 2.0.0' AS MESSAGE;

      :r 007-HIVE-11970.mssql.sql;
    +:r 008-HIVE-12807.mssql.sql;
    +:r 009-HIVE-12814.mssql.sql;
    +:r 010-HIVE-12816.mssql.sql;
    +:r 011-HIVE-12818.mssql.sql;
    +:r 012-HIVE-12819.mssql.sql;
    +:r 013-HIVE-12821.mssql.sql;
    +:r 014-HIVE-12822.mssql.sql;
    +:r 015-HIVE-12823.mssql.sql;
    +:r 016-HIVE-12831.mssql.sql;
    +:r 017-HIVE-12832.mssql.sql;

      UPDATE VERSION SET SCHEMA_VERSION='2.0.0', VERSION_COMMENT='Hive release version 2.0.0' where VER_ID=1;
      SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 2.0.0' AS MESSAGE;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/023-HIVE-12807.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/023-HIVE-12807.mysql.sql b/metastore/scripts/upgrade/mysql/023-HIVE-12807.mysql.sql
    new file mode 100644
    index 0000000..31a2dd1
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/023-HIVE-12807.mysql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE `COMPACTION_QUEUE` ADD `CQ_HIGHEST_TXN_ID` bigint;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/024-HIVE-12814.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/024-HIVE-12814.mysql.sql b/metastore/scripts/upgrade/mysql/024-HIVE-12814.mysql.sql
    new file mode 100644
    index 0000000..5d5f3ca
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/024-HIVE-12814.mysql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE `COMPACTION_QUEUE` ADD `CQ_META_INFO` varbinary(2048);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/025-HIVE-12816.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/025-HIVE-12816.mysql.sql b/metastore/scripts/upgrade/mysql/025-HIVE-12816.mysql.sql
    new file mode 100644
    index 0000000..87e48b4
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/025-HIVE-12816.mysql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE `COMPACTION_QUEUE` ADD `CQ_HADOOP_JOB_ID` varchar(32);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/026-HIVE-12818.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/026-HIVE-12818.mysql.sql b/metastore/scripts/upgrade/mysql/026-HIVE-12818.mysql.sql
    new file mode 100644
    index 0000000..e241eee
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/026-HIVE-12818.mysql.sql
    @@ -0,0 +1,17 @@
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO varbinary(2048),
    + CC_HADOOP_JOB_ID varchar(32)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/027-HIVE-12819.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/027-HIVE-12819.mysql.sql b/metastore/scripts/upgrade/mysql/027-HIVE-12819.mysql.sql
    new file mode 100644
    index 0000000..f1e25d5
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/027-HIVE-12819.mysql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE `TXNS` ADD `TXN_AGENT_INFO` varchar(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/028-HIVE-12821.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/028-HIVE-12821.mysql.sql b/metastore/scripts/upgrade/mysql/028-HIVE-12821.mysql.sql
    new file mode 100644
    index 0000000..a951021
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/028-HIVE-12821.mysql.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE `TXNS` ADD `TXN_HEARTBEAT_COUNT` int;
    +ALTER TABLE `HIVE_LOCKS` ADD `HL_HEARTBEAT_COUNT` int;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/029-HIVE-12822.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/029-HIVE-12822.mysql.sql b/metastore/scripts/upgrade/mysql/029-HIVE-12822.mysql.sql
    new file mode 100644
    index 0000000..ffd0bab
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/029-HIVE-12822.mysql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE `TXNS` ADD `TXN_META_INFO` varchar(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/030-HIVE-12823.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/030-HIVE-12823.mysql.sql b/metastore/scripts/upgrade/mysql/030-HIVE-12823.mysql.sql
    new file mode 100644
    index 0000000..42c9b17
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/030-HIVE-12823.mysql.sql
    @@ -0,0 +1 @@
    +ALTER TABLE `HIVE_LOCKS` ADD `HL_AGENT_INFO` varchar(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/031-HIVE-12831.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/031-HIVE-12831.mysql.sql b/metastore/scripts/upgrade/mysql/031-HIVE-12831.mysql.sql
    new file mode 100644
    index 0000000..0b19bba
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/031-HIVE-12831.mysql.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE `HIVE_LOCKS` ADD `HL_BLOCKEDBY_EXT_ID` bigint;
    +ALTER TABLE `HIVE_LOCKS` ADD `HL_BLOCKEDBY_INT_ID` bigint;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/032-HIVE-12832.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/032-HIVE-12832.mysql.sql b/metastore/scripts/upgrade/mysql/032-HIVE-12832.mysql.sql
    new file mode 100644
    index 0000000..98c7706
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/032-HIVE-12832.mysql.sql
    @@ -0,0 +1,7 @@
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql b/metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql
    index 6c211a6..d9232d2 100644
    --- a/metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql
    +++ b/metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql
    @@ -813,7 +813,7 @@ CREATE TABLE IF NOT EXISTS `NOTIFICATION_SEQUENCE`
      -- ----------------------------
      -- Transaction and Lock Tables
      -- ----------------------------
    -SOURCE hive-txn-schema-0.13.0.mysql.sql;
    +SOURCE hive-txn-schema-1.3.0.mysql.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql b/metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql
    index ff0b643..82e0128 100644
    --- a/metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql
    +++ b/metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql
    @@ -813,7 +813,7 @@ CREATE TABLE IF NOT EXISTS `NOTIFICATION_SEQUENCE`
      -- ----------------------------
      -- Transaction and Lock Tables
      -- ----------------------------
    -SOURCE hive-txn-schema-0.13.0.mysql.sql;
    +SOURCE hive-txn-schema-2.0.0.mysql.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql b/metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql
    index d7e384c..06c3d90 100644
    --- a/metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql
    +++ b/metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql
    @@ -813,7 +813,7 @@ CREATE TABLE IF NOT EXISTS `NOTIFICATION_SEQUENCE`
      -- ----------------------------
      -- Transaction and Lock Tables
      -- ----------------------------
    -SOURCE hive-txn-schema-0.13.0.mysql.sql;
    +SOURCE hive-txn-schema-2.0.0.mysql.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/hive-txn-schema-1.3.0.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/hive-txn-schema-1.3.0.mysql.sql b/metastore/scripts/upgrade/mysql/hive-txn-schema-1.3.0.mysql.sql
    new file mode 100644
    index 0000000..ea42757
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/hive-txn-schema-1.3.0.mysql.sql
    @@ -0,0 +1,122 @@
    +-- Licensed to the Apache Software Foundation (ASF) under one or more
    +-- contributor license agreements. See the NOTICE file distributed with
    +-- this work for additional information regarding copyright ownership.
    +-- The ASF licenses this file to You under the Apache License, Version 2.0
    +-- (the "License"); you may not use this file except in compliance with
    +-- the License. You may obtain a copy of the License at
    +--
    +-- http://www.apache.org/licenses/LICENSE-2.0
    +--
    +-- Unless required by applicable law or agreed to in writing, software
    +-- distributed under the License is distributed on an "AS IS" BASIS,
    +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +-- See the License for the specific language governing permissions and
    +-- limitations under the License.
    +
    +--
    +-- Tables for transaction management
    +--
    +
    +CREATE TABLE TXNS (
    + TXN_ID bigint PRIMARY KEY,
    + TXN_STATE char(1) NOT NULL,
    + TXN_STARTED bigint NOT NULL,
    + TXN_LAST_HEARTBEAT bigint NOT NULL,
    + TXN_USER varchar(128) NOT NULL,
    + TXN_HOST varchar(128) NOT NULL,
    + TXN_AGENT_INFO varchar(128),
    + TXN_META_INFO varchar(128),
    + TXN_HEARTBEAT_COUNT int
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE TXN_COMPONENTS (
    + TC_TXNID bigint,
    + TC_DATABASE varchar(128) NOT NULL,
    + TC_TABLE varchar(128),
    + TC_PARTITION varchar(767),
    + FOREIGN KEY (TC_TXNID) REFERENCES TXNS (TXN_ID)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE COMPLETED_TXN_COMPONENTS (
    + CTC_TXNID bigint,
    + CTC_DATABASE varchar(128) NOT NULL,
    + CTC_TABLE varchar(128),
    + CTC_PARTITION varchar(767)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE NEXT_TXN_ID (
    + NTXN_NEXT bigint NOT NULL
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +INSERT INTO NEXT_TXN_ID VALUES(1);
    +
    +CREATE TABLE HIVE_LOCKS (
    + HL_LOCK_EXT_ID bigint NOT NULL,
    + HL_LOCK_INT_ID bigint NOT NULL,
    + HL_TXNID bigint,
    + HL_DB varchar(128) NOT NULL,
    + HL_TABLE varchar(128),
    + HL_PARTITION varchar(767),
    + HL_LOCK_STATE char(1) not null,
    + HL_LOCK_TYPE char(1) not null,
    + HL_LAST_HEARTBEAT bigint NOT NULL,
    + HL_ACQUIRED_AT bigint,
    + HL_USER varchar(128) NOT NULL,
    + HL_HOST varchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT int,
    + HL_AGENT_INFO varchar(128),
    + HL_BLOCKEDBY_EXT_ID bigint,
    + HL_BLOCKEDBY_INT_ID bigint,
    + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID),
    + KEY HIVE_LOCK_TXNID_INDEX (HL_TXNID)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE INDEX HL_TXNID_IDX ON HIVE_LOCKS (HL_TXNID);
    +
    +CREATE TABLE NEXT_LOCK_ID (
    + NL_NEXT bigint NOT NULL
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +INSERT INTO NEXT_LOCK_ID VALUES(1);
    +
    +CREATE TABLE COMPACTION_QUEUE (
    + CQ_ID bigint PRIMARY KEY,
    + CQ_DATABASE varchar(128) NOT NULL,
    + CQ_TABLE varchar(128) NOT NULL,
    + CQ_PARTITION varchar(767),
    + CQ_STATE char(1) NOT NULL,
    + CQ_TYPE char(1) NOT NULL,
    + CQ_WORKER_ID varchar(128),
    + CQ_START bigint,
    + CQ_RUN_AS varchar(128),
    + CQ_HIGHEST_TXN_ID bigint,
    + CQ_META_INFO varbinary(2048),
    + CQ_HADOOP_JOB_ID varchar(32)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO varbinary(2048),
    + CC_HADOOP_JOB_ID varchar(32)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE NEXT_COMPACTION_QUEUE_ID (
    + NCQ_NEXT bigint NOT NULL
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1);
    +
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/hive-txn-schema-2.0.0.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/hive-txn-schema-2.0.0.mysql.sql b/metastore/scripts/upgrade/mysql/hive-txn-schema-2.0.0.mysql.sql
    new file mode 100644
    index 0000000..ea42757
    --- /dev/null
    +++ b/metastore/scripts/upgrade/mysql/hive-txn-schema-2.0.0.mysql.sql
    @@ -0,0 +1,122 @@
    +-- Licensed to the Apache Software Foundation (ASF) under one or more
    +-- contributor license agreements. See the NOTICE file distributed with
    +-- this work for additional information regarding copyright ownership.
    +-- The ASF licenses this file to You under the Apache License, Version 2.0
    +-- (the "License"); you may not use this file except in compliance with
    +-- the License. You may obtain a copy of the License at
    +--
    +-- http://www.apache.org/licenses/LICENSE-2.0
    +--
    +-- Unless required by applicable law or agreed to in writing, software
    +-- distributed under the License is distributed on an "AS IS" BASIS,
    +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +-- See the License for the specific language governing permissions and
    +-- limitations under the License.
    +
    +--
    +-- Tables for transaction management
    +--
    +
    +CREATE TABLE TXNS (
    + TXN_ID bigint PRIMARY KEY,
    + TXN_STATE char(1) NOT NULL,
    + TXN_STARTED bigint NOT NULL,
    + TXN_LAST_HEARTBEAT bigint NOT NULL,
    + TXN_USER varchar(128) NOT NULL,
    + TXN_HOST varchar(128) NOT NULL,
    + TXN_AGENT_INFO varchar(128),
    + TXN_META_INFO varchar(128),
    + TXN_HEARTBEAT_COUNT int
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE TXN_COMPONENTS (
    + TC_TXNID bigint,
    + TC_DATABASE varchar(128) NOT NULL,
    + TC_TABLE varchar(128),
    + TC_PARTITION varchar(767),
    + FOREIGN KEY (TC_TXNID) REFERENCES TXNS (TXN_ID)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE COMPLETED_TXN_COMPONENTS (
    + CTC_TXNID bigint,
    + CTC_DATABASE varchar(128) NOT NULL,
    + CTC_TABLE varchar(128),
    + CTC_PARTITION varchar(767)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE NEXT_TXN_ID (
    + NTXN_NEXT bigint NOT NULL
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +INSERT INTO NEXT_TXN_ID VALUES(1);
    +
    +CREATE TABLE HIVE_LOCKS (
    + HL_LOCK_EXT_ID bigint NOT NULL,
    + HL_LOCK_INT_ID bigint NOT NULL,
    + HL_TXNID bigint,
    + HL_DB varchar(128) NOT NULL,
    + HL_TABLE varchar(128),
    + HL_PARTITION varchar(767),
    + HL_LOCK_STATE char(1) not null,
    + HL_LOCK_TYPE char(1) not null,
    + HL_LAST_HEARTBEAT bigint NOT NULL,
    + HL_ACQUIRED_AT bigint,
    + HL_USER varchar(128) NOT NULL,
    + HL_HOST varchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT int,
    + HL_AGENT_INFO varchar(128),
    + HL_BLOCKEDBY_EXT_ID bigint,
    + HL_BLOCKEDBY_INT_ID bigint,
    + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID),
    + KEY HIVE_LOCK_TXNID_INDEX (HL_TXNID)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE INDEX HL_TXNID_IDX ON HIVE_LOCKS (HL_TXNID);
    +
    +CREATE TABLE NEXT_LOCK_ID (
    + NL_NEXT bigint NOT NULL
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +INSERT INTO NEXT_LOCK_ID VALUES(1);
    +
    +CREATE TABLE COMPACTION_QUEUE (
    + CQ_ID bigint PRIMARY KEY,
    + CQ_DATABASE varchar(128) NOT NULL,
    + CQ_TABLE varchar(128) NOT NULL,
    + CQ_PARTITION varchar(767),
    + CQ_STATE char(1) NOT NULL,
    + CQ_TYPE char(1) NOT NULL,
    + CQ_WORKER_ID varchar(128),
    + CQ_START bigint,
    + CQ_RUN_AS varchar(128),
    + CQ_HIGHEST_TXN_ID bigint,
    + CQ_META_INFO varbinary(2048),
    + CQ_HADOOP_JOB_ID varchar(32)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO varbinary(2048),
    + CC_HADOOP_JOB_ID varchar(32)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +
    +CREATE TABLE NEXT_COMPACTION_QUEUE_ID (
    + NCQ_NEXT bigint NOT NULL
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1);
    +
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql b/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql
    index 1b32d93..477c10b 100644
    --- a/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql
    +++ b/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql
    @@ -1,5 +1,16 @@
      SELECT 'Upgrading MetaStore schema from 1.2.0 to 1.3.0' AS ' ';
      SOURCE 021-HIVE-7018.mysql.sql;
      SOURCE 022-HIVE-11970.mysql.sql;
    +SOURCE 023-HIVE-12807.mysql.sql;
    +SOURCE 024-HIVE-12814.mysql.sql;
    +SOURCE 025-HIVE-12816.mysql.sql;
    +SOURCE 026-HIVE-12818.mysql.sql;
    +SOURCE 027-HIVE-12819.mysql.sql;
    +SOURCE 028-HIVE-12821.mysql.sql;
    +SOURCE 029-HIVE-12822.mysql.sql;
    +SOURCE 030-HIVE-12823.mysql.sql;
    +SOURCE 031-HIVE-12831.mysql.sql;
    +SOURCE 032-HIVE-12832.mysql.sql;
    +
      UPDATE VERSION SET SCHEMA_VERSION='1.3.0', VERSION_COMMENT='Hive release version 1.3.0' where VER_ID=1;
      SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 1.3.0' AS ' ';

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql b/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql
    index 1340f27..4fc1ea7 100644
    --- a/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql
    +++ b/metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql
    @@ -1,6 +1,17 @@
      SELECT 'Upgrading MetaStore schema from 1.2.0 to 2.0.0' AS ' ';
      SOURCE 021-HIVE-7018.mysql.sql;
      SOURCE 022-HIVE-11970.mysql.sql;
    +SOURCE 023-HIVE-12807.mysql.sql;
    +SOURCE 024-HIVE-12814.mysql.sql;
    +SOURCE 025-HIVE-12816.mysql.sql;
    +SOURCE 026-HIVE-12818.mysql.sql;
    +SOURCE 027-HIVE-12819.mysql.sql;
    +SOURCE 028-HIVE-12821.mysql.sql;
    +SOURCE 029-HIVE-12822.mysql.sql;
    +SOURCE 030-HIVE-12823.mysql.sql;
    +SOURCE 031-HIVE-12831.mysql.sql;
    +SOURCE 032-HIVE-12832.mysql.sql;
    +
      UPDATE VERSION SET SCHEMA_VERSION='2.0.0', VERSION_COMMENT='Hive release version 2.0.0' where VER_ID=1;
      SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 2.0.0' AS ' ';


    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/023-HIVE-12807.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/023-HIVE-12807.oracle.sql b/metastore/scripts/upgrade/oracle/023-HIVE-12807.oracle.sql
    new file mode 100644
    index 0000000..0313e96
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/023-HIVE-12807.oracle.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD CQ_HIGHEST_TXN_ID NUMBER(19);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/024-HIVE-12814.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/024-HIVE-12814.oracle.sql b/metastore/scripts/upgrade/oracle/024-HIVE-12814.oracle.sql
    new file mode 100644
    index 0000000..d9a5575
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/024-HIVE-12814.oracle.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD CQ_META_INFO BLOB;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/025-HIVE-12816.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/025-HIVE-12816.oracle.sql b/metastore/scripts/upgrade/oracle/025-HIVE-12816.oracle.sql
    new file mode 100644
    index 0000000..9a96d8c
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/025-HIVE-12816.oracle.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD CQ_HADOOP_JOB_ID varchar2(32);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/026-HIVE-12818.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/026-HIVE-12818.oracle.sql b/metastore/scripts/upgrade/oracle/026-HIVE-12818.oracle.sql
    new file mode 100644
    index 0000000..9ecb43e
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/026-HIVE-12818.oracle.sql
    @@ -0,0 +1,17 @@
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID NUMBER(19) PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START NUMBER(19),
    + CC_END NUMBER(19),
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID NUMBER(19),
    + CC_META_INFO BLOB,
    + CC_HADOOP_JOB_ID varchar2(32)
    +) ROWDEPENDENCIES;
    +
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/027-HIVE-12819.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/027-HIVE-12819.oracle.sql b/metastore/scripts/upgrade/oracle/027-HIVE-12819.oracle.sql
    new file mode 100644
    index 0000000..0d74a98
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/027-HIVE-12819.oracle.sql
    @@ -0,0 +1 @@
    +ALTER TABLE TXNS ADD TXN_AGENT_INFO varchar2(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/028-HIVE-12821.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/028-HIVE-12821.oracle.sql b/metastore/scripts/upgrade/oracle/028-HIVE-12821.oracle.sql
    new file mode 100644
    index 0000000..152d2ab
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/028-HIVE-12821.oracle.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE TXNS ADD TXN_HEARTBEAT_COUNT number(10);
    +ALTER TABLE HIVE_LOCKS ADD HL_HEARTBEAT_COUNT number(10);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/029-HIVE-12822.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/029-HIVE-12822.oracle.sql b/metastore/scripts/upgrade/oracle/029-HIVE-12822.oracle.sql
    new file mode 100644
    index 0000000..63c0d77
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/029-HIVE-12822.oracle.sql
    @@ -0,0 +1 @@
    +ALTER TABLE TXNS ADD TXN_META_INFO varchar2(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/030-HIVE-12823.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/030-HIVE-12823.oracle.sql b/metastore/scripts/upgrade/oracle/030-HIVE-12823.oracle.sql
    new file mode 100644
    index 0000000..f938603
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/030-HIVE-12823.oracle.sql
    @@ -0,0 +1 @@
    +ALTER TABLE HIVE_LOCKS ADD HL_AGENT_INFO varchar2(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/031-HIVE-12381.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/031-HIVE-12381.oracle.sql b/metastore/scripts/upgrade/oracle/031-HIVE-12381.oracle.sql
    new file mode 100644
    index 0000000..35a9b9d
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/031-HIVE-12381.oracle.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE HIVE_LOCKS ADD HL_BLOCKEDBY_EXT_ID number(19);
    +ALTER TABLE HIVE_LOCKS ADD HL_BLOCKEDBY_INT_ID number(19);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/032-HIVE-12832.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/032-HIVE-12832.oracle.sql b/metastore/scripts/upgrade/oracle/032-HIVE-12832.oracle.sql
    new file mode 100644
    index 0000000..2b58d2e
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/032-HIVE-12832.oracle.sql
    @@ -0,0 +1,7 @@
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar2(128) NOT NULL,
    + MT_KEY2 number(19) NOT NULL,
    + MT_COMMENT varchar2(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql b/metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql
    index d2e7945..e162988 100644
    --- a/metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql
    +++ b/metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql
    @@ -780,7 +780,7 @@ CREATE INDEX FUNC_RU_N49 ON FUNC_RU (FUNC_ID);
      ------------------------------
      -- Transaction and lock tables
      ------------------------------
    -@hive-txn-schema-0.13.0.oracle.sql;
    +@hive-txn-schema-1.3.0.oracle.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql b/metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql
    index 2dcdd77..168473a 100644
    --- a/metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql
    +++ b/metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql
    @@ -780,7 +780,7 @@ CREATE INDEX FUNC_RU_N49 ON FUNC_RU (FUNC_ID);
      ------------------------------
      -- Transaction and lock tables
      ------------------------------
    -@hive-txn-schema-0.13.0.oracle.sql;
    +@hive-txn-schema-2.0.0.oracle.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql b/metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql
    index 88f2ca6..644463d 100644
    --- a/metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql
    +++ b/metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql
    @@ -780,7 +780,7 @@ CREATE INDEX FUNC_RU_N49 ON FUNC_RU (FUNC_ID);
      ------------------------------
      -- Transaction and lock tables
      ------------------------------
    -@hive-txn-schema-0.13.0.oracle.sql;
    +@hive-txn-schema-2.0.0.oracle.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/hive-txn-schema-1.3.0.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/hive-txn-schema-1.3.0.oracle.sql b/metastore/scripts/upgrade/oracle/hive-txn-schema-1.3.0.oracle.sql
    new file mode 100644
    index 0000000..788741a
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/hive-txn-schema-1.3.0.oracle.sql
    @@ -0,0 +1,120 @@
    +-- Licensed to the Apache Software Foundation (ASF) under one or more
    +-- contributor license agreements. See the NOTICE file distributed with
    +-- this work for additional information regarding copyright ownership.
    +-- The ASF licenses this file to You under the Apache License, Version 2.0
    +-- (the License); you may not use this file except in compliance with
    +-- the License. You may obtain a copy of the License at
    +--
    +-- http://www.apache.org/licenses/LICENSE-2.0
    +--
    +-- Unless required by applicable law or agreed to in writing, software
    +-- distributed under the License is distributed on an AS IS BASIS,
    +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +-- See the License for the specific language governing permissions and
    +-- limitations under the License.
    +
    +--
    +-- Tables for transaction management
    +--
    +
    +CREATE TABLE TXNS (
    + TXN_ID NUMBER(19) PRIMARY KEY,
    + TXN_STATE char(1) NOT NULL,
    + TXN_STARTED NUMBER(19) NOT NULL,
    + TXN_LAST_HEARTBEAT NUMBER(19) NOT NULL,
    + TXN_USER varchar(128) NOT NULL,
    + TXN_HOST varchar(128) NOT NULL,
    + TXN_AGENT_INFO varchar2(128),
    + TXN_META_INFO varchar2(128),
    + TXN_HEARTBEAT_COUNT number(10)
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE TXN_COMPONENTS (
    + TC_TXNID NUMBER(19) REFERENCES TXNS (TXN_ID),
    + TC_DATABASE VARCHAR2(128) NOT NULL,
    + TC_TABLE VARCHAR2(128),
    + TC_PARTITION VARCHAR2(767) NULL
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE COMPLETED_TXN_COMPONENTS (
    + CTC_TXNID NUMBER(19),
    + CTC_DATABASE varchar(128) NOT NULL,
    + CTC_TABLE varchar(128),
    + CTC_PARTITION varchar(767)
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE NEXT_TXN_ID (
    + NTXN_NEXT NUMBER(19) NOT NULL
    +);
    +INSERT INTO NEXT_TXN_ID VALUES(1);
    +
    +CREATE TABLE HIVE_LOCKS (
    + HL_LOCK_EXT_ID NUMBER(19) NOT NULL,
    + HL_LOCK_INT_ID NUMBER(19) NOT NULL,
    + HL_TXNID NUMBER(19),
    + HL_DB VARCHAR2(128) NOT NULL,
    + HL_TABLE VARCHAR2(128),
    + HL_PARTITION VARCHAR2(767),
    + HL_LOCK_STATE CHAR(1) NOT NULL,
    + HL_LOCK_TYPE CHAR(1) NOT NULL,
    + HL_LAST_HEARTBEAT NUMBER(19) NOT NULL,
    + HL_ACQUIRED_AT NUMBER(19),
    + HL_USER varchar(128) NOT NULL,
    + HL_HOST varchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT number(10),
    + HL_AGENT_INFO varchar2(128),
    + HL_BLOCKEDBY_EXT_ID number(19),
    + HL_BLOCKEDBY_INT_ID number(19),
    + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID)
    +) ROWDEPENDENCIES;
    +
    +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS (HL_TXNID);
    +
    +CREATE TABLE NEXT_LOCK_ID (
    + NL_NEXT NUMBER(19) NOT NULL
    +);
    +INSERT INTO NEXT_LOCK_ID VALUES(1);
    +
    +CREATE TABLE COMPACTION_QUEUE (
    + CQ_ID NUMBER(19) PRIMARY KEY,
    + CQ_DATABASE varchar(128) NOT NULL,
    + CQ_TABLE varchar(128) NOT NULL,
    + CQ_PARTITION varchar(767),
    + CQ_STATE char(1) NOT NULL,
    + CQ_TYPE char(1) NOT NULL,
    + CQ_WORKER_ID varchar(128),
    + CQ_START NUMBER(19),
    + CQ_RUN_AS varchar(128),
    + CQ_HIGHEST_TXN_ID NUMBER(19),
    + CQ_META_INFO BLOB,
    + CQ_HADOOP_JOB_ID varchar2(32)
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE NEXT_COMPACTION_QUEUE_ID (
    + NCQ_NEXT NUMBER(19) NOT NULL
    +);
    +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1);
    +
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID NUMBER(19) PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START NUMBER(19),
    + CC_END NUMBER(19),
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID NUMBER(19),
    + CC_META_INFO BLOB,
    + CC_HADOOP_JOB_ID varchar2(32)
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar2(128) NOT NULL,
    + MT_KEY2 number(19) NOT NULL,
    + MT_COMMENT varchar2(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/hive-txn-schema-2.0.0.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/hive-txn-schema-2.0.0.oracle.sql b/metastore/scripts/upgrade/oracle/hive-txn-schema-2.0.0.oracle.sql
    new file mode 100644
    index 0000000..788741a
    --- /dev/null
    +++ b/metastore/scripts/upgrade/oracle/hive-txn-schema-2.0.0.oracle.sql
    @@ -0,0 +1,120 @@
    +-- Licensed to the Apache Software Foundation (ASF) under one or more
    +-- contributor license agreements. See the NOTICE file distributed with
    +-- this work for additional information regarding copyright ownership.
    +-- The ASF licenses this file to You under the Apache License, Version 2.0
    +-- (the License); you may not use this file except in compliance with
    +-- the License. You may obtain a copy of the License at
    +--
    +-- http://www.apache.org/licenses/LICENSE-2.0
    +--
    +-- Unless required by applicable law or agreed to in writing, software
    +-- distributed under the License is distributed on an AS IS BASIS,
    +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +-- See the License for the specific language governing permissions and
    +-- limitations under the License.
    +
    +--
    +-- Tables for transaction management
    +--
    +
    +CREATE TABLE TXNS (
    + TXN_ID NUMBER(19) PRIMARY KEY,
    + TXN_STATE char(1) NOT NULL,
    + TXN_STARTED NUMBER(19) NOT NULL,
    + TXN_LAST_HEARTBEAT NUMBER(19) NOT NULL,
    + TXN_USER varchar(128) NOT NULL,
    + TXN_HOST varchar(128) NOT NULL,
    + TXN_AGENT_INFO varchar2(128),
    + TXN_META_INFO varchar2(128),
    + TXN_HEARTBEAT_COUNT number(10)
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE TXN_COMPONENTS (
    + TC_TXNID NUMBER(19) REFERENCES TXNS (TXN_ID),
    + TC_DATABASE VARCHAR2(128) NOT NULL,
    + TC_TABLE VARCHAR2(128),
    + TC_PARTITION VARCHAR2(767) NULL
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE COMPLETED_TXN_COMPONENTS (
    + CTC_TXNID NUMBER(19),
    + CTC_DATABASE varchar(128) NOT NULL,
    + CTC_TABLE varchar(128),
    + CTC_PARTITION varchar(767)
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE NEXT_TXN_ID (
    + NTXN_NEXT NUMBER(19) NOT NULL
    +);
    +INSERT INTO NEXT_TXN_ID VALUES(1);
    +
    +CREATE TABLE HIVE_LOCKS (
    + HL_LOCK_EXT_ID NUMBER(19) NOT NULL,
    + HL_LOCK_INT_ID NUMBER(19) NOT NULL,
    + HL_TXNID NUMBER(19),
    + HL_DB VARCHAR2(128) NOT NULL,
    + HL_TABLE VARCHAR2(128),
    + HL_PARTITION VARCHAR2(767),
    + HL_LOCK_STATE CHAR(1) NOT NULL,
    + HL_LOCK_TYPE CHAR(1) NOT NULL,
    + HL_LAST_HEARTBEAT NUMBER(19) NOT NULL,
    + HL_ACQUIRED_AT NUMBER(19),
    + HL_USER varchar(128) NOT NULL,
    + HL_HOST varchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT number(10),
    + HL_AGENT_INFO varchar2(128),
    + HL_BLOCKEDBY_EXT_ID number(19),
    + HL_BLOCKEDBY_INT_ID number(19),
    + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID)
    +) ROWDEPENDENCIES;
    +
    +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS (HL_TXNID);
    +
    +CREATE TABLE NEXT_LOCK_ID (
    + NL_NEXT NUMBER(19) NOT NULL
    +);
    +INSERT INTO NEXT_LOCK_ID VALUES(1);
    +
    +CREATE TABLE COMPACTION_QUEUE (
    + CQ_ID NUMBER(19) PRIMARY KEY,
    + CQ_DATABASE varchar(128) NOT NULL,
    + CQ_TABLE varchar(128) NOT NULL,
    + CQ_PARTITION varchar(767),
    + CQ_STATE char(1) NOT NULL,
    + CQ_TYPE char(1) NOT NULL,
    + CQ_WORKER_ID varchar(128),
    + CQ_START NUMBER(19),
    + CQ_RUN_AS varchar(128),
    + CQ_HIGHEST_TXN_ID NUMBER(19),
    + CQ_META_INFO BLOB,
    + CQ_HADOOP_JOB_ID varchar2(32)
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE NEXT_COMPACTION_QUEUE_ID (
    + NCQ_NEXT NUMBER(19) NOT NULL
    +);
    +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1);
    +
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID NUMBER(19) PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START NUMBER(19),
    + CC_END NUMBER(19),
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID NUMBER(19),
    + CC_META_INFO BLOB,
    + CC_HADOOP_JOB_ID varchar2(32)
    +) ROWDEPENDENCIES;
    +
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar2(128) NOT NULL,
    + MT_KEY2 number(19) NOT NULL,
    + MT_COMMENT varchar2(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql b/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql
    index bd283d4..94ee2c4 100644
    --- a/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql
    +++ b/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql
    @@ -1,6 +1,16 @@
      SELECT 'Upgrading MetaStore schema from 1.2.0 to 1.3.0' AS Status from dual;

      @022-HIVE-11970.oracle.sql;
    +@023-hive-12807.oracle.sql;
    +@024-hive-12814.oracle.sql;
    +@025-hive-12816.oracle.sql;
    +@026-hive-12818.oracle.sql;
    +@027-hive-12819.oracle.sql;
    +@028-hive-12821.oracle.sql;
    +@029-hive-12822.oracle.sql;
    +@030-hive-12823.oracle.sql;
    +@031-hive-12381.oracle.sql;
    +@032-hive-12832.oracle.sql;

      UPDATE VERSION SET SCHEMA_VERSION='1.3.0', VERSION_COMMENT='Hive release version 1.3.0' where VER_ID=1;
      SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 1.3.0' AS Status from dual;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql b/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql
    index ceb09be..f3a774a 100644
    --- a/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql
    +++ b/metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql
    @@ -1,6 +1,16 @@
      SELECT 'Upgrading MetaStore schema from 1.2.0 to 2.0.0' AS Status from dual;

      @022-HIVE-11970.oracle.sql;
    +@023-hive-12807.oracle.sql;
    +@024-hive-12814.oracle.sql;
    +@025-hive-12816.oracle.sql;
    +@026-hive-12818.oracle.sql;
    +@027-hive-12819.oracle.sql;
    +@028-hive-12821.oracle.sql;
    +@029-hive-12822.oracle.sql;
    +@030-hive-12823.oracle.sql;
    +@031-hive-12381.oracle.sql;
    +@032-hive-12832.oracle.sql;

      UPDATE VERSION SET SCHEMA_VERSION='2.0.0', VERSION_COMMENT='Hive release version 2.0.0' where VER_ID=1;
      SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 2.0.0' AS Status from dual;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/022-HIVE-12807.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/022-HIVE-12807.postgres.sql b/metastore/scripts/upgrade/postgres/022-HIVE-12807.postgres.sql
    new file mode 100644
    index 0000000..d4c7a18
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/022-HIVE-12807.postgres.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD COLUMN CQ_HIGHEST_TXN_ID bigint;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/023-HIVE-12814.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/023-HIVE-12814.postgres.sql b/metastore/scripts/upgrade/postgres/023-HIVE-12814.postgres.sql
    new file mode 100644
    index 0000000..37ef99e
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/023-HIVE-12814.postgres.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD COLUMN CQ_META_INFO bytea;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/024-HIVE-12816.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/024-HIVE-12816.postgres.sql b/metastore/scripts/upgrade/postgres/024-HIVE-12816.postgres.sql
    new file mode 100644
    index 0000000..fa987d9
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/024-HIVE-12816.postgres.sql
    @@ -0,0 +1 @@
    +ALTER TABLE COMPACTION_QUEUE ADD COLUMN CQ_HADOOP_JOB_ID varchar(32);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/025-HIVE-12818.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/025-HIVE-12818.postgres.sql b/metastore/scripts/upgrade/postgres/025-HIVE-12818.postgres.sql
    new file mode 100644
    index 0000000..5eb2f26
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/025-HIVE-12818.postgres.sql
    @@ -0,0 +1,17 @@
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO bytea,
    + CC_HADOOP_JOB_ID varchar(32)
    +);
    +
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/026-HIVE-12819.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/026-HIVE-12819.postgres.sql b/metastore/scripts/upgrade/postgres/026-HIVE-12819.postgres.sql
    new file mode 100644
    index 0000000..eceb910
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/026-HIVE-12819.postgres.sql
    @@ -0,0 +1 @@
    +ALTER TABLE TXNS ADD COLUMN TXN_AGENT_INFO varchar(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/027-HIVE-12821.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/027-HIVE-12821.postgres.sql b/metastore/scripts/upgrade/postgres/027-HIVE-12821.postgres.sql
    new file mode 100644
    index 0000000..ba5a51a
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/027-HIVE-12821.postgres.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE TXNS ADD COLUMN TXN_HEARTBEAT_COUNT integer;
    +ALTER TABLE HIVE_LOCKS ADD COLUMN HL_HEARTBEAT_COUNT integer;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/028-HIVE-12822.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/028-HIVE-12822.postgres.sql b/metastore/scripts/upgrade/postgres/028-HIVE-12822.postgres.sql
    new file mode 100644
    index 0000000..f4e9742
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/028-HIVE-12822.postgres.sql
    @@ -0,0 +1 @@
    +ALTER TABLE TXNS ADD COLUMN TXN_META_INFO varchar(128);

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/029-HIVE-12823.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/029-HIVE-12823.postgres.sql b/metastore/scripts/upgrade/postgres/029-HIVE-12823.postgres.sql
    new file mode 100644
    index 0000000..f7a980b
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/029-HIVE-12823.postgres.sql
    @@ -0,0 +1 @@
    +ALTER TABLE HIVE_LOCKS ADD COLUMN HL_AGENT_INFO varchar(128);
  • Gates at Jan 14, 2016 at 7:47 pm
    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/030-HIVE-12831.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/030-HIVE-12831.postgres.sql b/metastore/scripts/upgrade/postgres/030-HIVE-12831.postgres.sql
    new file mode 100644
    index 0000000..3f314e8
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/030-HIVE-12831.postgres.sql
    @@ -0,0 +1,2 @@
    +ALTER TABLE HIVE_LOCKS ADD COLUMN HL_BLOCKEDBY_EXT_ID bigint;
    +ALTER TABLE HIVE_LOCKS ADD COLUMN HL_BLOCKEDBY_INT_ID bigint;

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/031-HIVE-12832.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/031-HIVE-12832.postgres.sql b/metastore/scripts/upgrade/postgres/031-HIVE-12832.postgres.sql
    new file mode 100644
    index 0000000..0e5515c
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/031-HIVE-12832.postgres.sql
    @@ -0,0 +1,7 @@
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql b/metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql
    index 9bb5765..1ea19c3 100644
    --- a/metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql
    +++ b/metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql
    @@ -1449,7 +1449,7 @@ GRANT ALL ON SCHEMA public TO PUBLIC;
      ------------------------------
      -- Transaction and lock tables
      ------------------------------
    -\i hive-txn-schema-0.13.0.postgres.sql;
    +\i hive-txn-schema-1.3.0.postgres.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql b/metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql
    index c749a29..4f034d7 100644
    --- a/metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql
    +++ b/metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql
    @@ -1449,7 +1449,7 @@ GRANT ALL ON SCHEMA public TO PUBLIC;
      ------------------------------
      -- Transaction and lock tables
      ------------------------------
    -\i hive-txn-schema-0.13.0.postgres.sql;
    +\i hive-txn-schema-2.0.0.postgres.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql b/metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql
    index efc0f0c..1db9993 100644
    --- a/metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql
    +++ b/metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql
    @@ -1449,7 +1449,7 @@ GRANT ALL ON SCHEMA public TO PUBLIC;
      ------------------------------
      -- Transaction and lock tables
      ------------------------------
    -\i hive-txn-schema-0.13.0.postgres.sql;
    +\i hive-txn-schema-2.0.0.postgres.sql;

      -- -----------------------------------------------------------------
      -- Record schema version. Should be the last step in the init script

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/hive-txn-schema-1.3.0.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/hive-txn-schema-1.3.0.postgres.sql b/metastore/scripts/upgrade/postgres/hive-txn-schema-1.3.0.postgres.sql
    new file mode 100644
    index 0000000..b2fc1a8
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/hive-txn-schema-1.3.0.postgres.sql
    @@ -0,0 +1,121 @@
    +-- Licensed to the Apache Software Foundation (ASF) under one or more
    +-- contributor license agreements. See the NOTICE file distributed with
    +-- this work for additional information regarding copyright ownership.
    +-- The ASF licenses this file to You under the Apache License, Version 2.0
    +-- (the "License"); you may not use this file except in compliance with
    +-- the License. You may obtain a copy of the License at
    +--
    +-- http://www.apache.org/licenses/LICENSE-2.0
    +--
    +-- Unless required by applicable law or agreed to in writing, software
    +-- distributed under the License is distributed on an "AS IS" BASIS,
    +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +-- See the License for the specific language governing permissions and
    +-- limitations under the License.
    +
    +--
    +-- Tables for transaction management
    +--
    +
    +CREATE TABLE TXNS (
    + TXN_ID bigint PRIMARY KEY,
    + TXN_STATE char(1) NOT NULL,
    + TXN_STARTED bigint NOT NULL,
    + TXN_LAST_HEARTBEAT bigint NOT NULL,
    + TXN_USER varchar(128) NOT NULL,
    + TXN_HOST varchar(128) NOT NULL,
    + TXN_AGENT_INFO varchar(128),
    + TXN_META_INFO varchar(128),
    + TXN_HEARTBEAT_COUNT integer
    +);
    +
    +CREATE TABLE TXN_COMPONENTS (
    + TC_TXNID bigint REFERENCES TXNS (TXN_ID),
    + TC_DATABASE varchar(128) NOT NULL,
    + TC_TABLE varchar(128),
    + TC_PARTITION varchar(767) DEFAULT NULL
    +);
    +
    +CREATE TABLE COMPLETED_TXN_COMPONENTS (
    + CTC_TXNID bigint,
    + CTC_DATABASE varchar(128) NOT NULL,
    + CTC_TABLE varchar(128),
    + CTC_PARTITION varchar(767)
    +);
    +
    +CREATE TABLE NEXT_TXN_ID (
    + NTXN_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_TXN_ID VALUES(1);
    +
    +CREATE TABLE HIVE_LOCKS (
    + HL_LOCK_EXT_ID bigint NOT NULL,
    + HL_LOCK_INT_ID bigint NOT NULL,
    + HL_TXNID bigint,
    + HL_DB varchar(128) NOT NULL,
    + HL_TABLE varchar(128),
    + HL_PARTITION varchar(767) DEFAULT NULL,
    + HL_LOCK_STATE char(1) NOT NULL,
    + HL_LOCK_TYPE char(1) NOT NULL,
    + HL_LAST_HEARTBEAT bigint NOT NULL,
    + HL_ACQUIRED_AT bigint,
    + HL_USER varchar(128) NOT NULL,
    + HL_HOST varchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT integer,
    + HL_AGENT_INFO varchar(128),
    + HL_BLOCKEDBY_EXT_ID bigint,
    + HL_BLOCKEDBY_INT_ID bigint,
    + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID)
    +);
    +
    +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS USING hash (HL_TXNID);
    +
    +CREATE TABLE NEXT_LOCK_ID (
    + NL_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_LOCK_ID VALUES(1);
    +
    +CREATE TABLE COMPACTION_QUEUE (
    + CQ_ID bigint PRIMARY KEY,
    + CQ_DATABASE varchar(128) NOT NULL,
    + CQ_TABLE varchar(128) NOT NULL,
    + CQ_PARTITION varchar(767),
    + CQ_STATE char(1) NOT NULL,
    + CQ_TYPE char(1) NOT NULL,
    + CQ_WORKER_ID varchar(128),
    + CQ_START bigint,
    + CQ_RUN_AS varchar(128),
    + CQ_HIGHEST_TXN_ID bigint,
    + CQ_META_INFO bytea,
    + CQ_HADOOP_JOB_ID varchar(32)
    +);
    +
    +CREATE TABLE NEXT_COMPACTION_QUEUE_ID (
    + NCQ_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1);
    +
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO bytea,
    + CC_HADOOP_JOB_ID varchar(32)
    +);
    +
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/hive-txn-schema-2.0.0.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/hive-txn-schema-2.0.0.postgres.sql b/metastore/scripts/upgrade/postgres/hive-txn-schema-2.0.0.postgres.sql
    new file mode 100644
    index 0000000..b2fc1a8
    --- /dev/null
    +++ b/metastore/scripts/upgrade/postgres/hive-txn-schema-2.0.0.postgres.sql
    @@ -0,0 +1,121 @@
    +-- Licensed to the Apache Software Foundation (ASF) under one or more
    +-- contributor license agreements. See the NOTICE file distributed with
    +-- this work for additional information regarding copyright ownership.
    +-- The ASF licenses this file to You under the Apache License, Version 2.0
    +-- (the "License"); you may not use this file except in compliance with
    +-- the License. You may obtain a copy of the License at
    +--
    +-- http://www.apache.org/licenses/LICENSE-2.0
    +--
    +-- Unless required by applicable law or agreed to in writing, software
    +-- distributed under the License is distributed on an "AS IS" BASIS,
    +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +-- See the License for the specific language governing permissions and
    +-- limitations under the License.
    +
    +--
    +-- Tables for transaction management
    +--
    +
    +CREATE TABLE TXNS (
    + TXN_ID bigint PRIMARY KEY,
    + TXN_STATE char(1) NOT NULL,
    + TXN_STARTED bigint NOT NULL,
    + TXN_LAST_HEARTBEAT bigint NOT NULL,
    + TXN_USER varchar(128) NOT NULL,
    + TXN_HOST varchar(128) NOT NULL,
    + TXN_AGENT_INFO varchar(128),
    + TXN_META_INFO varchar(128),
    + TXN_HEARTBEAT_COUNT integer
    +);
    +
    +CREATE TABLE TXN_COMPONENTS (
    + TC_TXNID bigint REFERENCES TXNS (TXN_ID),
    + TC_DATABASE varchar(128) NOT NULL,
    + TC_TABLE varchar(128),
    + TC_PARTITION varchar(767) DEFAULT NULL
    +);
    +
    +CREATE TABLE COMPLETED_TXN_COMPONENTS (
    + CTC_TXNID bigint,
    + CTC_DATABASE varchar(128) NOT NULL,
    + CTC_TABLE varchar(128),
    + CTC_PARTITION varchar(767)
    +);
    +
    +CREATE TABLE NEXT_TXN_ID (
    + NTXN_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_TXN_ID VALUES(1);
    +
    +CREATE TABLE HIVE_LOCKS (
    + HL_LOCK_EXT_ID bigint NOT NULL,
    + HL_LOCK_INT_ID bigint NOT NULL,
    + HL_TXNID bigint,
    + HL_DB varchar(128) NOT NULL,
    + HL_TABLE varchar(128),
    + HL_PARTITION varchar(767) DEFAULT NULL,
    + HL_LOCK_STATE char(1) NOT NULL,
    + HL_LOCK_TYPE char(1) NOT NULL,
    + HL_LAST_HEARTBEAT bigint NOT NULL,
    + HL_ACQUIRED_AT bigint,
    + HL_USER varchar(128) NOT NULL,
    + HL_HOST varchar(128) NOT NULL,
    + HL_HEARTBEAT_COUNT integer,
    + HL_AGENT_INFO varchar(128),
    + HL_BLOCKEDBY_EXT_ID bigint,
    + HL_BLOCKEDBY_INT_ID bigint,
    + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID)
    +);
    +
    +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS USING hash (HL_TXNID);
    +
    +CREATE TABLE NEXT_LOCK_ID (
    + NL_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_LOCK_ID VALUES(1);
    +
    +CREATE TABLE COMPACTION_QUEUE (
    + CQ_ID bigint PRIMARY KEY,
    + CQ_DATABASE varchar(128) NOT NULL,
    + CQ_TABLE varchar(128) NOT NULL,
    + CQ_PARTITION varchar(767),
    + CQ_STATE char(1) NOT NULL,
    + CQ_TYPE char(1) NOT NULL,
    + CQ_WORKER_ID varchar(128),
    + CQ_START bigint,
    + CQ_RUN_AS varchar(128),
    + CQ_HIGHEST_TXN_ID bigint,
    + CQ_META_INFO bytea,
    + CQ_HADOOP_JOB_ID varchar(32)
    +);
    +
    +CREATE TABLE NEXT_COMPACTION_QUEUE_ID (
    + NCQ_NEXT bigint NOT NULL
    +);
    +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1);
    +
    +CREATE TABLE COMPLETED_COMPACTIONS (
    + CC_ID bigint PRIMARY KEY,
    + CC_DATABASE varchar(128) NOT NULL,
    + CC_TABLE varchar(128) NOT NULL,
    + CC_PARTITION varchar(767),
    + CC_STATE char(1) NOT NULL,
    + CC_TYPE char(1) NOT NULL,
    + CC_WORKER_ID varchar(128),
    + CC_START bigint,
    + CC_END bigint,
    + CC_RUN_AS varchar(128),
    + CC_HIGHEST_TXN_ID bigint,
    + CC_META_INFO bytea,
    + CC_HADOOP_JOB_ID varchar(32)
    +);
    +
    +CREATE TABLE AUX_TABLE (
    + MT_KEY1 varchar(128) NOT NULL,
    + MT_KEY2 bigint NOT NULL,
    + MT_COMMENT varchar(255),
    + PRIMARY KEY(MT_KEY1, MT_KEY2)
    +);
    +
    +

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql b/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql
    index b1ec241..6eb5620 100644
    --- a/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql
    +++ b/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql
    @@ -1,6 +1,16 @@
      SELECT 'Upgrading MetaStore schema from 1.2.0 to 1.3.0';

      \i 021-HIVE-11970.postgres.sql;
    +\i 022-HIVE-12807.postgres.sql;
    +\i 023-HIVE-12814.postgres.sql;
    +\i 024-HIVE-12816.postgres.sql;
    +\i 025-HIVE-12818.postgres.sql;
    +\i 026-HIVE-12819.postgres.sql;
    +\i 027-HIVE-12821.postgres.sql;
    +\i 028-HIVE-12822.postgres.sql;
    +\i 029-HIVE-12823.postgres.sql;
    +\i 030-HIVE-12831.postgres.sql;
    +\i 031-HIVE-12832.postgres.sql;

      UPDATE "VERSION" SET "SCHEMA_VERSION"='1.3.0', "VERSION_COMMENT"='Hive release version 1.3.0' where "VER_ID"=1;
      SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 1.3.0';

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql
    ----------------------------------------------------------------------
    diff --git a/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql b/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql
    index 628444c..77438c9 100644
    --- a/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql
    +++ b/metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql
    @@ -1,6 +1,16 @@
      SELECT 'Upgrading MetaStore schema from 1.2.0 to 2.0.0';

      \i 021-HIVE-11970.postgres.sql;
    +\i 022-HIVE-12807.postgres.sql;
    +\i 023-HIVE-12814.postgres.sql;
    +\i 024-HIVE-12816.postgres.sql;
    +\i 025-HIVE-12818.postgres.sql;
    +\i 026-HIVE-12819.postgres.sql;
    +\i 027-HIVE-12821.postgres.sql;
    +\i 028-HIVE-12822.postgres.sql;
    +\i 029-HIVE-12823.postgres.sql;
    +\i 030-HIVE-12831.postgres.sql;
    +\i 031-HIVE-12832.postgres.sql;

      UPDATE "VERSION" SET "SCHEMA_VERSION"='2.0.0', "VERSION_COMMENT"='Hive release version 2.0.0' where "VER_ID"=1;
      SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 2.0.0';

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp
    ----------------------------------------------------------------------
    diff --git a/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp b/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp
    index d997e33..0203b06 100644
    --- a/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp
    +++ b/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp
    @@ -9975,6 +9975,21 @@ void TxnInfo::__set_hostname(const std::string& val) {
        this->hostname = val;
      }

    +void TxnInfo::__set_agentInfo(const std::string& val) {
    + this->agentInfo = val;
    +__isset.agentInfo = true;
    +}
    +
    +void TxnInfo::__set_heartbeatCount(const int32_t val) {
    + this->heartbeatCount = val;
    +__isset.heartbeatCount = true;
    +}
    +
    +void TxnInfo::__set_metaInfo(const std::string& val) {
    + this->metaInfo = val;
    +__isset.metaInfo = true;
    +}
    +
      uint32_t TxnInfo::read(::apache::thrift::protocol::TProtocol* iprot) {

        apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
    @@ -10034,6 +10049,30 @@ uint32_t TxnInfo::read(::apache::thrift::protocol::TProtocol* iprot) {
                xfer += iprot->skip(ftype);
              }
              break;
    + case 5:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->agentInfo);
    + this->__isset.agentInfo = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 6:
    + if (ftype == ::apache::thrift::protocol::T_I32) {
    + xfer += iprot->readI32(this->heartbeatCount);
    + this->__isset.heartbeatCount = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 7:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->metaInfo);
    + this->__isset.metaInfo = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
            default:
              xfer += iprot->skip(ftype);
              break;
    @@ -10075,6 +10114,21 @@ uint32_t TxnInfo::write(::apache::thrift::protocol::TProtocol* oprot) const {
        xfer += oprot->writeString(this->hostname);
        xfer += oprot->writeFieldEnd();

    + if (this->__isset.agentInfo) {
    + xfer += oprot->writeFieldBegin("agentInfo", ::apache::thrift::protocol::T_STRING, 5);
    + xfer += oprot->writeString(this->agentInfo);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.heartbeatCount) {
    + xfer += oprot->writeFieldBegin("heartbeatCount", ::apache::thrift::protocol::T_I32, 6);
    + xfer += oprot->writeI32(this->heartbeatCount);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.metaInfo) {
    + xfer += oprot->writeFieldBegin("metaInfo", ::apache::thrift::protocol::T_STRING, 7);
    + xfer += oprot->writeString(this->metaInfo);
    + xfer += oprot->writeFieldEnd();
    + }
        xfer += oprot->writeFieldStop();
        xfer += oprot->writeStructEnd();
        return xfer;
    @@ -10086,6 +10140,10 @@ void swap(TxnInfo &a, TxnInfo &b) {
        swap(a.state, b.state);
        swap(a.user, b.user);
        swap(a.hostname, b.hostname);
    + swap(a.agentInfo, b.agentInfo);
    + swap(a.heartbeatCount, b.heartbeatCount);
    + swap(a.metaInfo, b.metaInfo);
    + swap(a.__isset, b.__isset);
      }

      TxnInfo::TxnInfo(const TxnInfo& other465) {
    @@ -10093,12 +10151,20 @@ TxnInfo::TxnInfo(const TxnInfo& other465) {
        state = other465.state;
        user = other465.user;
        hostname = other465.hostname;
    + agentInfo = other465.agentInfo;
    + heartbeatCount = other465.heartbeatCount;
    + metaInfo = other465.metaInfo;
    + __isset = other465.__isset;
      }
      TxnInfo& TxnInfo::operator=(const TxnInfo& other466) {
        id = other466.id;
        state = other466.state;
        user = other466.user;
        hostname = other466.hostname;
    + agentInfo = other466.agentInfo;
    + heartbeatCount = other466.heartbeatCount;
    + metaInfo = other466.metaInfo;
    + __isset = other466.__isset;
        return *this;
      }
      void TxnInfo::printTo(std::ostream& out) const {
    @@ -10108,6 +10174,9 @@ void TxnInfo::printTo(std::ostream& out) const {
        out << ", " << "state=" << to_string(state);
        out << ", " << "user=" << to_string(user);
        out << ", " << "hostname=" << to_string(hostname);
    + out << ", " << "agentInfo="; (__isset.agentInfo ? (out << to_string(agentInfo)) : (out << "<null>"));
    + out << ", " << "heartbeatCount="; (__isset.heartbeatCount ? (out << to_string(heartbeatCount)) : (out << "<null>"));
    + out << ", " << "metaInfo="; (__isset.metaInfo ? (out << to_string(metaInfo)) : (out << "<null>"));
        out << ")";
      }

    @@ -10387,6 +10456,11 @@ void OpenTxnRequest::__set_hostname(const std::string& val) {
        this->hostname = val;
      }

    +void OpenTxnRequest::__set_agentInfo(const std::string& val) {
    + this->agentInfo = val;
    +__isset.agentInfo = true;
    +}
    +
      uint32_t OpenTxnRequest::read(::apache::thrift::protocol::TProtocol* iprot) {

        apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
    @@ -10435,6 +10509,14 @@ uint32_t OpenTxnRequest::read(::apache::thrift::protocol::TProtocol* iprot) {
                xfer += iprot->skip(ftype);
              }
              break;
    + case 4:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->agentInfo);
    + this->__isset.agentInfo = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
            default:
              xfer += iprot->skip(ftype);
              break;
    @@ -10470,6 +10552,11 @@ uint32_t OpenTxnRequest::write(::apache::thrift::protocol::TProtocol* oprot) con
        xfer += oprot->writeString(this->hostname);
        xfer += oprot->writeFieldEnd();

    + if (this->__isset.agentInfo) {
    + xfer += oprot->writeFieldBegin("agentInfo", ::apache::thrift::protocol::T_STRING, 4);
    + xfer += oprot->writeString(this->agentInfo);
    + xfer += oprot->writeFieldEnd();
    + }
        xfer += oprot->writeFieldStop();
        xfer += oprot->writeStructEnd();
        return xfer;
    @@ -10480,17 +10567,23 @@ void swap(OpenTxnRequest &a, OpenTxnRequest &b) {
        swap(a.num_txns, b.num_txns);
        swap(a.user, b.user);
        swap(a.hostname, b.hostname);
    + swap(a.agentInfo, b.agentInfo);
    + swap(a.__isset, b.__isset);
      }

      OpenTxnRequest::OpenTxnRequest(const OpenTxnRequest& other484) {
        num_txns = other484.num_txns;
        user = other484.user;
        hostname = other484.hostname;
    + agentInfo = other484.agentInfo;
    + __isset = other484.__isset;
      }
      OpenTxnRequest& OpenTxnRequest::operator=(const OpenTxnRequest& other485) {
        num_txns = other485.num_txns;
        user = other485.user;
        hostname = other485.hostname;
    + agentInfo = other485.agentInfo;
    + __isset = other485.__isset;
        return *this;
      }
      void OpenTxnRequest::printTo(std::ostream& out) const {
    @@ -10499,6 +10592,7 @@ void OpenTxnRequest::printTo(std::ostream& out) const {
        out << "num_txns=" << to_string(num_txns);
        out << ", " << "user=" << to_string(user);
        out << ", " << "hostname=" << to_string(hostname);
    + out << ", " << "agentInfo="; (__isset.agentInfo ? (out << to_string(agentInfo)) : (out << "<null>"));
        out << ")";
      }

    @@ -10985,6 +11079,11 @@ void LockRequest::__set_hostname(const std::string& val) {
        this->hostname = val;
      }

    +void LockRequest::__set_agentInfo(const std::string& val) {
    + this->agentInfo = val;
    +__isset.agentInfo = true;
    +}
    +
      uint32_t LockRequest::read(::apache::thrift::protocol::TProtocol* iprot) {

        apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
    @@ -11053,6 +11152,14 @@ uint32_t LockRequest::read(::apache::thrift::protocol::TProtocol* iprot) {
                xfer += iprot->skip(ftype);
              }
              break;
    + case 5:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->agentInfo);
    + this->__isset.agentInfo = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
            default:
              xfer += iprot->skip(ftype);
              break;
    @@ -11101,6 +11208,11 @@ uint32_t LockRequest::write(::apache::thrift::protocol::TProtocol* oprot) const
        xfer += oprot->writeString(this->hostname);
        xfer += oprot->writeFieldEnd();

    + if (this->__isset.agentInfo) {
    + xfer += oprot->writeFieldBegin("agentInfo", ::apache::thrift::protocol::T_STRING, 5);
    + xfer += oprot->writeString(this->agentInfo);
    + xfer += oprot->writeFieldEnd();
    + }
        xfer += oprot->writeFieldStop();
        xfer += oprot->writeStructEnd();
        return xfer;
    @@ -11112,6 +11224,7 @@ void swap(LockRequest &a, LockRequest &b) {
        swap(a.txnid, b.txnid);
        swap(a.user, b.user);
        swap(a.hostname, b.hostname);
    + swap(a.agentInfo, b.agentInfo);
        swap(a.__isset, b.__isset);
      }

    @@ -11120,6 +11233,7 @@ LockRequest::LockRequest(const LockRequest& other508) {
        txnid = other508.txnid;
        user = other508.user;
        hostname = other508.hostname;
    + agentInfo = other508.agentInfo;
        __isset = other508.__isset;
      }
      LockRequest& LockRequest::operator=(const LockRequest& other509) {
    @@ -11127,6 +11241,7 @@ LockRequest& LockRequest::operator=(const LockRequest& other509) {
        txnid = other509.txnid;
        user = other509.user;
        hostname = other509.hostname;
    + agentInfo = other509.agentInfo;
        __isset = other509.__isset;
        return *this;
      }
    @@ -11137,6 +11252,7 @@ void LockRequest::printTo(std::ostream& out) const {
        out << ", " << "txnid="; (__isset.txnid ? (out << to_string(txnid)) : (out << "<null>"));
        out << ", " << "user=" << to_string(user);
        out << ", " << "hostname=" << to_string(hostname);
    + out << ", " << "agentInfo="; (__isset.agentInfo ? (out << to_string(agentInfo)) : (out << "<null>"));
        out << ")";
      }

    @@ -11260,6 +11376,16 @@ void CheckLockRequest::__set_lockid(const int64_t val) {
        this->lockid = val;
      }

    +void CheckLockRequest::__set_txnid(const int64_t val) {
    + this->txnid = val;
    +__isset.txnid = true;
    +}
    +
    +void CheckLockRequest::__set_elapsed_ms(const int64_t val) {
    + this->elapsed_ms = val;
    +__isset.elapsed_ms = true;
    +}
    +
      uint32_t CheckLockRequest::read(::apache::thrift::protocol::TProtocol* iprot) {

        apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
    @@ -11290,6 +11416,22 @@ uint32_t CheckLockRequest::read(::apache::thrift::protocol::TProtocol* iprot) {
                xfer += iprot->skip(ftype);
              }
              break;
    + case 2:
    + if (ftype == ::apache::thrift::protocol::T_I64) {
    + xfer += iprot->readI64(this->txnid);
    + this->__isset.txnid = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 3:
    + if (ftype == ::apache::thrift::protocol::T_I64) {
    + xfer += iprot->readI64(this->elapsed_ms);
    + this->__isset.elapsed_ms = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
            default:
              xfer += iprot->skip(ftype);
              break;
    @@ -11313,6 +11455,16 @@ uint32_t CheckLockRequest::write(::apache::thrift::protocol::TProtocol* oprot) c
        xfer += oprot->writeI64(this->lockid);
        xfer += oprot->writeFieldEnd();

    + if (this->__isset.txnid) {
    + xfer += oprot->writeFieldBegin("txnid", ::apache::thrift::protocol::T_I64, 2);
    + xfer += oprot->writeI64(this->txnid);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.elapsed_ms) {
    + xfer += oprot->writeFieldBegin("elapsed_ms", ::apache::thrift::protocol::T_I64, 3);
    + xfer += oprot->writeI64(this->elapsed_ms);
    + xfer += oprot->writeFieldEnd();
    + }
        xfer += oprot->writeFieldStop();
        xfer += oprot->writeStructEnd();
        return xfer;
    @@ -11321,19 +11473,30 @@ uint32_t CheckLockRequest::write(::apache::thrift::protocol::TProtocol* oprot) c
      void swap(CheckLockRequest &a, CheckLockRequest &b) {
        using ::std::swap;
        swap(a.lockid, b.lockid);
    + swap(a.txnid, b.txnid);
    + swap(a.elapsed_ms, b.elapsed_ms);
    + swap(a.__isset, b.__isset);
      }

      CheckLockRequest::CheckLockRequest(const CheckLockRequest& other513) {
        lockid = other513.lockid;
    + txnid = other513.txnid;
    + elapsed_ms = other513.elapsed_ms;
    + __isset = other513.__isset;
      }
      CheckLockRequest& CheckLockRequest::operator=(const CheckLockRequest& other514) {
        lockid = other514.lockid;
    + txnid = other514.txnid;
    + elapsed_ms = other514.elapsed_ms;
    + __isset = other514.__isset;
        return *this;
      }
      void CheckLockRequest::printTo(std::ostream& out) const {
        using ::apache::thrift::to_string;
        out << "CheckLockRequest(";
        out << "lockid=" << to_string(lockid);
    + out << ", " << "txnid="; (__isset.txnid ? (out << to_string(txnid)) : (out << "<null>"));
    + out << ", " << "elapsed_ms="; (__isset.elapsed_ms ? (out << to_string(elapsed_ms)) : (out << "<null>"));
        out << ")";
      }

    @@ -11428,6 +11591,26 @@ ShowLocksRequest::~ShowLocksRequest() throw() {
      }


    +void ShowLocksRequest::__set_dbname(const std::string& val) {
    + this->dbname = val;
    +__isset.dbname = true;
    +}
    +
    +void ShowLocksRequest::__set_tablename(const std::string& val) {
    + this->tablename = val;
    +__isset.tablename = true;
    +}
    +
    +void ShowLocksRequest::__set_partname(const std::string& val) {
    + this->partname = val;
    +__isset.partname = true;
    +}
    +
    +void ShowLocksRequest::__set_isExtended(const bool val) {
    + this->isExtended = val;
    +__isset.isExtended = true;
    +}
    +
      uint32_t ShowLocksRequest::read(::apache::thrift::protocol::TProtocol* iprot) {

        apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
    @@ -11447,7 +11630,44 @@ uint32_t ShowLocksRequest::read(::apache::thrift::protocol::TProtocol* iprot) {
          if (ftype == ::apache::thrift::protocol::T_STOP) {
            break;
          }
    - xfer += iprot->skip(ftype);
    + switch (fid)
    + {
    + case 1:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->dbname);
    + this->__isset.dbname = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 2:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->tablename);
    + this->__isset.tablename = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 3:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->partname);
    + this->__isset.partname = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 4:
    + if (ftype == ::apache::thrift::protocol::T_BOOL) {
    + xfer += iprot->readBool(this->isExtended);
    + this->__isset.isExtended = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + default:
    + xfer += iprot->skip(ftype);
    + break;
    + }
          xfer += iprot->readFieldEnd();
        }

    @@ -11461,6 +11681,26 @@ uint32_t ShowLocksRequest::write(::apache::thrift::protocol::TProtocol* oprot) c
        apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
        xfer += oprot->writeStructBegin("ShowLocksRequest");

    + if (this->__isset.dbname) {
    + xfer += oprot->writeFieldBegin("dbname", ::apache::thrift::protocol::T_STRING, 1);
    + xfer += oprot->writeString(this->dbname);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.tablename) {
    + xfer += oprot->writeFieldBegin("tablename", ::apache::thrift::protocol::T_STRING, 2);
    + xfer += oprot->writeString(this->tablename);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.partname) {
    + xfer += oprot->writeFieldBegin("partname", ::apache::thrift::protocol::T_STRING, 3);
    + xfer += oprot->writeString(this->partname);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.isExtended) {
    + xfer += oprot->writeFieldBegin("isExtended", ::apache::thrift::protocol::T_BOOL, 4);
    + xfer += oprot->writeBool(this->isExtended);
    + xfer += oprot->writeFieldEnd();
    + }
        xfer += oprot->writeFieldStop();
        xfer += oprot->writeStructEnd();
        return xfer;
    @@ -11468,20 +11708,35 @@ uint32_t ShowLocksRequest::write(::apache::thrift::protocol::TProtocol* oprot) c

      void swap(ShowLocksRequest &a, ShowLocksRequest &b) {
        using ::std::swap;
    - (void) a;
    - (void) b;
    + swap(a.dbname, b.dbname);
    + swap(a.tablename, b.tablename);
    + swap(a.partname, b.partname);
    + swap(a.isExtended, b.isExtended);
    + swap(a.__isset, b.__isset);
      }

      ShowLocksRequest::ShowLocksRequest(const ShowLocksRequest& other517) {
    - (void) other517;
    + dbname = other517.dbname;
    + tablename = other517.tablename;
    + partname = other517.partname;
    + isExtended = other517.isExtended;
    + __isset = other517.__isset;
      }
      ShowLocksRequest& ShowLocksRequest::operator=(const ShowLocksRequest& other518) {
    - (void) other518;
    + dbname = other518.dbname;
    + tablename = other518.tablename;
    + partname = other518.partname;
    + isExtended = other518.isExtended;
    + __isset = other518.__isset;
        return *this;
      }
      void ShowLocksRequest::printTo(std::ostream& out) const {
        using ::apache::thrift::to_string;
        out << "ShowLocksRequest(";
    + out << "dbname="; (__isset.dbname ? (out << to_string(dbname)) : (out << "<null>"));
    + out << ", " << "tablename="; (__isset.tablename ? (out << to_string(tablename)) : (out << "<null>"));
    + out << ", " << "partname="; (__isset.partname ? (out << to_string(partname)) : (out << "<null>"));
    + out << ", " << "isExtended="; (__isset.isExtended ? (out << to_string(isExtended)) : (out << "<null>"));
        out << ")";
      }

    @@ -11538,6 +11793,31 @@ void ShowLocksResponseElement::__set_hostname(const std::string& val) {
        this->hostname = val;
      }

    +void ShowLocksResponseElement::__set_heartbeatCount(const int32_t val) {
    + this->heartbeatCount = val;
    +__isset.heartbeatCount = true;
    +}
    +
    +void ShowLocksResponseElement::__set_agentInfo(const std::string& val) {
    + this->agentInfo = val;
    +__isset.agentInfo = true;
    +}
    +
    +void ShowLocksResponseElement::__set_blockedByExtId(const int64_t val) {
    + this->blockedByExtId = val;
    +__isset.blockedByExtId = true;
    +}
    +
    +void ShowLocksResponseElement::__set_blockedByIntId(const int64_t val) {
    + this->blockedByIntId = val;
    +__isset.blockedByIntId = true;
    +}
    +
    +void ShowLocksResponseElement::__set_lockIdInternal(const int64_t val) {
    + this->lockIdInternal = val;
    +__isset.lockIdInternal = true;
    +}
    +
      uint32_t ShowLocksResponseElement::read(::apache::thrift::protocol::TProtocol* iprot) {

        apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
    @@ -11658,6 +11938,46 @@ uint32_t ShowLocksResponseElement::read(::apache::thrift::protocol::TProtocol* i
                xfer += iprot->skip(ftype);
              }
              break;
    + case 12:
    + if (ftype == ::apache::thrift::protocol::T_I32) {
    + xfer += iprot->readI32(this->heartbeatCount);
    + this->__isset.heartbeatCount = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 13:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->agentInfo);
    + this->__isset.agentInfo = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 14:
    + if (ftype == ::apache::thrift::protocol::T_I64) {
    + xfer += iprot->readI64(this->blockedByExtId);
    + this->__isset.blockedByExtId = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 15:
    + if (ftype == ::apache::thrift::protocol::T_I64) {
    + xfer += iprot->readI64(this->blockedByIntId);
    + this->__isset.blockedByIntId = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 16:
    + if (ftype == ::apache::thrift::protocol::T_I64) {
    + xfer += iprot->readI64(this->lockIdInternal);
    + this->__isset.lockIdInternal = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
            default:
              xfer += iprot->skip(ftype);
              break;
    @@ -11737,6 +12057,31 @@ uint32_t ShowLocksResponseElement::write(::apache::thrift::protocol::TProtocol*
        xfer += oprot->writeString(this->hostname);
        xfer += oprot->writeFieldEnd();

    + if (this->__isset.heartbeatCount) {
    + xfer += oprot->writeFieldBegin("heartbeatCount", ::apache::thrift::protocol::T_I32, 12);
    + xfer += oprot->writeI32(this->heartbeatCount);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.agentInfo) {
    + xfer += oprot->writeFieldBegin("agentInfo", ::apache::thrift::protocol::T_STRING, 13);
    + xfer += oprot->writeString(this->agentInfo);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.blockedByExtId) {
    + xfer += oprot->writeFieldBegin("blockedByExtId", ::apache::thrift::protocol::T_I64, 14);
    + xfer += oprot->writeI64(this->blockedByExtId);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.blockedByIntId) {
    + xfer += oprot->writeFieldBegin("blockedByIntId", ::apache::thrift::protocol::T_I64, 15);
    + xfer += oprot->writeI64(this->blockedByIntId);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.lockIdInternal) {
    + xfer += oprot->writeFieldBegin("lockIdInternal", ::apache::thrift::protocol::T_I64, 16);
    + xfer += oprot->writeI64(this->lockIdInternal);
    + xfer += oprot->writeFieldEnd();
    + }
        xfer += oprot->writeFieldStop();
        xfer += oprot->writeStructEnd();
        return xfer;
    @@ -11755,6 +12100,11 @@ void swap(ShowLocksResponseElement &a, ShowLocksResponseElement &b) {
        swap(a.acquiredat, b.acquiredat);
        swap(a.user, b.user);
        swap(a.hostname, b.hostname);
    + swap(a.heartbeatCount, b.heartbeatCount);
    + swap(a.agentInfo, b.agentInfo);
    + swap(a.blockedByExtId, b.blockedByExtId);
    + swap(a.blockedByIntId, b.blockedByIntId);
    + swap(a.lockIdInternal, b.lockIdInternal);
        swap(a.__isset, b.__isset);
      }

    @@ -11770,6 +12120,11 @@ ShowLocksResponseElement::ShowLocksResponseElement(const ShowLocksResponseElemen
        acquiredat = other521.acquiredat;
        user = other521.user;
        hostname = other521.hostname;
    + heartbeatCount = other521.heartbeatCount;
    + agentInfo = other521.agentInfo;
    + blockedByExtId = other521.blockedByExtId;
    + blockedByIntId = other521.blockedByIntId;
    + lockIdInternal = other521.lockIdInternal;
        __isset = other521.__isset;
      }
      ShowLocksResponseElement& ShowLocksResponseElement::operator=(const ShowLocksResponseElement& other522) {
    @@ -11784,6 +12139,11 @@ ShowLocksResponseElement& ShowLocksResponseElement::operator=(const ShowLocksRes
        acquiredat = other522.acquiredat;
        user = other522.user;
        hostname = other522.hostname;
    + heartbeatCount = other522.heartbeatCount;
    + agentInfo = other522.agentInfo;
    + blockedByExtId = other522.blockedByExtId;
    + blockedByIntId = other522.blockedByIntId;
    + lockIdInternal = other522.lockIdInternal;
        __isset = other522.__isset;
        return *this;
      }
    @@ -11801,6 +12161,11 @@ void ShowLocksResponseElement::printTo(std::ostream& out) const {
        out << ", " << "acquiredat="; (__isset.acquiredat ? (out << to_string(acquiredat)) : (out << "<null>"));
        out << ", " << "user=" << to_string(user);
        out << ", " << "hostname=" << to_string(hostname);
    + out << ", " << "heartbeatCount="; (__isset.heartbeatCount ? (out << to_string(heartbeatCount)) : (out << "<null>"));
    + out << ", " << "agentInfo="; (__isset.agentInfo ? (out << to_string(agentInfo)) : (out << "<null>"));
    + out << ", " << "blockedByExtId="; (__isset.blockedByExtId ? (out << to_string(blockedByExtId)) : (out << "<null>"));
    + out << ", " << "blockedByIntId="; (__isset.blockedByIntId ? (out << to_string(blockedByIntId)) : (out << "<null>"));
    + out << ", " << "lockIdInternal="; (__isset.lockIdInternal ? (out << to_string(lockIdInternal)) : (out << "<null>"));
        out << ")";
      }

    @@ -12564,6 +12929,26 @@ void ShowCompactResponseElement::__set_runAs(const std::string& val) {
      __isset.runAs = true;
      }

    +void ShowCompactResponseElement::__set_hightestTxnId(const int64_t val) {
    + this->hightestTxnId = val;
    +__isset.hightestTxnId = true;
    +}
    +
    +void ShowCompactResponseElement::__set_metaInfo(const std::string& val) {
    + this->metaInfo = val;
    +__isset.metaInfo = true;
    +}
    +
    +void ShowCompactResponseElement::__set_endTime(const int64_t val) {
    + this->endTime = val;
    +__isset.endTime = true;
    +}
    +
    +void ShowCompactResponseElement::__set_hadoopJobId(const std::string& val) {
    + this->hadoopJobId = val;
    +__isset.hadoopJobId = true;
    +}
    +
      uint32_t ShowCompactResponseElement::read(::apache::thrift::protocol::TProtocol* iprot) {

        apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
    @@ -12655,6 +13040,38 @@ uint32_t ShowCompactResponseElement::read(::apache::thrift::protocol::TProtocol*
                xfer += iprot->skip(ftype);
              }
              break;
    + case 9:
    + if (ftype == ::apache::thrift::protocol::T_I64) {
    + xfer += iprot->readI64(this->hightestTxnId);
    + this->__isset.hightestTxnId = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 10:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->metaInfo);
    + this->__isset.metaInfo = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 11:
    + if (ftype == ::apache::thrift::protocol::T_I64) {
    + xfer += iprot->readI64(this->endTime);
    + this->__isset.endTime = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
    + case 12:
    + if (ftype == ::apache::thrift::protocol::T_STRING) {
    + xfer += iprot->readString(this->hadoopJobId);
    + this->__isset.hadoopJobId = true;
    + } else {
    + xfer += iprot->skip(ftype);
    + }
    + break;
            default:
              xfer += iprot->skip(ftype);
              break;
    @@ -12716,6 +13133,26 @@ uint32_t ShowCompactResponseElement::write(::apache::thrift::protocol::TProtocol
          xfer += oprot->writeString(this->runAs);
          xfer += oprot->writeFieldEnd();
        }
    + if (this->__isset.hightestTxnId) {
    + xfer += oprot->writeFieldBegin("hightestTxnId", ::apache::thrift::protocol::T_I64, 9);
    + xfer += oprot->writeI64(this->hightestTxnId);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.metaInfo) {
    + xfer += oprot->writeFieldBegin("metaInfo", ::apache::thrift::protocol::T_STRING, 10);
    + xfer += oprot->writeString(this->metaInfo);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.endTime) {
    + xfer += oprot->writeFieldBegin("endTime", ::apache::thrift::protocol::T_I64, 11);
    + xfer += oprot->writeI64(this->endTime);
    + xfer += oprot->writeFieldEnd();
    + }
    + if (this->__isset.hadoopJobId) {
    + xfer += oprot->writeFieldBegin("hadoopJobId", ::apache::thrift::protocol::T_STRING, 12);
    + xfer += oprot->writeString(this->hadoopJobId);
    + xfer += oprot->writeFieldEnd();
    + }
        xfer += oprot->writeFieldStop();
        xfer += oprot->writeStructEnd();
        return xfer;
    @@ -12731,6 +13168,10 @@ void swap(ShowCompactResponseElement &a, ShowCompactResponseElement &b) {
        swap(a.workerid, b.workerid);
        swap(a.start, b.start);
        swap(a.runAs, b.runAs);
    + swap(a.hightestTxnId, b.hightestTxnId);
    + swap(a.metaInfo, b.metaInfo);
    + swap(a.endTime, b.endTime);
    + swap(a.hadoopJobId, b.hadoopJobId);
        swap(a.__isset, b.__isset);
      }

    @@ -12743,6 +13184,10 @@ ShowCompactResponseElement::ShowCompactResponseElement(const ShowCompactResponse
        workerid = other557.workerid;
        start = other557.start;
        runAs = other557.runAs;
    + hightestTxnId = other557.hightestTxnId;
    + metaInfo = other557.metaInfo;
    + endTime = other557.endTime;
    + hadoopJobId = other557.hadoopJobId;
        __isset = other557.__isset;
      }
      ShowCompactResponseElement& ShowCompactResponseElement::operator=(const ShowCompactResponseElement& other558) {
    @@ -12754,6 +13199,10 @@ ShowCompactResponseElement& ShowCompactResponseElement::operator=(const ShowComp
        workerid = other558.workerid;
        start = other558.start;
        runAs = other558.runAs;
    + hightestTxnId = other558.hightestTxnId;
    + metaInfo = other558.metaInfo;
    + endTime = other558.endTime;
    + hadoopJobId = other558.hadoopJobId;
        __isset = other558.__isset;
        return *this;
      }
    @@ -12768,6 +13217,10 @@ void ShowCompactResponseElement::printTo(std::ostream& out) const {
        out << ", " << "workerid="; (__isset.workerid ? (out << to_string(workerid)) : (out << "<null>"));
        out << ", " << "start="; (__isset.start ? (out << to_string(start)) : (out << "<null>"));
        out << ", " << "runAs="; (__isset.runAs ? (out << to_string(runAs)) : (out << "<null>"));
    + out << ", " << "hightestTxnId="; (__isset.hightestTxnId ? (out << to_string(hightestTxnId)) : (out << "<null>"));
    + out << ", " << "metaInfo="; (__isset.metaInfo ? (out << to_string(metaInfo)) : (out << "<null>"));
    + out << ", " << "endTime="; (__isset.endTime ? (out << to_string(endTime)) : (out << "<null>"));
    + out << ", " << "hadoopJobId="; (__isset.hadoopJobId ? (out << to_string(hadoopJobId)) : (out << "<null>"));
        out << ")";
      }


    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h
    ----------------------------------------------------------------------
    diff --git a/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h b/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h
    index 97d3362..ce1d7da 100644
    --- a/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h
    +++ b/metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h
    @@ -4104,13 +4104,19 @@ inline std::ostream& operator<<(std::ostream& out, const Function& obj)
        return out;
      }

    +typedef struct _TxnInfo__isset {
    + _TxnInfo__isset() : agentInfo(true), heartbeatCount(true), metaInfo(false) {}
    + bool agentInfo :1;
    + bool heartbeatCount :1;
    + bool metaInfo :1;
    +} _TxnInfo__isset;

      class TxnInfo {
       public:

        TxnInfo(const TxnInfo&);
        TxnInfo& operator=(const TxnInfo&);
    - TxnInfo() : id(0), state((TxnState::type)0), user(), hostname() {
    + TxnInfo() : id(0), state((TxnState::type)0), user(), hostname(), agentInfo("Unknown"), heartbeatCount(0), metaInfo() {
        }

        virtual ~TxnInfo() throw();
    @@ -4118,6 +4124,11 @@ class TxnInfo {
        TxnState::type state;
        std::string user;
        std::string hostname;
    + std::string agentInfo;
    + int32_t heartbeatCount;
    + std::string metaInfo;
    +
    + _TxnInfo__isset __isset;

        void __set_id(const int64_t val);

    @@ -4127,6 +4138,12 @@ class TxnInfo {

        void __set_hostname(const std::string& val);

    + void __set_agentInfo(const std::string& val);
    +
    + void __set_heartbeatCount(const int32_t val);
    +
    + void __set_metaInfo(const std::string& val);
    +
        bool operator == (const TxnInfo & rhs) const
        {
          if (!(id == rhs.id))
    @@ -4137,6 +4154,18 @@ class TxnInfo {
            return false;
          if (!(hostname == rhs.hostname))
            return false;
    + if (__isset.agentInfo != rhs.__isset.agentInfo)
    + return false;
    + else if (__isset.agentInfo && !(agentInfo == rhs.agentInfo))
    + return false;
    + if (__isset.heartbeatCount != rhs.__isset.heartbeatCount)
    + return false;
    + else if (__isset.heartbeatCount && !(heartbeatCount == rhs.heartbeatCount))
    + return false;
    + if (__isset.metaInfo != rhs.__isset.metaInfo)
    + return false;
    + else if (__isset.metaInfo && !(metaInfo == rhs.metaInfo))
    + return false;
          return true;
        }
        bool operator != (const TxnInfo &rhs) const {
    @@ -4249,19 +4278,26 @@ inline std::ostream& operator<<(std::ostream& out, const GetOpenTxnsResponse& ob
        return out;
      }

    +typedef struct _OpenTxnRequest__isset {
    + _OpenTxnRequest__isset() : agentInfo(true) {}
    + bool agentInfo :1;
    +} _OpenTxnRequest__isset;

      class OpenTxnRequest {
       public:

        OpenTxnRequest(const OpenTxnRequest&);
        OpenTxnRequest& operator=(const OpenTxnRequest&);
    - OpenTxnRequest() : num_txns(0), user(), hostname() {
    + OpenTxnRequest() : num_txns(0), user(), hostname(), agentInfo("Unknown") {
        }

        virtual ~OpenTxnRequest() throw();
        int32_t num_txns;
        std::string user;
        std::string hostname;
    + std::string agentInfo;
    +
    + _OpenTxnRequest__isset __isset;

        void __set_num_txns(const int32_t val);

    @@ -4269,6 +4305,8 @@ class OpenTxnRequest {

        void __set_hostname(const std::string& val);

    + void __set_agentInfo(const std::string& val);
    +
        bool operator == (const OpenTxnRequest & rhs) const
        {
          if (!(num_txns == rhs.num_txns))
    @@ -4277,6 +4315,10 @@ class OpenTxnRequest {
            return false;
          if (!(hostname == rhs.hostname))
            return false;
    + if (__isset.agentInfo != rhs.__isset.agentInfo)
    + return false;
    + else if (__isset.agentInfo && !(agentInfo == rhs.agentInfo))
    + return false;
          return true;
        }
        bool operator != (const OpenTxnRequest &rhs) const {
    @@ -4491,8 +4533,9 @@ inline std::ostream& operator<<(std::ostream& out, const LockComponent& obj)
      }

      typedef struct _LockRequest__isset {
    - _LockRequest__isset() : txnid(false) {}
    + _LockRequest__isset() : txnid(false), agentInfo(true) {}
        bool txnid :1;
    + bool agentInfo :1;
      } _LockRequest__isset;

      class LockRequest {
    @@ -4500,7 +4543,7 @@ class LockRequest {

        LockRequest(const LockRequest&);
        LockRequest& operator=(const LockRequest&);
    - LockRequest() : txnid(0), user(), hostname() {
    + LockRequest() : txnid(0), user(), hostname(), agentInfo("Unknown") {
        }

        virtual ~LockRequest() throw();
    @@ -4508,6 +4551,7 @@ class LockRequest {
        int64_t txnid;
        std::string user;
        std::string hostname;
    + std::string agentInfo;

        _LockRequest__isset __isset;

    @@ -4519,6 +4563,8 @@ class LockRequest {

        void __set_hostname(const std::string& val);

    + void __set_agentInfo(const std::string& val);
    +
        bool operator == (const LockRequest & rhs) const
        {
          if (!(component == rhs.component))
    @@ -4531,6 +4577,10 @@ class LockRequest {
            return false;
          if (!(hostname == rhs.hostname))
            return false;
    + if (__isset.agentInfo != rhs.__isset.agentInfo)
    + return false;
    + else if (__isset.agentInfo && !(agentInfo == rhs.agentInfo))
    + return false;
          return true;
        }
        bool operator != (const LockRequest &rhs) const {
    @@ -4598,24 +4648,45 @@ inline std::ostream& operator<<(std::ostream& out, const LockResponse& obj)
        return out;
      }

    +typedef struct _CheckLockRequest__isset {
    + _CheckLockRequest__isset() : txnid(false), elapsed_ms(false) {}
    + bool txnid :1;
    + bool elapsed_ms :1;
    +} _CheckLockRequest__isset;

      class CheckLockRequest {
       public:

        CheckLockRequest(const CheckLockRequest&);
        CheckLockRequest& operator=(const CheckLockRequest&);
    - CheckLockRequest() : lockid(0) {
    + CheckLockRequest() : lockid(0), txnid(0), elapsed_ms(0) {
        }

        virtual ~CheckLockRequest() throw();
        int64_t lockid;
    + int64_t txnid;
    + int64_t elapsed_ms;
    +
    + _CheckLockRequest__isset __isset;

        void __set_lockid(const int64_t val);

    + void __set_txnid(const int64_t val);
    +
    + void __set_elapsed_ms(const int64_t val);
    +
        bool operator == (const CheckLockRequest & rhs) const
        {
          if (!(lockid == rhs.lockid))
            return false;
    + if (__isset.txnid != rhs.__isset.txnid)
    + return false;
    + else if (__isset.txnid && !(txnid == rhs.txnid))
    + return false;
    + if (__isset.elapsed_ms != rhs.__isset.elapsed_ms)
    + return false;
    + else if (__isset.elapsed_ms && !(elapsed_ms == rhs.elapsed_ms))
    + return false;
          return true;
        }
        bool operator != (const CheckLockRequest &rhs) const {
    @@ -4678,19 +4749,56 @@ inline std::ostream& operator<<(std::ostream& out, const UnlockRequest& obj)
        return out;
      }

    +typedef struct _ShowLocksRequest__isset {
    + _ShowLocksRequest__isset() : dbname(false), tablename(false), partname(false), isExtended(true) {}
    + bool dbname :1;
    + bool tablename :1;
    + bool partname :1;
    + bool isExtended :1;
    +} _ShowLocksRequest__isset;

      class ShowLocksRequest {
       public:

        ShowLocksRequest(const ShowLocksRequest&);
        ShowLocksRequest& operator=(const ShowLocksRequest&);
    - ShowLocksRequest() {
    + ShowLocksRequest() : dbname(), tablename(), partname(), isExtended(false) {
        }

        virtual ~ShowLocksRequest() throw();
    + std::string dbname;
    + std::string tablename;
    + std::string partname;
    + bool isExtended;
    +
    + _ShowLocksRequest__isset __isset;
    +
    + void __set_dbname(const std::string& val);
    +
    + void __set_tablename(const std::string& val);
    +
    + void __set_partname(const std::string& val);

    - bool operator == (const ShowLocksRequest & /* rhs */) const
    + void __set_isExtended(const bool val);
    +
    + bool operator == (const ShowLocksRequest & rhs) const
        {
    + if (__isset.dbname != rhs.__isset.dbname)
    + return false;
    + else if (__isset.dbname && !(dbname == rhs.dbname))
    + return false;
    + if (__isset.tablename != rhs.__isset.tablename)
    + return false;
    + else if (__isset.tablename && !(tablename == rhs.tablename))
    + return false;
    + if (__isset.partname != rhs.__isset.partname)
    + return false;
    + else if (__isset.partname && !(partname == rhs.partname))
    + return false;
    + if (__isset.isExtended != rhs.__isset.isExtended)
    + return false;
    + else if (__isset.isExtended && !(isExtended == rhs.isExtended))
    + return false;
          return true;
        }
        bool operator != (const ShowLocksRequest &rhs) const {
    @@ -4714,11 +4822,16 @@ inline std::ostream& operator<<(std::ostream& out, const ShowLocksRequest& obj)
      }

      typedef struct _ShowLocksResponseElement__isset {
    - _ShowLocksResponseElement__isset() : tablename(false), partname(false), txnid(false), acquiredat(false) {}
    + _ShowLocksResponseElement__isset() : tablename(false), partname(false), txnid(false), acquiredat(false), heartbeatCount(true), agentInfo(false), blockedByExtId(false), blockedByIntId(false), lockIdInternal(false) {}
        bool tablename :1;
        bool partname :1;
        bool txnid :1;
        bool acquiredat :1;
    + bool heartbeatCount :1;
    + bool agentInfo :1;
    + bool blockedByExtId :1;
    + bool blockedByIntId :1;
    + bool lockIdInternal :1;
      } _ShowLocksResponseElement__isset;

      class ShowLocksResponseElement {
    @@ -4726,7 +4839,7 @@ class ShowLocksResponseElement {

        ShowLocksResponseElement(const ShowLocksResponseElement&);
        ShowLocksResponseElement& operator=(const ShowLocksResponseElement&);
    - ShowLocksResponseElement() : lockid(0), dbname(), tablename(), partname(), state((LockState::type)0), type((LockType::type)0), txnid(0), lastheartbeat(0), acquiredat(0), user(), hostname() {
    + ShowLocksResponseElement() : lockid(0), dbname(), tablename(), partname(), state((LockState::type)0), type((LockType::type)0), txnid(0), lastheartbeat(0), acquiredat(0), user(), hostname(), heartbeatCount(0), agentInfo(), blockedByExtId(0), blockedByIntId(0), lockIdInternal(0) {
        }

        virtual ~ShowLocksResponseElement() throw();
    @@ -4741,6 +4854,11 @@ class ShowLocksResponseElement {
        int64_t acquiredat;
        std::string user;
        std::string hostname;
    + int32_t heartbeatCount;
    + std::string agentInfo;
    + int64_t blockedByExtId;
    + int64_t blockedByIntId;
    + int64_t lockIdInternal;

        _ShowLocksResponseElement__isset __isset;

    @@ -4766,6 +4884,16 @@ class ShowLocksResponseElement {

        void __set_hostname(const std::string& val);

    + void __set_heartbeatCount(const int32_t val);
    +
    + void __set_agentInfo(const std::string& val);
    +
    + void __set_blockedByExtId(const int64_t val);
    +
    + void __set_blockedByIntId(const int64_t val);
    +
    + void __set_lockIdInternal(const int64_t val);
    +
        bool operator == (const ShowLocksResponseElement & rhs) const
        {
          if (!(lockid == rhs.lockid))
    @@ -4798,6 +4926,26 @@ class ShowLocksResponseElement {
            return false;
          if (!(hostname == rhs.hostname))
            return false;
    + if (__isset.heartbeatCount != rhs.__isset.heartbeatCount)
    + return false;
    + else if (__isset.heartbeatCount && !(heartbeatCount == rhs.heartbeatCount))
    + return false;
    + if (__isset.agentInfo != rhs.__isset.agentInfo)
    + return false;
    + else if (__isset.agentInfo && !(agentInfo == rhs.agentInfo))
    + return false;
    + if (__isset.blockedByExtId != rhs.__isset.blockedByExtId)
    + return false;
    + else if (__isset.blockedByExtId && !(blockedByExtId == rhs.blockedByExtId))
    + return false;
    + if (__isset.blockedByIntId != rhs.__isset.blockedByIntId)
    + return false;
    + else if (__isset.blockedByIntId && !(blockedByIntId == rhs.blockedByIntId))
    + return false;
    + if (__isset.lockIdInternal != rhs.__isset.lockIdInternal)
    + return false;
    + else if (__isset.lockIdInternal && !(lockIdInternal == rhs.lockIdInternal))
    + return false;
          return true;
        }
        bool operator != (const ShowLocksResponseElement &rhs) const {
    @@ -5119,11 +5267,15 @@ inline std::ostream& operator<<(std::ostream& out, const ShowCompactRequest& obj
      }

      typedef struct _ShowCompactResponseElement__isset {
    - _ShowCompactResponseElement__isset() : partitionname(false), workerid(false), start(false), runAs(false) {}
    + _ShowCompactResponseElement__isset() : partitionname(false), workerid(false), start(false), runAs(false), hightestTxnId(false), metaInfo(false), endTime(false), hadoopJobId(true) {}
        bool partitionname :1;
        bool workerid :1;
        bool start :1;
        bool runAs :1;
    + bool hightestTxnId :1;
    + bool metaInfo :1;
    + bool endTime :1;
    + bool hadoopJobId :1;
      } _ShowCompactResponseElement__isset;

      class ShowCompactResponseElement {
    @@ -5131,7 +5283,7 @@ class ShowCompactResponseElement {

        ShowCompactResponseElement(const ShowCompactResponseElement&);
        ShowCompactResponseElement& operator=(const ShowCompactResponseElement&);
    - ShowCompactResponseElement() : dbname(), tablename(), partitionname(), type((CompactionType::type)0), state(), workerid(), start(0), runAs() {
    + ShowCompactResponseElement() : dbname(), tablename(), partitionname(), type((CompactionType::type)0), state(), workerid(), start(0), runAs(), hightestTxnId(0), metaInfo(), endTime(0), hadoopJobId("None") {
        }

        virtual ~ShowCompactResponseElement() throw();
    @@ -5143,6 +5295,10 @@ class ShowCompactResponseElement {
        std::string workerid;
        int64_t start;
        std::string runAs;
    + int64_t hightestTxnId;
    + std::string metaInfo;
    + int64_t endTime;
    + std::string hadoopJobId;

        _ShowCompactResponseElement__isset __isset;

    @@ -5162,6 +5318,14 @@ class ShowCompactResponseElement {

        void __set_runAs(const std::string& val);

    + void __set_hightestTxnId(const int64_t val);
    +
    + void __set_metaInfo(const std::string& val);
    +
    + void __set_endTime(const int64_t val);
    +
    + void __set_hadoopJobId(const std::string& val);
    +
        bool operator == (const ShowCompactResponseElement & rhs) const
        {
          if (!(dbname == rhs.dbname))
    @@ -5188,6 +5352,22 @@ class ShowCompactResponseElement {
            return false;
          else if (__isset.runAs && !(runAs == rhs.runAs))
            return false;
    + if (__isset.hightestTxnId != rhs.__isset.hightestTxnId)
    + return false;
    + else if (__isset.hightestTxnId && !(hightestTxnId == rhs.hightestTxnId))
    + return false;
    + if (__isset.metaInfo != rhs.__isset.metaInfo)
    + return false;
    + else if (__isset.metaInfo && !(metaInfo == rhs.metaInfo))
    + return false;
    + if (__isset.endTime != rhs.__isset.endTime)
    + return false;
    + else if (__isset.endTime && !(endTime == rhs.endTime))
    + return false;
    + if (__isset.hadoopJobId != rhs.__isset.hadoopJobId)
    + return false;
    + else if (__isset.hadoopJobId && !(hadoopJobId == rhs.hadoopJobId))
    + return false;
          return true;
        }
        bool operator != (const ShowCompactResponseElement &rhs) const {

    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java
    ----------------------------------------------------------------------
    diff --git a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java
    index 430be03..bcef2ff 100644
    --- a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java
    +++ b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java
    @@ -39,6 +39,8 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
        private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("CheckLockRequest");

        private static final org.apache.thrift.protocol.TField LOCKID_FIELD_DESC = new org.apache.thrift.protocol.TField("lockid", org.apache.thrift.protocol.TType.I64, (short)1);
    + private static final org.apache.thrift.protocol.TField TXNID_FIELD_DESC = new org.apache.thrift.protocol.TField("txnid", org.apache.thrift.protocol.TType.I64, (short)2);
    + private static final org.apache.thrift.protocol.TField ELAPSED_MS_FIELD_DESC = new org.apache.thrift.protocol.TField("elapsed_ms", org.apache.thrift.protocol.TType.I64, (short)3);

        private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
        static {
    @@ -47,10 +49,14 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
        }

        private long lockid; // required
    + private long txnid; // optional
    + private long elapsed_ms; // optional

        /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
        public enum _Fields implements org.apache.thrift.TFieldIdEnum {
    - LOCKID((short)1, "lockid");
    + LOCKID((short)1, "lockid"),
    + TXNID((short)2, "txnid"),
    + ELAPSED_MS((short)3, "elapsed_ms");

          private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    @@ -67,6 +73,10 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
            switch(fieldId) {
              case 1: // LOCKID
                return LOCKID;
    + case 2: // TXNID
    + return TXNID;
    + case 3: // ELAPSED_MS
    + return ELAPSED_MS;
              default:
                return null;
            }
    @@ -108,12 +118,19 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques

        // isset id assignments
        private static final int __LOCKID_ISSET_ID = 0;
    + private static final int __TXNID_ISSET_ID = 1;
    + private static final int __ELAPSED_MS_ISSET_ID = 2;
        private byte __isset_bitfield = 0;
    + private static final _Fields optionals[] = {_Fields.TXNID,_Fields.ELAPSED_MS};
        public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
        static {
          Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
          tmpMap.put(_Fields.LOCKID, new org.apache.thrift.meta_data.FieldMetaData("lockid", org.apache.thrift.TFieldRequirementType.REQUIRED,
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    + tmpMap.put(_Fields.TXNID, new org.apache.thrift.meta_data.FieldMetaData("txnid", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    + tmpMap.put(_Fields.ELAPSED_MS, new org.apache.thrift.meta_data.FieldMetaData("elapsed_ms", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
          metaDataMap = Collections.unmodifiableMap(tmpMap);
          org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(CheckLockRequest.class, metaDataMap);
        }
    @@ -135,6 +152,8 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
        public CheckLockRequest(CheckLockRequest other) {
          __isset_bitfield = other.__isset_bitfield;
          this.lockid = other.lockid;
    + this.txnid = other.txnid;
    + this.elapsed_ms = other.elapsed_ms;
        }

        public CheckLockRequest deepCopy() {
    @@ -145,6 +164,10 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
        public void clear() {
          setLockidIsSet(false);
          this.lockid = 0;
    + setTxnidIsSet(false);
    + this.txnid = 0;
    + setElapsed_msIsSet(false);
    + this.elapsed_ms = 0;
        }

        public long getLockid() {
    @@ -169,6 +192,50 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
          __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LOCKID_ISSET_ID, value);
        }

    + public long getTxnid() {
    + return this.txnid;
    + }
    +
    + public void setTxnid(long txnid) {
    + this.txnid = txnid;
    + setTxnidIsSet(true);
    + }
    +
    + public void unsetTxnid() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __TXNID_ISSET_ID);
    + }
    +
    + /** Returns true if field txnid is set (has been assigned a value) and false otherwise */
    + public boolean isSetTxnid() {
    + return EncodingUtils.testBit(__isset_bitfield, __TXNID_ISSET_ID);
    + }
    +
    + public void setTxnidIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __TXNID_ISSET_ID, value);
    + }
    +
    + public long getElapsed_ms() {
    + return this.elapsed_ms;
    + }
    +
    + public void setElapsed_ms(long elapsed_ms) {
    + this.elapsed_ms = elapsed_ms;
    + setElapsed_msIsSet(true);
    + }
    +
    + public void unsetElapsed_ms() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ELAPSED_MS_ISSET_ID);
    + }
    +
    + /** Returns true if field elapsed_ms is set (has been assigned a value) and false otherwise */
    + public boolean isSetElapsed_ms() {
    + return EncodingUtils.testBit(__isset_bitfield, __ELAPSED_MS_ISSET_ID);
    + }
    +
    + public void setElapsed_msIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ELAPSED_MS_ISSET_ID, value);
    + }
    +
        public void setFieldValue(_Fields field, Object value) {
          switch (field) {
          case LOCKID:
    @@ -179,6 +246,22 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
            }
            break;

    + case TXNID:
    + if (value == null) {
    + unsetTxnid();
    + } else {
    + setTxnid((Long)value);
    + }
    + break;
    +
    + case ELAPSED_MS:
    + if (value == null) {
    + unsetElapsed_ms();
    + } else {
    + setElapsed_ms((Long)value);
    + }
    + break;
    +
          }
        }

    @@ -187,6 +270,12 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
          case LOCKID:
            return getLockid();

    + case TXNID:
    + return getTxnid();
    +
    + case ELAPSED_MS:
    + return getElapsed_ms();
    +
          }
          throw new IllegalStateException();
        }
    @@ -200,6 +289,10 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
          switch (field) {
          case LOCKID:
            return isSetLockid();
    + case TXNID:
    + return isSetTxnid();
    + case ELAPSED_MS:
    + return isSetElapsed_ms();
          }
          throw new IllegalStateException();
        }
    @@ -226,6 +319,24 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
              return false;
          }

    + boolean this_present_txnid = true && this.isSetTxnid();
    + boolean that_present_txnid = true && that.isSetTxnid();
    + if (this_present_txnid || that_present_txnid) {
    + if (!(this_present_txnid && that_present_txnid))
    + return false;
    + if (this.txnid != that.txnid)
    + return false;
    + }
    +
    + boolean this_present_elapsed_ms = true && this.isSetElapsed_ms();
    + boolean that_present_elapsed_ms = true && that.isSetElapsed_ms();
    + if (this_present_elapsed_ms || that_present_elapsed_ms) {
    + if (!(this_present_elapsed_ms && that_present_elapsed_ms))
    + return false;
    + if (this.elapsed_ms != that.elapsed_ms)
    + return false;
    + }
    +
          return true;
        }

    @@ -238,6 +349,16 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
          if (present_lockid)
            list.add(lockid);

    + boolean present_txnid = true && (isSetTxnid());
    + list.add(present_txnid);
    + if (present_txnid)
    + list.add(txnid);
    +
    + boolean present_elapsed_ms = true && (isSetElapsed_ms());
    + list.add(present_elapsed_ms);
    + if (present_elapsed_ms)
    + list.add(elapsed_ms);
    +
          return list.hashCode();
        }

    @@ -259,6 +380,26 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
              return lastComparison;
            }
          }
    + lastComparison = Boolean.valueOf(isSetTxnid()).compareTo(other.isSetTxnid());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetTxnid()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.txnid, other.txnid);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetElapsed_ms()).compareTo(other.isSetElapsed_ms());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetElapsed_ms()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.elapsed_ms, other.elapsed_ms);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
          return 0;
        }

    @@ -282,6 +423,18 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
          sb.append("lockid:");
          sb.append(this.lockid);
          first = false;
    + if (isSetTxnid()) {
    + if (!first) sb.append(", ");
    + sb.append("txnid:");
    + sb.append(this.txnid);
    + first = false;
    + }
    + if (isSetElapsed_ms()) {
    + if (!first) sb.append(", ");
    + sb.append("elapsed_ms:");
    + sb.append(this.elapsed_ms);
    + first = false;
    + }
          sb.append(")");
          return sb.toString();
        }
    @@ -339,6 +492,22 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
                    org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
                  }
                  break;
    + case 2: // TXNID
    + if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
    + struct.txnid = iprot.readI64();
    + struct.setTxnidIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 3: // ELAPSED_MS
    + if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
    + struct.elapsed_ms = iprot.readI64();
    + struct.setElapsed_msIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
                default:
                  org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
              }
    @@ -355,6 +524,16 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
            oprot.writeFieldBegin(LOCKID_FIELD_DESC);
            oprot.writeI64(struct.lockid);
            oprot.writeFieldEnd();
    + if (struct.isSetTxnid()) {
    + oprot.writeFieldBegin(TXNID_FIELD_DESC);
    + oprot.writeI64(struct.txnid);
    + oprot.writeFieldEnd();
    + }
    + if (struct.isSetElapsed_ms()) {
    + oprot.writeFieldBegin(ELAPSED_MS_FIELD_DESC);
    + oprot.writeI64(struct.elapsed_ms);
    + oprot.writeFieldEnd();
    + }
            oprot.writeFieldStop();
            oprot.writeStructEnd();
          }
    @@ -373,6 +552,20 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
          public void write(org.apache.thrift.protocol.TProtocol prot, CheckLockRequest struct) throws org.apache.thrift.TException {
            TTupleProtocol oprot = (TTupleProtocol) prot;
            oprot.writeI64(struct.lockid);
    + BitSet optionals = new BitSet();
    + if (struct.isSetTxnid()) {
    + optionals.set(0);
    + }
    + if (struct.isSetElapsed_ms()) {
    + optionals.set(1);
    + }
    + oprot.writeBitSet(optionals, 2);
    + if (struct.isSetTxnid()) {
    + oprot.writeI64(struct.txnid);
    + }
    + if (struct.isSetElapsed_ms()) {
    + oprot.writeI64(struct.elapsed_ms);
    + }
          }

          @Override
    @@ -380,6 +573,15 @@ public class CheckLockRequest implements org.apache.thrift.TBase<CheckLockReques
            TTupleProtocol iprot = (TTupleProtocol) prot;
            struct.lockid = iprot.readI64();
            struct.setLockidIsSet(true);
    + BitSet incoming = iprot.readBitSet(2);
    + if (incoming.get(0)) {
    + struct.txnid = iprot.readI64();
    + struct.setTxnidIsSet(true);
    + }
    + if (incoming.get(1)) {
    + struct.elapsed_ms = iprot.readI64();
    + struct.setElapsed_msIsSet(true);
    + }
          }
        }


    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java
    ----------------------------------------------------------------------
    diff --git a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java
    index eada4ee..f39f582 100644
    --- a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java
    +++ b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java
    @@ -42,6 +42,7 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
        private static final org.apache.thrift.protocol.TField TXNID_FIELD_DESC = new org.apache.thrift.protocol.TField("txnid", org.apache.thrift.protocol.TType.I64, (short)2);
        private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)3);
        private static final org.apache.thrift.protocol.TField HOSTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("hostname", org.apache.thrift.protocol.TType.STRING, (short)4);
    + private static final org.apache.thrift.protocol.TField AGENT_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("agentInfo", org.apache.thrift.protocol.TType.STRING, (short)5);

        private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
        static {
    @@ -53,13 +54,15 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
        private long txnid; // optional
        private String user; // required
        private String hostname; // required
    + private String agentInfo; // optional

        /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
        public enum _Fields implements org.apache.thrift.TFieldIdEnum {
          COMPONENT((short)1, "component"),
          TXNID((short)2, "txnid"),
          USER((short)3, "user"),
    - HOSTNAME((short)4, "hostname");
    + HOSTNAME((short)4, "hostname"),
    + AGENT_INFO((short)5, "agentInfo");

          private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    @@ -82,6 +85,8 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
                return USER;
              case 4: // HOSTNAME
                return HOSTNAME;
    + case 5: // AGENT_INFO
    + return AGENT_INFO;
              default:
                return null;
            }
    @@ -124,7 +129,7 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
        // isset id assignments
        private static final int __TXNID_ISSET_ID = 0;
        private byte __isset_bitfield = 0;
    - private static final _Fields optionals[] = {_Fields.TXNID};
    + private static final _Fields optionals[] = {_Fields.TXNID,_Fields.AGENT_INFO};
        public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
        static {
          Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
    @@ -137,11 +142,15 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
          tmpMap.put(_Fields.HOSTNAME, new org.apache.thrift.meta_data.FieldMetaData("hostname", org.apache.thrift.TFieldRequirementType.REQUIRED,
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.AGENT_INFO, new org.apache.thrift.meta_data.FieldMetaData("agentInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
          metaDataMap = Collections.unmodifiableMap(tmpMap);
          org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(LockRequest.class, metaDataMap);
        }

        public LockRequest() {
    + this.agentInfo = "Unknown";
    +
        }

        public LockRequest(
    @@ -174,6 +183,9 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
          if (other.isSetHostname()) {
            this.hostname = other.hostname;
          }
    + if (other.isSetAgentInfo()) {
    + this.agentInfo = other.agentInfo;
    + }
        }

        public LockRequest deepCopy() {
    @@ -187,6 +199,8 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
          this.txnid = 0;
          this.user = null;
          this.hostname = null;
    + this.agentInfo = "Unknown";
    +
        }

        public int getComponentSize() {
    @@ -295,6 +309,29 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
          }
        }

    + public String getAgentInfo() {
    + return this.agentInfo;
    + }
    +
    + public void setAgentInfo(String agentInfo) {
    + this.agentInfo = agentInfo;
    + }
    +
    + public void unsetAgentInfo() {
    + this.agentInfo = null;
    + }
    +
    + /** Returns true if field agentInfo is set (has been assigned a value) and false otherwise */
    + public boolean isSetAgentInfo() {
    + return this.agentInfo != null;
    + }
    +
    + public void setAgentInfoIsSet(boolean value) {
    + if (!value) {
    + this.agentInfo = null;
    + }
    + }
    +
        public void setFieldValue(_Fields field, Object value) {
          switch (field) {
          case COMPONENT:
    @@ -329,6 +366,14 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
            }
            break;

    + case AGENT_INFO:
    + if (value == null) {
    + unsetAgentInfo();
    + } else {
    + setAgentInfo((String)value);
    + }
    + break;
    +
          }
        }

    @@ -346,6 +391,9 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
          case HOSTNAME:
            return getHostname();

    + case AGENT_INFO:
    + return getAgentInfo();
    +
          }
          throw new IllegalStateException();
        }
    @@ -365,6 +413,8 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
            return isSetUser();
          case HOSTNAME:
            return isSetHostname();
    + case AGENT_INFO:
    + return isSetAgentInfo();
          }
          throw new IllegalStateException();
        }
    @@ -418,6 +468,15 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
              return false;
          }

    + boolean this_present_agentInfo = true && this.isSetAgentInfo();
    + boolean that_present_agentInfo = true && that.isSetAgentInfo();
    + if (this_present_agentInfo || that_present_agentInfo) {
    + if (!(this_present_agentInfo && that_present_agentInfo))
    + return false;
    + if (!this.agentInfo.equals(that.agentInfo))
    + return false;
    + }
    +
          return true;
        }

    @@ -445,6 +504,11 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
          if (present_hostname)
            list.add(hostname);

    + boolean present_agentInfo = true && (isSetAgentInfo());
    + list.add(present_agentInfo);
    + if (present_agentInfo)
    + list.add(agentInfo);
    +
          return list.hashCode();
        }

    @@ -496,6 +560,16 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
              return lastComparison;
            }
          }
    + lastComparison = Boolean.valueOf(isSetAgentInfo()).compareTo(other.isSetAgentInfo());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetAgentInfo()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.agentInfo, other.agentInfo);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
          return 0;
        }

    @@ -545,6 +619,16 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
            sb.append(this.hostname);
          }
          first = false;
    + if (isSetAgentInfo()) {
    + if (!first) sb.append(", ");
    + sb.append("agentInfo:");
    + if (this.agentInfo == null) {
    + sb.append("null");
    + } else {
    + sb.append(this.agentInfo);
    + }
    + first = false;
    + }
          sb.append(")");
          return sb.toString();
        }
    @@ -645,6 +729,14 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
                    org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
                  }
                  break;
    + case 5: // AGENT_INFO
    + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
    + struct.agentInfo = iprot.readString();
    + struct.setAgentInfoIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
                default:
                  org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
              }
    @@ -685,6 +777,13 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
              oprot.writeString(struct.hostname);
              oprot.writeFieldEnd();
            }
    + if (struct.agentInfo != null) {
    + if (struct.isSetAgentInfo()) {
    + oprot.writeFieldBegin(AGENT_INFO_FIELD_DESC);
    + oprot.writeString(struct.agentInfo);
    + oprot.writeFieldEnd();
    + }
    + }
            oprot.writeFieldStop();
            oprot.writeStructEnd();
          }
    @@ -715,10 +814,16 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
            if (struct.isSetTxnid()) {
              optionals.set(0);
            }
    - oprot.writeBitSet(optionals, 1);
    + if (struct.isSetAgentInfo()) {
    + optionals.set(1);
    + }
    + oprot.writeBitSet(optionals, 2);
            if (struct.isSetTxnid()) {
              oprot.writeI64(struct.txnid);
            }
    + if (struct.isSetAgentInfo()) {
    + oprot.writeString(struct.agentInfo);
    + }
          }

          @Override
    @@ -740,11 +845,15 @@ public class LockRequest implements org.apache.thrift.TBase<LockRequest, LockReq
            struct.setUserIsSet(true);
            struct.hostname = iprot.readString();
            struct.setHostnameIsSet(true);
    - BitSet incoming = iprot.readBitSet(1);
    + BitSet incoming = iprot.readBitSet(2);
            if (incoming.get(0)) {
              struct.txnid = iprot.readI64();
              struct.setTxnidIsSet(true);
            }
    + if (incoming.get(1)) {
    + struct.agentInfo = iprot.readString();
    + struct.setAgentInfoIsSet(true);
    + }
          }
        }
  • Gates at Jan 14, 2016 at 7:47 pm
    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java
    ----------------------------------------------------------------------
    diff --git a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java
    index 01371ec..f058c0d 100644
    --- a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java
    +++ b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java
    @@ -41,6 +41,7 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
        private static final org.apache.thrift.protocol.TField NUM_TXNS_FIELD_DESC = new org.apache.thrift.protocol.TField("num_txns", org.apache.thrift.protocol.TType.I32, (short)1);
        private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)2);
        private static final org.apache.thrift.protocol.TField HOSTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("hostname", org.apache.thrift.protocol.TType.STRING, (short)3);
    + private static final org.apache.thrift.protocol.TField AGENT_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("agentInfo", org.apache.thrift.protocol.TType.STRING, (short)4);

        private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
        static {
    @@ -51,12 +52,14 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
        private int num_txns; // required
        private String user; // required
        private String hostname; // required
    + private String agentInfo; // optional

        /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
        public enum _Fields implements org.apache.thrift.TFieldIdEnum {
          NUM_TXNS((short)1, "num_txns"),
          USER((short)2, "user"),
    - HOSTNAME((short)3, "hostname");
    + HOSTNAME((short)3, "hostname"),
    + AGENT_INFO((short)4, "agentInfo");

          private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    @@ -77,6 +80,8 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
                return USER;
              case 3: // HOSTNAME
                return HOSTNAME;
    + case 4: // AGENT_INFO
    + return AGENT_INFO;
              default:
                return null;
            }
    @@ -119,6 +124,7 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
        // isset id assignments
        private static final int __NUM_TXNS_ISSET_ID = 0;
        private byte __isset_bitfield = 0;
    + private static final _Fields optionals[] = {_Fields.AGENT_INFO};
        public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
        static {
          Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
    @@ -128,11 +134,15 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
          tmpMap.put(_Fields.HOSTNAME, new org.apache.thrift.meta_data.FieldMetaData("hostname", org.apache.thrift.TFieldRequirementType.REQUIRED,
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.AGENT_INFO, new org.apache.thrift.meta_data.FieldMetaData("agentInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
          metaDataMap = Collections.unmodifiableMap(tmpMap);
          org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(OpenTxnRequest.class, metaDataMap);
        }

        public OpenTxnRequest() {
    + this.agentInfo = "Unknown";
    +
        }

        public OpenTxnRequest(
    @@ -159,6 +169,9 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
          if (other.isSetHostname()) {
            this.hostname = other.hostname;
          }
    + if (other.isSetAgentInfo()) {
    + this.agentInfo = other.agentInfo;
    + }
        }

        public OpenTxnRequest deepCopy() {
    @@ -171,6 +184,8 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
          this.num_txns = 0;
          this.user = null;
          this.hostname = null;
    + this.agentInfo = "Unknown";
    +
        }

        public int getNum_txns() {
    @@ -241,6 +256,29 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
          }
        }

    + public String getAgentInfo() {
    + return this.agentInfo;
    + }
    +
    + public void setAgentInfo(String agentInfo) {
    + this.agentInfo = agentInfo;
    + }
    +
    + public void unsetAgentInfo() {
    + this.agentInfo = null;
    + }
    +
    + /** Returns true if field agentInfo is set (has been assigned a value) and false otherwise */
    + public boolean isSetAgentInfo() {
    + return this.agentInfo != null;
    + }
    +
    + public void setAgentInfoIsSet(boolean value) {
    + if (!value) {
    + this.agentInfo = null;
    + }
    + }
    +
        public void setFieldValue(_Fields field, Object value) {
          switch (field) {
          case NUM_TXNS:
    @@ -267,6 +305,14 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
            }
            break;

    + case AGENT_INFO:
    + if (value == null) {
    + unsetAgentInfo();
    + } else {
    + setAgentInfo((String)value);
    + }
    + break;
    +
          }
        }

    @@ -281,6 +327,9 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
          case HOSTNAME:
            return getHostname();

    + case AGENT_INFO:
    + return getAgentInfo();
    +
          }
          throw new IllegalStateException();
        }
    @@ -298,6 +347,8 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
            return isSetUser();
          case HOSTNAME:
            return isSetHostname();
    + case AGENT_INFO:
    + return isSetAgentInfo();
          }
          throw new IllegalStateException();
        }
    @@ -342,6 +393,15 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
              return false;
          }

    + boolean this_present_agentInfo = true && this.isSetAgentInfo();
    + boolean that_present_agentInfo = true && that.isSetAgentInfo();
    + if (this_present_agentInfo || that_present_agentInfo) {
    + if (!(this_present_agentInfo && that_present_agentInfo))
    + return false;
    + if (!this.agentInfo.equals(that.agentInfo))
    + return false;
    + }
    +
          return true;
        }

    @@ -364,6 +424,11 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
          if (present_hostname)
            list.add(hostname);

    + boolean present_agentInfo = true && (isSetAgentInfo());
    + list.add(present_agentInfo);
    + if (present_agentInfo)
    + list.add(agentInfo);
    +
          return list.hashCode();
        }

    @@ -405,6 +470,16 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
              return lastComparison;
            }
          }
    + lastComparison = Boolean.valueOf(isSetAgentInfo()).compareTo(other.isSetAgentInfo());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetAgentInfo()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.agentInfo, other.agentInfo);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
          return 0;
        }

    @@ -444,6 +519,16 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
            sb.append(this.hostname);
          }
          first = false;
    + if (isSetAgentInfo()) {
    + if (!first) sb.append(", ");
    + sb.append("agentInfo:");
    + if (this.agentInfo == null) {
    + sb.append("null");
    + } else {
    + sb.append(this.agentInfo);
    + }
    + first = false;
    + }
          sb.append(")");
          return sb.toString();
        }
    @@ -525,6 +610,14 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
                    org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
                  }
                  break;
    + case 4: // AGENT_INFO
    + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
    + struct.agentInfo = iprot.readString();
    + struct.setAgentInfoIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
                default:
                  org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
              }
    @@ -551,6 +644,13 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
              oprot.writeString(struct.hostname);
              oprot.writeFieldEnd();
            }
    + if (struct.agentInfo != null) {
    + if (struct.isSetAgentInfo()) {
    + oprot.writeFieldBegin(AGENT_INFO_FIELD_DESC);
    + oprot.writeString(struct.agentInfo);
    + oprot.writeFieldEnd();
    + }
    + }
            oprot.writeFieldStop();
            oprot.writeStructEnd();
          }
    @@ -571,6 +671,14 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
            oprot.writeI32(struct.num_txns);
            oprot.writeString(struct.user);
            oprot.writeString(struct.hostname);
    + BitSet optionals = new BitSet();
    + if (struct.isSetAgentInfo()) {
    + optionals.set(0);
    + }
    + oprot.writeBitSet(optionals, 1);
    + if (struct.isSetAgentInfo()) {
    + oprot.writeString(struct.agentInfo);
    + }
          }

          @Override
    @@ -582,6 +690,11 @@ public class OpenTxnRequest implements org.apache.thrift.TBase<OpenTxnRequest, O
            struct.setUserIsSet(true);
            struct.hostname = iprot.readString();
            struct.setHostnameIsSet(true);
    + BitSet incoming = iprot.readBitSet(1);
    + if (incoming.get(0)) {
    + struct.agentInfo = iprot.readString();
    + struct.setAgentInfoIsSet(true);
    + }
          }
        }


    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java
    ----------------------------------------------------------------------
    diff --git a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java
    index dd7dd8e..212ecd6 100644
    --- a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java
    +++ b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java
    @@ -46,6 +46,10 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
        private static final org.apache.thrift.protocol.TField WORKERID_FIELD_DESC = new org.apache.thrift.protocol.TField("workerid", org.apache.thrift.protocol.TType.STRING, (short)6);
        private static final org.apache.thrift.protocol.TField START_FIELD_DESC = new org.apache.thrift.protocol.TField("start", org.apache.thrift.protocol.TType.I64, (short)7);
        private static final org.apache.thrift.protocol.TField RUN_AS_FIELD_DESC = new org.apache.thrift.protocol.TField("runAs", org.apache.thrift.protocol.TType.STRING, (short)8);
    + private static final org.apache.thrift.protocol.TField HIGHTEST_TXN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("hightestTxnId", org.apache.thrift.protocol.TType.I64, (short)9);
    + private static final org.apache.thrift.protocol.TField META_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("metaInfo", org.apache.thrift.protocol.TType.STRING, (short)10);
    + private static final org.apache.thrift.protocol.TField END_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("endTime", org.apache.thrift.protocol.TType.I64, (short)11);
    + private static final org.apache.thrift.protocol.TField HADOOP_JOB_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("hadoopJobId", org.apache.thrift.protocol.TType.STRING, (short)12);

        private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
        static {
    @@ -61,6 +65,10 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
        private String workerid; // optional
        private long start; // optional
        private String runAs; // optional
    + private long hightestTxnId; // optional
    + private String metaInfo; // optional
    + private long endTime; // optional
    + private String hadoopJobId; // optional

        /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
        public enum _Fields implements org.apache.thrift.TFieldIdEnum {
    @@ -75,7 +83,11 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
          STATE((short)5, "state"),
          WORKERID((short)6, "workerid"),
          START((short)7, "start"),
    - RUN_AS((short)8, "runAs");
    + RUN_AS((short)8, "runAs"),
    + HIGHTEST_TXN_ID((short)9, "hightestTxnId"),
    + META_INFO((short)10, "metaInfo"),
    + END_TIME((short)11, "endTime"),
    + HADOOP_JOB_ID((short)12, "hadoopJobId");

          private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    @@ -106,6 +118,14 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
                return START;
              case 8: // RUN_AS
                return RUN_AS;
    + case 9: // HIGHTEST_TXN_ID
    + return HIGHTEST_TXN_ID;
    + case 10: // META_INFO
    + return META_INFO;
    + case 11: // END_TIME
    + return END_TIME;
    + case 12: // HADOOP_JOB_ID
    + return HADOOP_JOB_ID;
              default:
                return null;
            }
    @@ -147,8 +167,10 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC

        // isset id assignments
        private static final int __START_ISSET_ID = 0;
    + private static final int __HIGHTESTTXNID_ISSET_ID = 1;
    + private static final int __ENDTIME_ISSET_ID = 2;
        private byte __isset_bitfield = 0;
    - private static final _Fields optionals[] = {_Fields.PARTITIONNAME,_Fields.WORKERID,_Fields.START,_Fields.RUN_AS};
    + private static final _Fields optionals[] = {_Fields.PARTITIONNAME,_Fields.WORKERID,_Fields.START,_Fields.RUN_AS,_Fields.HIGHTEST_TXN_ID,_Fields.META_INFO,_Fields.END_TIME,_Fields.HADOOP_JOB_ID};
        public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
        static {
          Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
    @@ -168,11 +190,21 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
          tmpMap.put(_Fields.RUN_AS, new org.apache.thrift.meta_data.FieldMetaData("runAs", org.apache.thrift.TFieldRequirementType.OPTIONAL,
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.HIGHTEST_TXN_ID, new org.apache.thrift.meta_data.FieldMetaData("hightestTxnId", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    + tmpMap.put(_Fields.META_INFO, new org.apache.thrift.meta_data.FieldMetaData("metaInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.END_TIME, new org.apache.thrift.meta_data.FieldMetaData("endTime", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    + tmpMap.put(_Fields.HADOOP_JOB_ID, new org.apache.thrift.meta_data.FieldMetaData("hadoopJobId", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
          metaDataMap = Collections.unmodifiableMap(tmpMap);
          org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ShowCompactResponseElement.class, metaDataMap);
        }

        public ShowCompactResponseElement() {
    + this.hadoopJobId = "None";
    +
        }

        public ShowCompactResponseElement(
    @@ -215,6 +247,14 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
          if (other.isSetRunAs()) {
            this.runAs = other.runAs;
          }
    + this.hightestTxnId = other.hightestTxnId;
    + if (other.isSetMetaInfo()) {
    + this.metaInfo = other.metaInfo;
    + }
    + this.endTime = other.endTime;
    + if (other.isSetHadoopJobId()) {
    + this.hadoopJobId = other.hadoopJobId;
    + }
        }

        public ShowCompactResponseElement deepCopy() {
    @@ -232,6 +272,13 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
          setStartIsSet(false);
          this.start = 0;
          this.runAs = null;
    + setHightestTxnIdIsSet(false);
    + this.hightestTxnId = 0;
    + this.metaInfo = null;
    + setEndTimeIsSet(false);
    + this.endTime = 0;
    + this.hadoopJobId = "None";
    +
        }

        public String getDbname() {
    @@ -425,6 +472,96 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
          }
        }

    + public long getHightestTxnId() {
    + return this.hightestTxnId;
    + }
    +
    + public void setHightestTxnId(long hightestTxnId) {
    + this.hightestTxnId = hightestTxnId;
    + setHightestTxnIdIsSet(true);
    + }
    +
    + public void unsetHightestTxnId() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __HIGHTESTTXNID_ISSET_ID);
    + }
    +
    + /** Returns true if field hightestTxnId is set (has been assigned a value) and false otherwise */
    + public boolean isSetHightestTxnId() {
    + return EncodingUtils.testBit(__isset_bitfield, __HIGHTESTTXNID_ISSET_ID);
    + }
    +
    + public void setHightestTxnIdIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __HIGHTESTTXNID_ISSET_ID, value);
    + }
    +
    + public String getMetaInfo() {
    + return this.metaInfo;
    + }
    +
    + public void setMetaInfo(String metaInfo) {
    + this.metaInfo = metaInfo;
    + }
    +
    + public void unsetMetaInfo() {
    + this.metaInfo = null;
    + }
    +
    + /** Returns true if field metaInfo is set (has been assigned a value) and false otherwise */
    + public boolean isSetMetaInfo() {
    + return this.metaInfo != null;
    + }
    +
    + public void setMetaInfoIsSet(boolean value) {
    + if (!value) {
    + this.metaInfo = null;
    + }
    + }
    +
    + public long getEndTime() {
    + return this.endTime;
    + }
    +
    + public void setEndTime(long endTime) {
    + this.endTime = endTime;
    + setEndTimeIsSet(true);
    + }
    +
    + public void unsetEndTime() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ENDTIME_ISSET_ID);
    + }
    +
    + /** Returns true if field endTime is set (has been assigned a value) and false otherwise */
    + public boolean isSetEndTime() {
    + return EncodingUtils.testBit(__isset_bitfield, __ENDTIME_ISSET_ID);
    + }
    +
    + public void setEndTimeIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ENDTIME_ISSET_ID, value);
    + }
    +
    + public String getHadoopJobId() {
    + return this.hadoopJobId;
    + }
    +
    + public void setHadoopJobId(String hadoopJobId) {
    + this.hadoopJobId = hadoopJobId;
    + }
    +
    + public void unsetHadoopJobId() {
    + this.hadoopJobId = null;
    + }
    +
    + /** Returns true if field hadoopJobId is set (has been assigned a value) and false otherwise */
    + public boolean isSetHadoopJobId() {
    + return this.hadoopJobId != null;
    + }
    +
    + public void setHadoopJobIdIsSet(boolean value) {
    + if (!value) {
    + this.hadoopJobId = null;
    + }
    + }
    +
        public void setFieldValue(_Fields field, Object value) {
          switch (field) {
          case DBNAME:
    @@ -491,6 +628,38 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
            }
            break;

    + case HIGHTEST_TXN_ID:
    + if (value == null) {
    + unsetHightestTxnId();
    + } else {
    + setHightestTxnId((Long)value);
    + }
    + break;
    +
    + case META_INFO:
    + if (value == null) {
    + unsetMetaInfo();
    + } else {
    + setMetaInfo((String)value);
    + }
    + break;
    +
    + case END_TIME:
    + if (value == null) {
    + unsetEndTime();
    + } else {
    + setEndTime((Long)value);
    + }
    + break;
    +
    + case HADOOP_JOB_ID:
    + if (value == null) {
    + unsetHadoopJobId();
    + } else {
    + setHadoopJobId((String)value);
    + }
    + break;
    +
          }
        }

    @@ -520,6 +689,18 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
          case RUN_AS:
            return getRunAs();

    + case HIGHTEST_TXN_ID:
    + return getHightestTxnId();
    +
    + case META_INFO:
    + return getMetaInfo();
    +
    + case END_TIME:
    + return getEndTime();
    +
    + case HADOOP_JOB_ID:
    + return getHadoopJobId();
    +
          }
          throw new IllegalStateException();
        }
    @@ -547,6 +728,14 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
            return isSetStart();
          case RUN_AS:
            return isSetRunAs();
    + case HIGHTEST_TXN_ID:
    + return isSetHightestTxnId();
    + case META_INFO:
    + return isSetMetaInfo();
    + case END_TIME:
    + return isSetEndTime();
    + case HADOOP_JOB_ID:
    + return isSetHadoopJobId();
          }
          throw new IllegalStateException();
        }
    @@ -636,6 +825,42 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
              return false;
          }

    + boolean this_present_hightestTxnId = true && this.isSetHightestTxnId();
    + boolean that_present_hightestTxnId = true && that.isSetHightestTxnId();
    + if (this_present_hightestTxnId || that_present_hightestTxnId) {
    + if (!(this_present_hightestTxnId && that_present_hightestTxnId))
    + return false;
    + if (this.hightestTxnId != that.hightestTxnId)
    + return false;
    + }
    +
    + boolean this_present_metaInfo = true && this.isSetMetaInfo();
    + boolean that_present_metaInfo = true && that.isSetMetaInfo();
    + if (this_present_metaInfo || that_present_metaInfo) {
    + if (!(this_present_metaInfo && that_present_metaInfo))
    + return false;
    + if (!this.metaInfo.equals(that.metaInfo))
    + return false;
    + }
    +
    + boolean this_present_endTime = true && this.isSetEndTime();
    + boolean that_present_endTime = true && that.isSetEndTime();
    + if (this_present_endTime || that_present_endTime) {
    + if (!(this_present_endTime && that_present_endTime))
    + return false;
    + if (this.endTime != that.endTime)
    + return false;
    + }
    +
    + boolean this_present_hadoopJobId = true && this.isSetHadoopJobId();
    + boolean that_present_hadoopJobId = true && that.isSetHadoopJobId();
    + if (this_present_hadoopJobId || that_present_hadoopJobId) {
    + if (!(this_present_hadoopJobId && that_present_hadoopJobId))
    + return false;
    + if (!this.hadoopJobId.equals(that.hadoopJobId))
    + return false;
    + }
    +
          return true;
        }

    @@ -683,6 +908,26 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
          if (present_runAs)
            list.add(runAs);

    + boolean present_hightestTxnId = true && (isSetHightestTxnId());
    + list.add(present_hightestTxnId);
    + if (present_hightestTxnId)
    + list.add(hightestTxnId);
    +
    + boolean present_metaInfo = true && (isSetMetaInfo());
    + list.add(present_metaInfo);
    + if (present_metaInfo)
    + list.add(metaInfo);
    +
    + boolean present_endTime = true && (isSetEndTime());
    + list.add(present_endTime);
    + if (present_endTime)
    + list.add(endTime);
    +
    + boolean present_hadoopJobId = true && (isSetHadoopJobId());
    + list.add(present_hadoopJobId);
    + if (present_hadoopJobId)
    + list.add(hadoopJobId);
    +
          return list.hashCode();
        }

    @@ -774,6 +1019,46 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
              return lastComparison;
            }
          }
    + lastComparison = Boolean.valueOf(isSetHightestTxnId()).compareTo(other.isSetHightestTxnId());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetHightestTxnId()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hightestTxnId, other.hightestTxnId);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetMetaInfo()).compareTo(other.isSetMetaInfo());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetMetaInfo()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.metaInfo, other.metaInfo);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetEndTime()).compareTo(other.isSetEndTime());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetEndTime()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endTime, other.endTime);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetHadoopJobId()).compareTo(other.isSetHadoopJobId());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetHadoopJobId()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hadoopJobId, other.hadoopJobId);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
          return 0;
        }

    @@ -861,6 +1146,38 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
            }
            first = false;
          }
    + if (isSetHightestTxnId()) {
    + if (!first) sb.append(", ");
    + sb.append("hightestTxnId:");
    + sb.append(this.hightestTxnId);
    + first = false;
    + }
    + if (isSetMetaInfo()) {
    + if (!first) sb.append(", ");
    + sb.append("metaInfo:");
    + if (this.metaInfo == null) {
    + sb.append("null");
    + } else {
    + sb.append(this.metaInfo);
    + }
    + first = false;
    + }
    + if (isSetEndTime()) {
    + if (!first) sb.append(", ");
    + sb.append("endTime:");
    + sb.append(this.endTime);
    + first = false;
    + }
    + if (isSetHadoopJobId()) {
    + if (!first) sb.append(", ");
    + sb.append("hadoopJobId:");
    + if (this.hadoopJobId == null) {
    + sb.append("null");
    + } else {
    + sb.append(this.hadoopJobId);
    + }
    + first = false;
    + }
          sb.append(")");
          return sb.toString();
        }
    @@ -986,6 +1303,38 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
                    org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
                  }
                  break;
    + case 9: // HIGHTEST_TXN_ID
    + if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
    + struct.hightestTxnId = iprot.readI64();
    + struct.setHightestTxnIdIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 10: // META_INFO
    + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
    + struct.metaInfo = iprot.readString();
    + struct.setMetaInfoIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 11: // END_TIME
    + if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
    + struct.endTime = iprot.readI64();
    + struct.setEndTimeIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 12: // HADOOP_JOB_ID
    + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
    + struct.hadoopJobId = iprot.readString();
    + struct.setHadoopJobIdIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
                default:
                  org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
              }
    @@ -1045,6 +1394,30 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
                oprot.writeFieldEnd();
              }
            }
    + if (struct.isSetHightestTxnId()) {
    + oprot.writeFieldBegin(HIGHTEST_TXN_ID_FIELD_DESC);
    + oprot.writeI64(struct.hightestTxnId);
    + oprot.writeFieldEnd();
    + }
    + if (struct.metaInfo != null) {
    + if (struct.isSetMetaInfo()) {
    + oprot.writeFieldBegin(META_INFO_FIELD_DESC);
    + oprot.writeString(struct.metaInfo);
    + oprot.writeFieldEnd();
    + }
    + }
    + if (struct.isSetEndTime()) {
    + oprot.writeFieldBegin(END_TIME_FIELD_DESC);
    + oprot.writeI64(struct.endTime);
    + oprot.writeFieldEnd();
    + }
    + if (struct.hadoopJobId != null) {
    + if (struct.isSetHadoopJobId()) {
    + oprot.writeFieldBegin(HADOOP_JOB_ID_FIELD_DESC);
    + oprot.writeString(struct.hadoopJobId);
    + oprot.writeFieldEnd();
    + }
    + }
            oprot.writeFieldStop();
            oprot.writeStructEnd();
          }
    @@ -1079,7 +1452,19 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
            if (struct.isSetRunAs()) {
              optionals.set(3);
            }
    - oprot.writeBitSet(optionals, 4);
    + if (struct.isSetHightestTxnId()) {
    + optionals.set(4);
    + }
    + if (struct.isSetMetaInfo()) {
    + optionals.set(5);
    + }
    + if (struct.isSetEndTime()) {
    + optionals.set(6);
    + }
    + if (struct.isSetHadoopJobId()) {
    + optionals.set(7);
    + }
    + oprot.writeBitSet(optionals, 8);
            if (struct.isSetPartitionname()) {
              oprot.writeString(struct.partitionname);
            }
    @@ -1092,6 +1477,18 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
            if (struct.isSetRunAs()) {
              oprot.writeString(struct.runAs);
            }
    + if (struct.isSetHightestTxnId()) {
    + oprot.writeI64(struct.hightestTxnId);
    + }
    + if (struct.isSetMetaInfo()) {
    + oprot.writeString(struct.metaInfo);
    + }
    + if (struct.isSetEndTime()) {
    + oprot.writeI64(struct.endTime);
    + }
    + if (struct.isSetHadoopJobId()) {
    + oprot.writeString(struct.hadoopJobId);
    + }
          }

          @Override
    @@ -1105,7 +1502,7 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
            struct.setTypeIsSet(true);
            struct.state = iprot.readString();
            struct.setStateIsSet(true);
    - BitSet incoming = iprot.readBitSet(4);
    + BitSet incoming = iprot.readBitSet(8);
            if (incoming.get(0)) {
              struct.partitionname = iprot.readString();
              struct.setPartitionnameIsSet(true);
    @@ -1122,6 +1519,22 @@ public class ShowCompactResponseElement implements org.apache.thrift.TBase<ShowC
              struct.runAs = iprot.readString();
              struct.setRunAsIsSet(true);
            }
    + if (incoming.get(4)) {
    + struct.hightestTxnId = iprot.readI64();
    + struct.setHightestTxnIdIsSet(true);
    + }
    + if (incoming.get(5)) {
    + struct.metaInfo = iprot.readString();
    + struct.setMetaInfoIsSet(true);
    + }
    + if (incoming.get(6)) {
    + struct.endTime = iprot.readI64();
    + struct.setEndTimeIsSet(true);
    + }
    + if (incoming.get(7)) {
    + struct.hadoopJobId = iprot.readString();
    + struct.setHadoopJobIdIsSet(true);
    + }
          }
        }


    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java
    ----------------------------------------------------------------------
    diff --git a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java
    index e89b93b..f566d6f 100644
    --- a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java
    +++ b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java
    @@ -38,6 +38,10 @@ import org.slf4j.LoggerFactory;
      public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksRequest, ShowLocksRequest._Fields>, java.io.Serializable, Cloneable, Comparable<ShowLocksRequest> {
        private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ShowLocksRequest");

    + private static final org.apache.thrift.protocol.TField DBNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("dbname", org.apache.thrift.protocol.TType.STRING, (short)1);
    + private static final org.apache.thrift.protocol.TField TABLENAME_FIELD_DESC = new org.apache.thrift.protocol.TField("tablename", org.apache.thrift.protocol.TType.STRING, (short)2);
    + private static final org.apache.thrift.protocol.TField PARTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("partname", org.apache.thrift.protocol.TType.STRING, (short)3);
    + private static final org.apache.thrift.protocol.TField IS_EXTENDED_FIELD_DESC = new org.apache.thrift.protocol.TField("isExtended", org.apache.thrift.protocol.TType.BOOL, (short)4);

        private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
        static {
    @@ -45,10 +49,17 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
          schemes.put(TupleScheme.class, new ShowLocksRequestTupleSchemeFactory());
        }

    + private String dbname; // optional
    + private String tablename; // optional
    + private String partname; // optional
    + private boolean isExtended; // optional

        /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
        public enum _Fields implements org.apache.thrift.TFieldIdEnum {
    -;
    + DBNAME((short)1, "dbname"),
    + TABLENAME((short)2, "tablename"),
    + PARTNAME((short)3, "partname"),
    + IS_EXTENDED((short)4, "isExtended");

          private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    @@ -63,6 +74,14 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
           */
          public static _Fields findByThriftId(int fieldId) {
            switch(fieldId) {
    + case 1: // DBNAME
    + return DBNAME;
    + case 2: // TABLENAME
    + return TABLENAME;
    + case 3: // PARTNAME
    + return PARTNAME;
    + case 4: // IS_EXTENDED
    + return IS_EXTENDED;
              default:
                return null;
            }
    @@ -101,20 +120,46 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
            return _fieldName;
          }
        }
    +
    + // isset id assignments
    + private static final int __ISEXTENDED_ISSET_ID = 0;
    + private byte __isset_bitfield = 0;
    + private static final _Fields optionals[] = {_Fields.DBNAME,_Fields.TABLENAME,_Fields.PARTNAME,_Fields.IS_EXTENDED};
        public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
        static {
          Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
    + tmpMap.put(_Fields.DBNAME, new org.apache.thrift.meta_data.FieldMetaData("dbname", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.TABLENAME, new org.apache.thrift.meta_data.FieldMetaData("tablename", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.PARTNAME, new org.apache.thrift.meta_data.FieldMetaData("partname", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.IS_EXTENDED, new org.apache.thrift.meta_data.FieldMetaData("isExtended", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
          metaDataMap = Collections.unmodifiableMap(tmpMap);
          org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ShowLocksRequest.class, metaDataMap);
        }

        public ShowLocksRequest() {
    + this.isExtended = false;
    +
        }

        /**
         * Performs a deep copy on <i>other</i>.
         */
        public ShowLocksRequest(ShowLocksRequest other) {
    + __isset_bitfield = other.__isset_bitfield;
    + if (other.isSetDbname()) {
    + this.dbname = other.dbname;
    + }
    + if (other.isSetTablename()) {
    + this.tablename = other.tablename;
    + }
    + if (other.isSetPartname()) {
    + this.partname = other.partname;
    + }
    + this.isExtended = other.isExtended;
        }

        public ShowLocksRequest deepCopy() {
    @@ -123,15 +168,155 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques

        @Override
        public void clear() {
    + this.dbname = null;
    + this.tablename = null;
    + this.partname = null;
    + this.isExtended = false;
    +
    + }
    +
    + public String getDbname() {
    + return this.dbname;
    + }
    +
    + public void setDbname(String dbname) {
    + this.dbname = dbname;
    + }
    +
    + public void unsetDbname() {
    + this.dbname = null;
    + }
    +
    + /** Returns true if field dbname is set (has been assigned a value) and false otherwise */
    + public boolean isSetDbname() {
    + return this.dbname != null;
    + }
    +
    + public void setDbnameIsSet(boolean value) {
    + if (!value) {
    + this.dbname = null;
    + }
    + }
    +
    + public String getTablename() {
    + return this.tablename;
    + }
    +
    + public void setTablename(String tablename) {
    + this.tablename = tablename;
    + }
    +
    + public void unsetTablename() {
    + this.tablename = null;
    + }
    +
    + /** Returns true if field tablename is set (has been assigned a value) and false otherwise */
    + public boolean isSetTablename() {
    + return this.tablename != null;
    + }
    +
    + public void setTablenameIsSet(boolean value) {
    + if (!value) {
    + this.tablename = null;
    + }
    + }
    +
    + public String getPartname() {
    + return this.partname;
    + }
    +
    + public void setPartname(String partname) {
    + this.partname = partname;
    + }
    +
    + public void unsetPartname() {
    + this.partname = null;
    + }
    +
    + /** Returns true if field partname is set (has been assigned a value) and false otherwise */
    + public boolean isSetPartname() {
    + return this.partname != null;
    + }
    +
    + public void setPartnameIsSet(boolean value) {
    + if (!value) {
    + this.partname = null;
    + }
    + }
    +
    + public boolean isIsExtended() {
    + return this.isExtended;
    + }
    +
    + public void setIsExtended(boolean isExtended) {
    + this.isExtended = isExtended;
    + setIsExtendedIsSet(true);
    + }
    +
    + public void unsetIsExtended() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ISEXTENDED_ISSET_ID);
    + }
    +
    + /** Returns true if field isExtended is set (has been assigned a value) and false otherwise */
    + public boolean isSetIsExtended() {
    + return EncodingUtils.testBit(__isset_bitfield, __ISEXTENDED_ISSET_ID);
    + }
    +
    + public void setIsExtendedIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ISEXTENDED_ISSET_ID, value);
        }

        public void setFieldValue(_Fields field, Object value) {
          switch (field) {
    + case DBNAME:
    + if (value == null) {
    + unsetDbname();
    + } else {
    + setDbname((String)value);
    + }
    + break;
    +
    + case TABLENAME:
    + if (value == null) {
    + unsetTablename();
    + } else {
    + setTablename((String)value);
    + }
    + break;
    +
    + case PARTNAME:
    + if (value == null) {
    + unsetPartname();
    + } else {
    + setPartname((String)value);
    + }
    + break;
    +
    + case IS_EXTENDED:
    + if (value == null) {
    + unsetIsExtended();
    + } else {
    + setIsExtended((Boolean)value);
    + }
    + break;
    +
          }
        }

        public Object getFieldValue(_Fields field) {
          switch (field) {
    + case DBNAME:
    + return getDbname();
    +
    + case TABLENAME:
    + return getTablename();
    +
    + case PARTNAME:
    + return getPartname();
    +
    + case IS_EXTENDED:
    + return isIsExtended();
    +
          }
          throw new IllegalStateException();
        }
    @@ -143,6 +328,14 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
          }

          switch (field) {
    + case DBNAME:
    + return isSetDbname();
    + case TABLENAME:
    + return isSetTablename();
    + case PARTNAME:
    + return isSetPartname();
    + case IS_EXTENDED:
    + return isSetIsExtended();
          }
          throw new IllegalStateException();
        }
    @@ -160,6 +353,42 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
          if (that == null)
            return false;

    + boolean this_present_dbname = true && this.isSetDbname();
    + boolean that_present_dbname = true && that.isSetDbname();
    + if (this_present_dbname || that_present_dbname) {
    + if (!(this_present_dbname && that_present_dbname))
    + return false;
    + if (!this.dbname.equals(that.dbname))
    + return false;
    + }
    +
    + boolean this_present_tablename = true && this.isSetTablename();
    + boolean that_present_tablename = true && that.isSetTablename();
    + if (this_present_tablename || that_present_tablename) {
    + if (!(this_present_tablename && that_present_tablename))
    + return false;
    + if (!this.tablename.equals(that.tablename))
    + return false;
    + }
    +
    + boolean this_present_partname = true && this.isSetPartname();
    + boolean that_present_partname = true && that.isSetPartname();
    + if (this_present_partname || that_present_partname) {
    + if (!(this_present_partname && that_present_partname))
    + return false;
    + if (!this.partname.equals(that.partname))
    + return false;
    + }
    +
    + boolean this_present_isExtended = true && this.isSetIsExtended();
    + boolean that_present_isExtended = true && that.isSetIsExtended();
    + if (this_present_isExtended || that_present_isExtended) {
    + if (!(this_present_isExtended && that_present_isExtended))
    + return false;
    + if (this.isExtended != that.isExtended)
    + return false;
    + }
    +
          return true;
        }

    @@ -167,6 +396,26 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
        public int hashCode() {
          List<Object> list = new ArrayList<Object>();

    + boolean present_dbname = true && (isSetDbname());
    + list.add(present_dbname);
    + if (present_dbname)
    + list.add(dbname);
    +
    + boolean present_tablename = true && (isSetTablename());
    + list.add(present_tablename);
    + if (present_tablename)
    + list.add(tablename);
    +
    + boolean present_partname = true && (isSetPartname());
    + list.add(present_partname);
    + if (present_partname)
    + list.add(partname);
    +
    + boolean present_isExtended = true && (isSetIsExtended());
    + list.add(present_isExtended);
    + if (present_isExtended)
    + list.add(isExtended);
    +
          return list.hashCode();
        }

    @@ -178,6 +427,46 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques

          int lastComparison = 0;

    + lastComparison = Boolean.valueOf(isSetDbname()).compareTo(other.isSetDbname());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetDbname()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.dbname, other.dbname);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetTablename()).compareTo(other.isSetTablename());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetTablename()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tablename, other.tablename);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetPartname()).compareTo(other.isSetPartname());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetPartname()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.partname, other.partname);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetIsExtended()).compareTo(other.isSetIsExtended());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetIsExtended()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.isExtended, other.isExtended);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
          return 0;
        }

    @@ -198,6 +487,41 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
          StringBuilder sb = new StringBuilder("ShowLocksRequest(");
          boolean first = true;

    + if (isSetDbname()) {
    + sb.append("dbname:");
    + if (this.dbname == null) {
    + sb.append("null");
    + } else {
    + sb.append(this.dbname);
    + }
    + first = false;
    + }
    + if (isSetTablename()) {
    + if (!first) sb.append(", ");
    + sb.append("tablename:");
    + if (this.tablename == null) {
    + sb.append("null");
    + } else {
    + sb.append(this.tablename);
    + }
    + first = false;
    + }
    + if (isSetPartname()) {
    + if (!first) sb.append(", ");
    + sb.append("partname:");
    + if (this.partname == null) {
    + sb.append("null");
    + } else {
    + sb.append(this.partname);
    + }
    + first = false;
    + }
    + if (isSetIsExtended()) {
    + if (!first) sb.append(", ");
    + sb.append("isExtended:");
    + sb.append(this.isExtended);
    + first = false;
    + }
          sb.append(")");
          return sb.toString();
        }
    @@ -217,6 +541,8 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques

        private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
          try {
    + // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
    + __isset_bitfield = 0;
            read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
          } catch (org.apache.thrift.TException te) {
            throw new java.io.IOException(te);
    @@ -241,6 +567,38 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
                break;
              }
              switch (schemeField.id) {
    + case 1: // DBNAME
    + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
    + struct.dbname = iprot.readString();
    + struct.setDbnameIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 2: // TABLENAME
    + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
    + struct.tablename = iprot.readString();
    + struct.setTablenameIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 3: // PARTNAME
    + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
    + struct.partname = iprot.readString();
    + struct.setPartnameIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 4: // IS_EXTENDED
    + if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
    + struct.isExtended = iprot.readBool();
    + struct.setIsExtendedIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
                default:
                  org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
              }
    @@ -254,6 +612,32 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
            struct.validate();

            oprot.writeStructBegin(STRUCT_DESC);
    + if (struct.dbname != null) {
    + if (struct.isSetDbname()) {
    + oprot.writeFieldBegin(DBNAME_FIELD_DESC);
    + oprot.writeString(struct.dbname);
    + oprot.writeFieldEnd();
    + }
    + }
    + if (struct.tablename != null) {
    + if (struct.isSetTablename()) {
    + oprot.writeFieldBegin(TABLENAME_FIELD_DESC);
    + oprot.writeString(struct.tablename);
    + oprot.writeFieldEnd();
    + }
    + }
    + if (struct.partname != null) {
    + if (struct.isSetPartname()) {
    + oprot.writeFieldBegin(PARTNAME_FIELD_DESC);
    + oprot.writeString(struct.partname);
    + oprot.writeFieldEnd();
    + }
    + }
    + if (struct.isSetIsExtended()) {
    + oprot.writeFieldBegin(IS_EXTENDED_FIELD_DESC);
    + oprot.writeBool(struct.isExtended);
    + oprot.writeFieldEnd();
    + }
            oprot.writeFieldStop();
            oprot.writeStructEnd();
          }
    @@ -271,11 +655,54 @@ public class ShowLocksRequest implements org.apache.thrift.TBase<ShowLocksReques
          @Override
          public void write(org.apache.thrift.protocol.TProtocol prot, ShowLocksRequest struct) throws org.apache.thrift.TException {
            TTupleProtocol oprot = (TTupleProtocol) prot;
    + BitSet optionals = new BitSet();
    + if (struct.isSetDbname()) {
    + optionals.set(0);
    + }
    + if (struct.isSetTablename()) {
    + optionals.set(1);
    + }
    + if (struct.isSetPartname()) {
    + optionals.set(2);
    + }
    + if (struct.isSetIsExtended()) {
    + optionals.set(3);
    + }
    + oprot.writeBitSet(optionals, 4);
    + if (struct.isSetDbname()) {
    + oprot.writeString(struct.dbname);
    + }
    + if (struct.isSetTablename()) {
    + oprot.writeString(struct.tablename);
    + }
    + if (struct.isSetPartname()) {
    + oprot.writeString(struct.partname);
    + }
    + if (struct.isSetIsExtended()) {
    + oprot.writeBool(struct.isExtended);
    + }
          }

          @Override
          public void read(org.apache.thrift.protocol.TProtocol prot, ShowLocksRequest struct) throws org.apache.thrift.TException {
            TTupleProtocol iprot = (TTupleProtocol) prot;
    + BitSet incoming = iprot.readBitSet(4);
    + if (incoming.get(0)) {
    + struct.dbname = iprot.readString();
    + struct.setDbnameIsSet(true);
    + }
    + if (incoming.get(1)) {
    + struct.tablename = iprot.readString();
    + struct.setTablenameIsSet(true);
    + }
    + if (incoming.get(2)) {
    + struct.partname = iprot.readString();
    + struct.setPartnameIsSet(true);
    + }
    + if (incoming.get(3)) {
    + struct.isExtended = iprot.readBool();
    + struct.setIsExtendedIsSet(true);
    + }
          }
        }


    http://git-wip-us.apache.org/repos/asf/hive/blob/fe5cd560/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java
    ----------------------------------------------------------------------
    diff --git a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java
    index 037a383..4bd7a7e 100644
    --- a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java
    +++ b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java
    @@ -49,6 +49,11 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
        private static final org.apache.thrift.protocol.TField ACQUIREDAT_FIELD_DESC = new org.apache.thrift.protocol.TField("acquiredat", org.apache.thrift.protocol.TType.I64, (short)9);
        private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)10);
        private static final org.apache.thrift.protocol.TField HOSTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("hostname", org.apache.thrift.protocol.TType.STRING, (short)11);
    + private static final org.apache.thrift.protocol.TField HEARTBEAT_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("heartbeatCount", org.apache.thrift.protocol.TType.I32, (short)12);
    + private static final org.apache.thrift.protocol.TField AGENT_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("agentInfo", org.apache.thrift.protocol.TType.STRING, (short)13);
    + private static final org.apache.thrift.protocol.TField BLOCKED_BY_EXT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("blockedByExtId", org.apache.thrift.protocol.TType.I64, (short)14);
    + private static final org.apache.thrift.protocol.TField BLOCKED_BY_INT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("blockedByIntId", org.apache.thrift.protocol.TType.I64, (short)15);
    + private static final org.apache.thrift.protocol.TField LOCK_ID_INTERNAL_FIELD_DESC = new org.apache.thrift.protocol.TField("lockIdInternal", org.apache.thrift.protocol.TType.I64, (short)16);

        private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
        static {
    @@ -67,6 +72,11 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
        private long acquiredat; // optional
        private String user; // required
        private String hostname; // required
    + private int heartbeatCount; // optional
    + private String agentInfo; // optional
    + private long blockedByExtId; // optional
    + private long blockedByIntId; // optional
    + private long lockIdInternal; // optional

        /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
        public enum _Fields implements org.apache.thrift.TFieldIdEnum {
    @@ -88,7 +98,12 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
          LASTHEARTBEAT((short)8, "lastheartbeat"),
          ACQUIREDAT((short)9, "acquiredat"),
          USER((short)10, "user"),
    - HOSTNAME((short)11, "hostname");
    + HOSTNAME((short)11, "hostname"),
    + HEARTBEAT_COUNT((short)12, "heartbeatCount"),
    + AGENT_INFO((short)13, "agentInfo"),
    + BLOCKED_BY_EXT_ID((short)14, "blockedByExtId"),
    + BLOCKED_BY_INT_ID((short)15, "blockedByIntId"),
    + LOCK_ID_INTERNAL((short)16, "lockIdInternal");

          private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    @@ -125,6 +140,16 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
                return USER;
              case 11: // HOSTNAME
                return HOSTNAME;
    + case 12: // HEARTBEAT_COUNT
    + return HEARTBEAT_COUNT;
    + case 13: // AGENT_INFO
    + return AGENT_INFO;
    + case 14: // BLOCKED_BY_EXT_ID
    + return BLOCKED_BY_EXT_ID;
    + case 15: // BLOCKED_BY_INT_ID
    + return BLOCKED_BY_INT_ID;
    + case 16: // LOCK_ID_INTERNAL
    + return LOCK_ID_INTERNAL;
              default:
                return null;
            }
    @@ -169,8 +194,12 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
        private static final int __TXNID_ISSET_ID = 1;
        private static final int __LASTHEARTBEAT_ISSET_ID = 2;
        private static final int __ACQUIREDAT_ISSET_ID = 3;
    + private static final int __HEARTBEATCOUNT_ISSET_ID = 4;
    + private static final int __BLOCKEDBYEXTID_ISSET_ID = 5;
    + private static final int __BLOCKEDBYINTID_ISSET_ID = 6;
    + private static final int __LOCKIDINTERNAL_ISSET_ID = 7;
        private byte __isset_bitfield = 0;
    - private static final _Fields optionals[] = {_Fields.TABLENAME,_Fields.PARTNAME,_Fields.TXNID,_Fields.ACQUIREDAT};
    + private static final _Fields optionals[] = {_Fields.TABLENAME,_Fields.PARTNAME,_Fields.TXNID,_Fields.ACQUIREDAT,_Fields.HEARTBEAT_COUNT,_Fields.AGENT_INFO,_Fields.BLOCKED_BY_EXT_ID,_Fields.BLOCKED_BY_INT_ID,_Fields.LOCK_ID_INTERNAL};
        public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
        static {
          Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
    @@ -196,11 +225,23 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
          tmpMap.put(_Fields.HOSTNAME, new org.apache.thrift.meta_data.FieldMetaData("hostname", org.apache.thrift.TFieldRequirementType.REQUIRED,
              new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.HEARTBEAT_COUNT, new org.apache.thrift.meta_data.FieldMetaData("heartbeatCount", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
    + tmpMap.put(_Fields.AGENT_INFO, new org.apache.thrift.meta_data.FieldMetaData("agentInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    + tmpMap.put(_Fields.BLOCKED_BY_EXT_ID, new org.apache.thrift.meta_data.FieldMetaData("blockedByExtId", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    + tmpMap.put(_Fields.BLOCKED_BY_INT_ID, new org.apache.thrift.meta_data.FieldMetaData("blockedByIntId", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    + tmpMap.put(_Fields.LOCK_ID_INTERNAL, new org.apache.thrift.meta_data.FieldMetaData("lockIdInternal", org.apache.thrift.TFieldRequirementType.OPTIONAL,
    + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
          metaDataMap = Collections.unmodifiableMap(tmpMap);
          org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ShowLocksResponseElement.class, metaDataMap);
        }

        public ShowLocksResponseElement() {
    + this.heartbeatCount = 0;
    +
        }

        public ShowLocksResponseElement(
    @@ -254,6 +295,13 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
          if (other.isSetHostname()) {
            this.hostname = other.hostname;
          }
    + this.heartbeatCount = other.heartbeatCount;
    + if (other.isSetAgentInfo()) {
    + this.agentInfo = other.agentInfo;
    + }
    + this.blockedByExtId = other.blockedByExtId;
    + this.blockedByIntId = other.blockedByIntId;
    + this.lockIdInternal = other.lockIdInternal;
        }

        public ShowLocksResponseElement deepCopy() {
    @@ -277,6 +325,15 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
          this.acquiredat = 0;
          this.user = null;
          this.hostname = null;
    + this.heartbeatCount = 0;
    +
    + this.agentInfo = null;
    + setBlockedByExtIdIsSet(false);
    + this.blockedByExtId = 0;
    + setBlockedByIntIdIsSet(false);
    + this.blockedByIntId = 0;
    + setLockIdInternalIsSet(false);
    + this.lockIdInternal = 0;
        }

        public long getLockid() {
    @@ -544,6 +601,117 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
          }
        }

    + public int getHeartbeatCount() {
    + return this.heartbeatCount;
    + }
    +
    + public void setHeartbeatCount(int heartbeatCount) {
    + this.heartbeatCount = heartbeatCount;
    + setHeartbeatCountIsSet(true);
    + }
    +
    + public void unsetHeartbeatCount() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID);
    + }
    +
    + /** Returns true if field heartbeatCount is set (has been assigned a value) and false otherwise */
    + public boolean isSetHeartbeatCount() {
    + return EncodingUtils.testBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID);
    + }
    +
    + public void setHeartbeatCountIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID, value);
    + }
    +
    + public String getAgentInfo() {
    + return this.agentInfo;
    + }
    +
    + public void setAgentInfo(String agentInfo) {
    + this.agentInfo = agentInfo;
    + }
    +
    + public void unsetAgentInfo() {
    + this.agentInfo = null;
    + }
    +
    + /** Returns true if field agentInfo is set (has been assigned a value) and false otherwise */
    + public boolean isSetAgentInfo() {
    + return this.agentInfo != null;
    + }
    +
    + public void setAgentInfoIsSet(boolean value) {
    + if (!value) {
    + this.agentInfo = null;
    + }
    + }
    +
    + public long getBlockedByExtId() {
    + return this.blockedByExtId;
    + }
    +
    + public void setBlockedByExtId(long blockedByExtId) {
    + this.blockedByExtId = blockedByExtId;
    + setBlockedByExtIdIsSet(true);
    + }
    +
    + public void unsetBlockedByExtId() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __BLOCKEDBYEXTID_ISSET_ID);
    + }
    +
    + /** Returns true if field blockedByExtId is set (has been assigned a value) and false otherwise */
    + public boolean isSetBlockedByExtId() {
    + return EncodingUtils.testBit(__isset_bitfield, __BLOCKEDBYEXTID_ISSET_ID);
    + }
    +
    + public void setBlockedByExtIdIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __BLOCKEDBYEXTID_ISSET_ID, value);
    + }
    +
    + public long getBlockedByIntId() {
    + return this.blockedByIntId;
    + }
    +
    + public void setBlockedByIntId(long blockedByIntId) {
    + this.blockedByIntId = blockedByIntId;
    + setBlockedByIntIdIsSet(true);
    + }
    +
    + public void unsetBlockedByIntId() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __BLOCKEDBYINTID_ISSET_ID);
    + }
    +
    + /** Returns true if field blockedByIntId is set (has been assigned a value) and false otherwise */
    + public boolean isSetBlockedByIntId() {
    + return EncodingUtils.testBit(__isset_bitfield, __BLOCKEDBYINTID_ISSET_ID);
    + }
    +
    + public void setBlockedByIntIdIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __BLOCKEDBYINTID_ISSET_ID, value);
    + }
    +
    + public long getLockIdInternal() {
    + return this.lockIdInternal;
    + }
    +
    + public void setLockIdInternal(long lockIdInternal) {
    + this.lockIdInternal = lockIdInternal;
    + setLockIdInternalIsSet(true);
    + }
    +
    + public void unsetLockIdInternal() {
    + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __LOCKIDINTERNAL_ISSET_ID);
    + }
    +
    + /** Returns true if field lockIdInternal is set (has been assigned a value) and false otherwise */
    + public boolean isSetLockIdInternal() {
    + return EncodingUtils.testBit(__isset_bitfield, __LOCKIDINTERNAL_ISSET_ID);
    + }
    +
    + public void setLockIdInternalIsSet(boolean value) {
    + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LOCKIDINTERNAL_ISSET_ID, value);
    + }
    +
        public void setFieldValue(_Fields field, Object value) {
          switch (field) {
          case LOCKID:
    @@ -634,6 +802,46 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
            }
            break;

    + case HEARTBEAT_COUNT:
    + if (value == null) {
    + unsetHeartbeatCount();
    + } else {
    + setHeartbeatCount((Integer)value);
    + }
    + break;
    +
    + case AGENT_INFO:
    + if (value == null) {
    + unsetAgentInfo();
    + } else {
    + setAgentInfo((String)value);
    + }
    + break;
    +
    + case BLOCKED_BY_EXT_ID:
    + if (value == null) {
    + unsetBlockedByExtId();
    + } else {
    + setBlockedByExtId((Long)value);
    + }
    + break;
    +
    + case BLOCKED_BY_INT_ID:
    + if (value == null) {
    + unsetBlockedByIntId();
    + } else {
    + setBlockedByIntId((Long)value);
    + }
    + break;
    +
    + case LOCK_ID_INTERNAL:
    + if (value == null) {
    + unsetLockIdInternal();
    + } else {
    + setLockIdInternal((Long)value);
    + }
    + break;
    +
          }
        }

    @@ -672,6 +880,21 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
          case HOSTNAME:
            return getHostname();

    + case HEARTBEAT_COUNT:
    + return getHeartbeatCount();
    +
    + case AGENT_INFO:
    + return getAgentInfo();
    +
    + case BLOCKED_BY_EXT_ID:
    + return getBlockedByExtId();
    +
    + case BLOCKED_BY_INT_ID:
    + return getBlockedByIntId();
    +
    + case LOCK_ID_INTERNAL:
    + return getLockIdInternal();
    +
          }
          throw new IllegalStateException();
        }
    @@ -705,6 +928,16 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
            return isSetUser();
          case HOSTNAME:
            return isSetHostname();
    + case HEARTBEAT_COUNT:
    + return isSetHeartbeatCount();
    + case AGENT_INFO:
    + return isSetAgentInfo();
    + case BLOCKED_BY_EXT_ID:
    + return isSetBlockedByExtId();
    + case BLOCKED_BY_INT_ID:
    + return isSetBlockedByIntId();
    + case LOCK_ID_INTERNAL:
    + return isSetLockIdInternal();
          }
          throw new IllegalStateException();
        }
    @@ -821,6 +1054,51 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
              return false;
          }

    + boolean this_present_heartbeatCount = true && this.isSetHeartbeatCount();
    + boolean that_present_heartbeatCount = true && that.isSetHeartbeatCount();
    + if (this_present_heartbeatCount || that_present_heartbeatCount) {
    + if (!(this_present_heartbeatCount && that_present_heartbeatCount))
    + return false;
    + if (this.heartbeatCount != that.heartbeatCount)
    + return false;
    + }
    +
    + boolean this_present_agentInfo = true && this.isSetAgentInfo();
    + boolean that_present_agentInfo = true && that.isSetAgentInfo();
    + if (this_present_agentInfo || that_present_agentInfo) {
    + if (!(this_present_agentInfo && that_present_agentInfo))
    + return false;
    + if (!this.agentInfo.equals(that.agentInfo))
    + return false;
    + }
    +
    + boolean this_present_blockedByExtId = true && this.isSetBlockedByExtId();
    + boolean that_present_blockedByExtId = true && that.isSetBlockedByExtId();
    + if (this_present_blockedByExtId || that_present_blockedByExtId) {
    + if (!(this_present_blockedByExtId && that_present_blockedByExtId))
    + return false;
    + if (this.blockedByExtId != that.blockedByExtId)
    + return false;
    + }
    +
    + boolean this_present_blockedByIntId = true && this.isSetBlockedByIntId();
    + boolean that_present_blockedByIntId = true && that.isSetBlockedByIntId();
    + if (this_present_blockedByIntId || that_present_blockedByIntId) {
    + if (!(this_present_blockedByIntId && that_present_blockedByIntId))
    + return false;
    + if (this.blockedByIntId != that.blockedByIntId)
    + return false;
    + }
    +
    + boolean this_present_lockIdInternal = true && this.isSetLockIdInternal();
    + boolean that_present_lockIdInternal = true && that.isSetLockIdInternal();
    + if (this_present_lockIdInternal || that_present_lockIdInternal) {
    + if (!(this_present_lockIdInternal && that_present_lockIdInternal))
    + return false;
    + if (this.lockIdInternal != that.lockIdInternal)
    + return false;
    + }
    +
          return true;
        }

    @@ -883,6 +1161,31 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
          if (present_hostname)
            list.add(hostname);

    + boolean present_heartbeatCount = true && (isSetHeartbeatCount());
    + list.add(present_heartbeatCount);
    + if (present_heartbeatCount)
    + list.add(heartbeatCount);
    +
    + boolean present_agentInfo = true && (isSetAgentInfo());
    + list.add(present_agentInfo);
    + if (present_agentInfo)
    + list.add(agentInfo);
    +
    + boolean present_blockedByExtId = true && (isSetBlockedByExtId());
    + list.add(present_blockedByExtId);
    + if (present_blockedByExtId)
    + list.add(blockedByExtId);
    +
    + boolean present_blockedByIntId = true && (isSetBlockedByIntId());
    + list.add(present_blockedByIntId);
    + if (present_blockedByIntId)
    + list.add(blockedByIntId);
    +
    + boolean present_lockIdInternal = true && (isSetLockIdInternal());
    + list.add(present_lockIdInternal);
    + if (present_lockIdInternal)
    + list.add(lockIdInternal);
    +
          return list.hashCode();
        }

    @@ -1004,6 +1307,56 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
              return lastComparison;
            }
          }
    + lastComparison = Boolean.valueOf(isSetHeartbeatCount()).compareTo(other.isSetHeartbeatCount());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetHeartbeatCount()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.heartbeatCount, other.heartbeatCount);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetAgentInfo()).compareTo(other.isSetAgentInfo());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetAgentInfo()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.agentInfo, other.agentInfo);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetBlockedByExtId()).compareTo(other.isSetBlockedByExtId());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetBlockedByExtId()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.blockedByExtId, other.blockedByExtId);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetBlockedByIntId()).compareTo(other.isSetBlockedByIntId());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetBlockedByIntId()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.blockedByIntId, other.blockedByIntId);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
    + lastComparison = Boolean.valueOf(isSetLockIdInternal()).compareTo(other.isSetLockIdInternal());
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + if (isSetLockIdInternal()) {
    + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lockIdInternal, other.lockIdInternal);
    + if (lastComparison != 0) {
    + return lastComparison;
    + }
    + }
          return 0;
        }

    @@ -1103,6 +1456,40 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
            sb.append(this.hostname);
          }
          first = false;
    + if (isSetHeartbeatCount()) {
    + if (!first) sb.append(", ");
    + sb.append("heartbeatCount:");
    + sb.append(this.heartbeatCount);
    + first = false;
    + }
    + if (isSetAgentInfo()) {
    + if (!first) sb.append(", ");
    + sb.append("agentInfo:");
    + if (this.agentInfo == null) {
    + sb.append("null");
    + } else {
    + sb.append(this.agentInfo);
    + }
    + first = false;
    + }
    + if (isSetBlockedByExtId()) {
    + if (!first) sb.append(", ");
    + sb.append("blockedByExtId:");
    + sb.append(this.blockedByExtId);
    + first = false;
    + }
    + if (isSetBlockedByIntId()) {
    + if (!first) sb.append(", ");
    + sb.append("blockedByIntId:");
    + sb.append(this.blockedByIntId);
    + first = false;
    + }
    + if (isSetLockIdInternal()) {
    + if (!first) sb.append(", ");
    + sb.append("lockIdInternal:");
    + sb.append(this.lockIdInternal);
    + first = false;
    + }
          sb.append(")");
          return sb.toString();
        }
    @@ -1264,6 +1651,46 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
                    org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
                  }
                  break;
    + case 12: // HEARTBEAT_COUNT
    + if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
    + struct.heartbeatCount = iprot.readI32();
    + struct.setHeartbeatCountIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 13: // AGENT_INFO
    + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
    + struct.agentInfo = iprot.readString();
    + struct.setAgentInfoIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 14: // BLOCKED_BY_EXT_ID
    + if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
    + struct.blockedByExtId = iprot.readI64();
    + struct.setBlockedByExtIdIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 15: // BLOCKED_BY_INT_ID
    + if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
    + struct.blockedByIntId = iprot.readI64();
    + struct.setBlockedByIntIdIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
    + case 16: // LOCK_ID_INTERNAL
    + if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
    + struct.lockIdInternal = iprot.readI64();
    + struct.setLockIdInternalIsSet(true);
    + } else {
    + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
    + }
    + break;
                default:
                  org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
              }
    @@ -1332,6 +1759,33 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
              oprot.writeString(struct.hostname);
              oprot.writeFieldEnd();
            }
    + if (struct.isSetHeartbeatCount()) {
    + oprot.writeFieldBegin(HEARTBEAT_COUNT_FIELD_DESC);
    + oprot.writeI32(struct.heartbeatCount);
    + oprot.writeFieldEnd();
    + }
    + if (struct.agentInfo != null) {
    + if (struct.isSetAgentInfo()) {
    + oprot.writeFieldBegin(AGENT_INFO_FIELD_DESC);
    + oprot.writeString(struct.agentInfo);
    + oprot.writeFieldEnd();
    + }
    + }
    + if (struct.isSetBlockedByExtId()) {
    + oprot.writeFieldBegin(BLOCKED_BY_EXT_ID_FIELD_DESC);
    + oprot.writeI64(struct.blockedByExtId);
    + oprot.writeFieldEnd();
    + }
    + if (struct.isSetBlockedByIntId()) {
    + oprot.writeFieldBegin(BLOCKED_BY_INT_ID_FIELD_DESC);
    + oprot.writeI64(struct.blockedByIntId);
    + oprot.writeFieldEnd();
    + }
    + if (struct.isSetLockIdInternal()) {
    + oprot.writeFieldBegin(LOCK_ID_INTERNAL_FIELD_DESC);
    + oprot.writeI64(struct.lockIdInternal);
    + oprot.writeFieldEnd();
    + }
            oprot.writeFieldStop();
            oprot.writeStructEnd();
          }
    @@ -1369,7 +1823,22 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
            if (struct.isSetAcquiredat()) {
              optionals.set(3);
            }
    - oprot.writeBitSet(optionals, 4);
    + if (struct.isSetHeartbeatCount()) {
    + optionals.set(4);
    + }
    + if (struct.isSetAgentInfo()) {
    + optionals.set(5);
    + }
    + if (struct.isSetBlockedByExtId()) {
    + optionals.set(6);
    + }
    + if (struct.isSetBlockedByIntId()) {
    + optionals.set(7);
    + }
    + if (struct.isSetLockIdInternal()) {
    + optionals.set(8);
    + }
    + oprot.writeBitSet(optionals, 9);
            if (struct.isSetTablename()) {
              oprot.writeString(struct.tablename);
            }
    @@ -1382,6 +1851,21 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
            if (struct.isSetAcquiredat()) {
              oprot.writeI64(struct.acquiredat);
            }
    + if (struct.isSetHeartbeatCount()) {
    + oprot.writeI32(struct.heartbeatCount);
    + }
    + if (struct.isSetAgentInfo()) {
    + oprot.writeString(struct.agentInfo);
    + }
    + if (struct.isSetBlockedByExtId()) {
    + oprot.writeI64(struct.blockedByExtId);
    + }
    + if (struct.isSetBlockedByIntId()) {
    + oprot.writeI64(struct.blockedByIntId);
    + }
    + if (struct.isSetLockIdInternal()) {
    + oprot.writeI64(struct.lockIdInternal);
    + }
          }

          @Override
    @@ -1401,7 +1885,7 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
            struct.setUserIsSet(true);
            struct.hostname = iprot.readString();
            struct.setHostnameIsSet(true);
    - BitSet incoming = iprot.readBitSet(4);
    + BitSet incoming = iprot.readBitSet(9);
            if (incoming.get(0)) {
              struct.tablename = iprot.readString();
              struct.setTablenameIsSet(true);
    @@ -1418,6 +1902,26 @@ public class ShowLocksResponseElement implements org.apache.thrift.TBase<ShowLoc
              struct.acquiredat = iprot.readI64();
              struct.setAcquiredatIsSet(true);
            }
    + if (incoming.get(4)) {
    + struct.heartbeatCount = iprot.readI32();
    + struct.setHeartbeatCountIsSet(true);
    + }
    + if (incoming.get(5)) {
    + struct.agentInfo = iprot.readString();
    + struct.setAgentInfoIsSet(true);
    + }
    + if (incoming.get(6)) {
    + struct.blockedByExtId = iprot.readI64();
    + struct.setBlockedByExtIdIsSet(true);
    + }
    + if (incoming.get(7)) {
    + struct.blockedByIntId = iprot.readI64();
    + struct.setBlockedByIntIdIsSet(true);
    + }
    + if (incoming.get(8)) {
    + struct.lockIdInternal = iprot.readI64();
    + struct.setLockIdInternalIsSet(true);
    + }
          }
        }

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupcommits @
categorieshive, hadoop
postedJan 14, '16 at 7:47p
activeJan 14, '16 at 7:47p
posts4
users1
websitehive.apache.org

1 user in discussion

Gates: 4 posts

People

Translate

site design / logo © 2021 Grokbase