TTabletStat.java

/**
 * Autogenerated by Thrift Compiler (0.16.0)
 *
 * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 *  @generated
 */
package org.apache.doris.thrift;

@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked", "unused"})
@javax.annotation.Generated(value = "Autogenerated by Thrift Compiler (0.16.0)", date = "2026-05-14")
public class TTabletStat implements org.apache.thrift.TBase<TTabletStat, TTabletStat._Fields>, java.io.Serializable, Cloneable, Comparable<TTabletStat> {
  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TTabletStat");

  private static final org.apache.thrift.protocol.TField TABLET_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tablet_id", org.apache.thrift.protocol.TType.I64, (short)1);
  private static final org.apache.thrift.protocol.TField DATA_SIZE_FIELD_DESC = new org.apache.thrift.protocol.TField("data_size", org.apache.thrift.protocol.TType.I64, (short)2);
  private static final org.apache.thrift.protocol.TField ROW_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("row_count", org.apache.thrift.protocol.TType.I64, (short)3);
  private static final org.apache.thrift.protocol.TField TOTAL_VERSION_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("total_version_count", org.apache.thrift.protocol.TType.I64, (short)4);
  private static final org.apache.thrift.protocol.TField REMOTE_DATA_SIZE_FIELD_DESC = new org.apache.thrift.protocol.TField("remote_data_size", org.apache.thrift.protocol.TType.I64, (short)5);
  private static final org.apache.thrift.protocol.TField VISIBLE_VERSION_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("visible_version_count", org.apache.thrift.protocol.TType.I64, (short)6);
  private static final org.apache.thrift.protocol.TField VISIBLE_VERSION_FIELD_DESC = new org.apache.thrift.protocol.TField("visible_version", org.apache.thrift.protocol.TType.I64, (short)7);
  private static final org.apache.thrift.protocol.TField LOCAL_INDEX_SIZE_FIELD_DESC = new org.apache.thrift.protocol.TField("local_index_size", org.apache.thrift.protocol.TType.I64, (short)8);
  private static final org.apache.thrift.protocol.TField LOCAL_SEGMENT_SIZE_FIELD_DESC = new org.apache.thrift.protocol.TField("local_segment_size", org.apache.thrift.protocol.TType.I64, (short)9);
  private static final org.apache.thrift.protocol.TField REMOTE_INDEX_SIZE_FIELD_DESC = new org.apache.thrift.protocol.TField("remote_index_size", org.apache.thrift.protocol.TType.I64, (short)10);
  private static final org.apache.thrift.protocol.TField REMOTE_SEGMENT_SIZE_FIELD_DESC = new org.apache.thrift.protocol.TField("remote_segment_size", org.apache.thrift.protocol.TType.I64, (short)11);

  private static final org.apache.thrift.scheme.SchemeFactory STANDARD_SCHEME_FACTORY = new TTabletStatStandardSchemeFactory();
  private static final org.apache.thrift.scheme.SchemeFactory TUPLE_SCHEME_FACTORY = new TTabletStatTupleSchemeFactory();

  public long tablet_id; // required
  public long data_size; // optional
  public long row_count; // optional
  public long total_version_count; // optional
  public long remote_data_size; // optional
  public long visible_version_count; // optional
  public long visible_version; // optional
  public long local_index_size; // optional
  public long local_segment_size; // optional
  public long remote_index_size; // optional
  public long remote_segment_size; // 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 {
    TABLET_ID((short)1, "tablet_id"),
    DATA_SIZE((short)2, "data_size"),
    ROW_COUNT((short)3, "row_count"),
    TOTAL_VERSION_COUNT((short)4, "total_version_count"),
    REMOTE_DATA_SIZE((short)5, "remote_data_size"),
    VISIBLE_VERSION_COUNT((short)6, "visible_version_count"),
    VISIBLE_VERSION((short)7, "visible_version"),
    LOCAL_INDEX_SIZE((short)8, "local_index_size"),
    LOCAL_SEGMENT_SIZE((short)9, "local_segment_size"),
    REMOTE_INDEX_SIZE((short)10, "remote_index_size"),
    REMOTE_SEGMENT_SIZE((short)11, "remote_segment_size");

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

    static {
      for (_Fields field : java.util.EnumSet.allOf(_Fields.class)) {
        byName.put(field.getFieldName(), field);
      }
    }

    /**
     * Find the _Fields constant that matches fieldId, or null if its not found.
     */
    @org.apache.thrift.annotation.Nullable
    public static _Fields findByThriftId(int fieldId) {
      switch(fieldId) {
        case 1: // TABLET_ID
          return TABLET_ID;
        case 2: // DATA_SIZE
          return DATA_SIZE;
        case 3: // ROW_COUNT
          return ROW_COUNT;
        case 4: // TOTAL_VERSION_COUNT
          return TOTAL_VERSION_COUNT;
        case 5: // REMOTE_DATA_SIZE
          return REMOTE_DATA_SIZE;
        case 6: // VISIBLE_VERSION_COUNT
          return VISIBLE_VERSION_COUNT;
        case 7: // VISIBLE_VERSION
          return VISIBLE_VERSION;
        case 8: // LOCAL_INDEX_SIZE
          return LOCAL_INDEX_SIZE;
        case 9: // LOCAL_SEGMENT_SIZE
          return LOCAL_SEGMENT_SIZE;
        case 10: // REMOTE_INDEX_SIZE
          return REMOTE_INDEX_SIZE;
        case 11: // REMOTE_SEGMENT_SIZE
          return REMOTE_SEGMENT_SIZE;
        default:
          return null;
      }
    }

    /**
     * Find the _Fields constant that matches fieldId, throwing an exception
     * if it is not found.
     */
    public static _Fields findByThriftIdOrThrow(int fieldId) {
      _Fields fields = findByThriftId(fieldId);
      if (fields == null) throw new java.lang.IllegalArgumentException("Field " + fieldId + " doesn't exist!");
      return fields;
    }

    /**
     * Find the _Fields constant that matches name, or null if its not found.
     */
    @org.apache.thrift.annotation.Nullable
    public static _Fields findByName(java.lang.String name) {
      return byName.get(name);
    }

    private final short _thriftId;
    private final java.lang.String _fieldName;

    _Fields(short thriftId, java.lang.String fieldName) {
      _thriftId = thriftId;
      _fieldName = fieldName;
    }

    public short getThriftFieldId() {
      return _thriftId;
    }

    public java.lang.String getFieldName() {
      return _fieldName;
    }
  }

  // isset id assignments
  private static final int __TABLET_ID_ISSET_ID = 0;
  private static final int __DATA_SIZE_ISSET_ID = 1;
  private static final int __ROW_COUNT_ISSET_ID = 2;
  private static final int __TOTAL_VERSION_COUNT_ISSET_ID = 3;
  private static final int __REMOTE_DATA_SIZE_ISSET_ID = 4;
  private static final int __VISIBLE_VERSION_COUNT_ISSET_ID = 5;
  private static final int __VISIBLE_VERSION_ISSET_ID = 6;
  private static final int __LOCAL_INDEX_SIZE_ISSET_ID = 7;
  private static final int __LOCAL_SEGMENT_SIZE_ISSET_ID = 8;
  private static final int __REMOTE_INDEX_SIZE_ISSET_ID = 9;
  private static final int __REMOTE_SEGMENT_SIZE_ISSET_ID = 10;
  private short __isset_bitfield = 0;
  private static final _Fields optionals[] = {_Fields.DATA_SIZE,_Fields.ROW_COUNT,_Fields.TOTAL_VERSION_COUNT,_Fields.REMOTE_DATA_SIZE,_Fields.VISIBLE_VERSION_COUNT,_Fields.VISIBLE_VERSION,_Fields.LOCAL_INDEX_SIZE,_Fields.LOCAL_SEGMENT_SIZE,_Fields.REMOTE_INDEX_SIZE,_Fields.REMOTE_SEGMENT_SIZE};
  public static final java.util.Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
  static {
    java.util.Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new java.util.EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
    tmpMap.put(_Fields.TABLET_ID, new org.apache.thrift.meta_data.FieldMetaData("tablet_id", org.apache.thrift.TFieldRequirementType.REQUIRED, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.DATA_SIZE, new org.apache.thrift.meta_data.FieldMetaData("data_size", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.ROW_COUNT, new org.apache.thrift.meta_data.FieldMetaData("row_count", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.TOTAL_VERSION_COUNT, new org.apache.thrift.meta_data.FieldMetaData("total_version_count", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.REMOTE_DATA_SIZE, new org.apache.thrift.meta_data.FieldMetaData("remote_data_size", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.VISIBLE_VERSION_COUNT, new org.apache.thrift.meta_data.FieldMetaData("visible_version_count", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.VISIBLE_VERSION, new org.apache.thrift.meta_data.FieldMetaData("visible_version", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.LOCAL_INDEX_SIZE, new org.apache.thrift.meta_data.FieldMetaData("local_index_size", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.LOCAL_SEGMENT_SIZE, new org.apache.thrift.meta_data.FieldMetaData("local_segment_size", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.REMOTE_INDEX_SIZE, new org.apache.thrift.meta_data.FieldMetaData("remote_index_size", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.REMOTE_SEGMENT_SIZE, new org.apache.thrift.meta_data.FieldMetaData("remote_segment_size", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    metaDataMap = java.util.Collections.unmodifiableMap(tmpMap);
    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TTabletStat.class, metaDataMap);
  }

  public TTabletStat() {
    this.local_index_size = 0L;

    this.local_segment_size = 0L;

    this.remote_index_size = 0L;

    this.remote_segment_size = 0L;

  }

  public TTabletStat(
    long tablet_id)
  {
    this();
    this.tablet_id = tablet_id;
    setTabletIdIsSet(true);
  }

  /**
   * Performs a deep copy on <i>other</i>.
   */
  public TTabletStat(TTabletStat other) {
    __isset_bitfield = other.__isset_bitfield;
    this.tablet_id = other.tablet_id;
    this.data_size = other.data_size;
    this.row_count = other.row_count;
    this.total_version_count = other.total_version_count;
    this.remote_data_size = other.remote_data_size;
    this.visible_version_count = other.visible_version_count;
    this.visible_version = other.visible_version;
    this.local_index_size = other.local_index_size;
    this.local_segment_size = other.local_segment_size;
    this.remote_index_size = other.remote_index_size;
    this.remote_segment_size = other.remote_segment_size;
  }

  public TTabletStat deepCopy() {
    return new TTabletStat(this);
  }

  @Override
  public void clear() {
    setTabletIdIsSet(false);
    this.tablet_id = 0;
    setDataSizeIsSet(false);
    this.data_size = 0;
    setRowCountIsSet(false);
    this.row_count = 0;
    setTotalVersionCountIsSet(false);
    this.total_version_count = 0;
    setRemoteDataSizeIsSet(false);
    this.remote_data_size = 0;
    setVisibleVersionCountIsSet(false);
    this.visible_version_count = 0;
    setVisibleVersionIsSet(false);
    this.visible_version = 0;
    this.local_index_size = 0L;

    this.local_segment_size = 0L;

    this.remote_index_size = 0L;

    this.remote_segment_size = 0L;

  }

  public long getTabletId() {
    return this.tablet_id;
  }

  public TTabletStat setTabletId(long tablet_id) {
    this.tablet_id = tablet_id;
    setTabletIdIsSet(true);
    return this;
  }

  public void unsetTabletId() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __TABLET_ID_ISSET_ID);
  }

  /** Returns true if field tablet_id is set (has been assigned a value) and false otherwise */
  public boolean isSetTabletId() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __TABLET_ID_ISSET_ID);
  }

  public void setTabletIdIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __TABLET_ID_ISSET_ID, value);
  }

  public long getDataSize() {
    return this.data_size;
  }

  public TTabletStat setDataSize(long data_size) {
    this.data_size = data_size;
    setDataSizeIsSet(true);
    return this;
  }

  public void unsetDataSize() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __DATA_SIZE_ISSET_ID);
  }

  /** Returns true if field data_size is set (has been assigned a value) and false otherwise */
  public boolean isSetDataSize() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __DATA_SIZE_ISSET_ID);
  }

  public void setDataSizeIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __DATA_SIZE_ISSET_ID, value);
  }

  public long getRowCount() {
    return this.row_count;
  }

  public TTabletStat setRowCount(long row_count) {
    this.row_count = row_count;
    setRowCountIsSet(true);
    return this;
  }

  public void unsetRowCount() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __ROW_COUNT_ISSET_ID);
  }

  /** Returns true if field row_count is set (has been assigned a value) and false otherwise */
  public boolean isSetRowCount() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __ROW_COUNT_ISSET_ID);
  }

  public void setRowCountIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __ROW_COUNT_ISSET_ID, value);
  }

  public long getTotalVersionCount() {
    return this.total_version_count;
  }

  public TTabletStat setTotalVersionCount(long total_version_count) {
    this.total_version_count = total_version_count;
    setTotalVersionCountIsSet(true);
    return this;
  }

  public void unsetTotalVersionCount() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __TOTAL_VERSION_COUNT_ISSET_ID);
  }

  /** Returns true if field total_version_count is set (has been assigned a value) and false otherwise */
  public boolean isSetTotalVersionCount() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __TOTAL_VERSION_COUNT_ISSET_ID);
  }

  public void setTotalVersionCountIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __TOTAL_VERSION_COUNT_ISSET_ID, value);
  }

  public long getRemoteDataSize() {
    return this.remote_data_size;
  }

  public TTabletStat setRemoteDataSize(long remote_data_size) {
    this.remote_data_size = remote_data_size;
    setRemoteDataSizeIsSet(true);
    return this;
  }

  public void unsetRemoteDataSize() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __REMOTE_DATA_SIZE_ISSET_ID);
  }

  /** Returns true if field remote_data_size is set (has been assigned a value) and false otherwise */
  public boolean isSetRemoteDataSize() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __REMOTE_DATA_SIZE_ISSET_ID);
  }

  public void setRemoteDataSizeIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __REMOTE_DATA_SIZE_ISSET_ID, value);
  }

  public long getVisibleVersionCount() {
    return this.visible_version_count;
  }

  public TTabletStat setVisibleVersionCount(long visible_version_count) {
    this.visible_version_count = visible_version_count;
    setVisibleVersionCountIsSet(true);
    return this;
  }

  public void unsetVisibleVersionCount() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __VISIBLE_VERSION_COUNT_ISSET_ID);
  }

  /** Returns true if field visible_version_count is set (has been assigned a value) and false otherwise */
  public boolean isSetVisibleVersionCount() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __VISIBLE_VERSION_COUNT_ISSET_ID);
  }

  public void setVisibleVersionCountIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __VISIBLE_VERSION_COUNT_ISSET_ID, value);
  }

  public long getVisibleVersion() {
    return this.visible_version;
  }

  public TTabletStat setVisibleVersion(long visible_version) {
    this.visible_version = visible_version;
    setVisibleVersionIsSet(true);
    return this;
  }

  public void unsetVisibleVersion() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __VISIBLE_VERSION_ISSET_ID);
  }

  /** Returns true if field visible_version is set (has been assigned a value) and false otherwise */
  public boolean isSetVisibleVersion() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __VISIBLE_VERSION_ISSET_ID);
  }

  public void setVisibleVersionIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __VISIBLE_VERSION_ISSET_ID, value);
  }

  public long getLocalIndexSize() {
    return this.local_index_size;
  }

  public TTabletStat setLocalIndexSize(long local_index_size) {
    this.local_index_size = local_index_size;
    setLocalIndexSizeIsSet(true);
    return this;
  }

  public void unsetLocalIndexSize() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __LOCAL_INDEX_SIZE_ISSET_ID);
  }

  /** Returns true if field local_index_size is set (has been assigned a value) and false otherwise */
  public boolean isSetLocalIndexSize() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __LOCAL_INDEX_SIZE_ISSET_ID);
  }

  public void setLocalIndexSizeIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __LOCAL_INDEX_SIZE_ISSET_ID, value);
  }

  public long getLocalSegmentSize() {
    return this.local_segment_size;
  }

  public TTabletStat setLocalSegmentSize(long local_segment_size) {
    this.local_segment_size = local_segment_size;
    setLocalSegmentSizeIsSet(true);
    return this;
  }

  public void unsetLocalSegmentSize() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __LOCAL_SEGMENT_SIZE_ISSET_ID);
  }

  /** Returns true if field local_segment_size is set (has been assigned a value) and false otherwise */
  public boolean isSetLocalSegmentSize() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __LOCAL_SEGMENT_SIZE_ISSET_ID);
  }

  public void setLocalSegmentSizeIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __LOCAL_SEGMENT_SIZE_ISSET_ID, value);
  }

  public long getRemoteIndexSize() {
    return this.remote_index_size;
  }

  public TTabletStat setRemoteIndexSize(long remote_index_size) {
    this.remote_index_size = remote_index_size;
    setRemoteIndexSizeIsSet(true);
    return this;
  }

  public void unsetRemoteIndexSize() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __REMOTE_INDEX_SIZE_ISSET_ID);
  }

  /** Returns true if field remote_index_size is set (has been assigned a value) and false otherwise */
  public boolean isSetRemoteIndexSize() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __REMOTE_INDEX_SIZE_ISSET_ID);
  }

  public void setRemoteIndexSizeIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __REMOTE_INDEX_SIZE_ISSET_ID, value);
  }

  public long getRemoteSegmentSize() {
    return this.remote_segment_size;
  }

  public TTabletStat setRemoteSegmentSize(long remote_segment_size) {
    this.remote_segment_size = remote_segment_size;
    setRemoteSegmentSizeIsSet(true);
    return this;
  }

  public void unsetRemoteSegmentSize() {
    __isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __REMOTE_SEGMENT_SIZE_ISSET_ID);
  }

  /** Returns true if field remote_segment_size is set (has been assigned a value) and false otherwise */
  public boolean isSetRemoteSegmentSize() {
    return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __REMOTE_SEGMENT_SIZE_ISSET_ID);
  }

  public void setRemoteSegmentSizeIsSet(boolean value) {
    __isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __REMOTE_SEGMENT_SIZE_ISSET_ID, value);
  }

  public void setFieldValue(_Fields field, @org.apache.thrift.annotation.Nullable java.lang.Object value) {
    switch (field) {
    case TABLET_ID:
      if (value == null) {
        unsetTabletId();
      } else {
        setTabletId((java.lang.Long)value);
      }
      break;

    case DATA_SIZE:
      if (value == null) {
        unsetDataSize();
      } else {
        setDataSize((java.lang.Long)value);
      }
      break;

    case ROW_COUNT:
      if (value == null) {
        unsetRowCount();
      } else {
        setRowCount((java.lang.Long)value);
      }
      break;

    case TOTAL_VERSION_COUNT:
      if (value == null) {
        unsetTotalVersionCount();
      } else {
        setTotalVersionCount((java.lang.Long)value);
      }
      break;

    case REMOTE_DATA_SIZE:
      if (value == null) {
        unsetRemoteDataSize();
      } else {
        setRemoteDataSize((java.lang.Long)value);
      }
      break;

    case VISIBLE_VERSION_COUNT:
      if (value == null) {
        unsetVisibleVersionCount();
      } else {
        setVisibleVersionCount((java.lang.Long)value);
      }
      break;

    case VISIBLE_VERSION:
      if (value == null) {
        unsetVisibleVersion();
      } else {
        setVisibleVersion((java.lang.Long)value);
      }
      break;

    case LOCAL_INDEX_SIZE:
      if (value == null) {
        unsetLocalIndexSize();
      } else {
        setLocalIndexSize((java.lang.Long)value);
      }
      break;

    case LOCAL_SEGMENT_SIZE:
      if (value == null) {
        unsetLocalSegmentSize();
      } else {
        setLocalSegmentSize((java.lang.Long)value);
      }
      break;

    case REMOTE_INDEX_SIZE:
      if (value == null) {
        unsetRemoteIndexSize();
      } else {
        setRemoteIndexSize((java.lang.Long)value);
      }
      break;

    case REMOTE_SEGMENT_SIZE:
      if (value == null) {
        unsetRemoteSegmentSize();
      } else {
        setRemoteSegmentSize((java.lang.Long)value);
      }
      break;

    }
  }

  @org.apache.thrift.annotation.Nullable
  public java.lang.Object getFieldValue(_Fields field) {
    switch (field) {
    case TABLET_ID:
      return getTabletId();

    case DATA_SIZE:
      return getDataSize();

    case ROW_COUNT:
      return getRowCount();

    case TOTAL_VERSION_COUNT:
      return getTotalVersionCount();

    case REMOTE_DATA_SIZE:
      return getRemoteDataSize();

    case VISIBLE_VERSION_COUNT:
      return getVisibleVersionCount();

    case VISIBLE_VERSION:
      return getVisibleVersion();

    case LOCAL_INDEX_SIZE:
      return getLocalIndexSize();

    case LOCAL_SEGMENT_SIZE:
      return getLocalSegmentSize();

    case REMOTE_INDEX_SIZE:
      return getRemoteIndexSize();

    case REMOTE_SEGMENT_SIZE:
      return getRemoteSegmentSize();

    }
    throw new java.lang.IllegalStateException();
  }

  /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
  public boolean isSet(_Fields field) {
    if (field == null) {
      throw new java.lang.IllegalArgumentException();
    }

    switch (field) {
    case TABLET_ID:
      return isSetTabletId();
    case DATA_SIZE:
      return isSetDataSize();
    case ROW_COUNT:
      return isSetRowCount();
    case TOTAL_VERSION_COUNT:
      return isSetTotalVersionCount();
    case REMOTE_DATA_SIZE:
      return isSetRemoteDataSize();
    case VISIBLE_VERSION_COUNT:
      return isSetVisibleVersionCount();
    case VISIBLE_VERSION:
      return isSetVisibleVersion();
    case LOCAL_INDEX_SIZE:
      return isSetLocalIndexSize();
    case LOCAL_SEGMENT_SIZE:
      return isSetLocalSegmentSize();
    case REMOTE_INDEX_SIZE:
      return isSetRemoteIndexSize();
    case REMOTE_SEGMENT_SIZE:
      return isSetRemoteSegmentSize();
    }
    throw new java.lang.IllegalStateException();
  }

  @Override
  public boolean equals(java.lang.Object that) {
    if (that instanceof TTabletStat)
      return this.equals((TTabletStat)that);
    return false;
  }

  public boolean equals(TTabletStat that) {
    if (that == null)
      return false;
    if (this == that)
      return true;

    boolean this_present_tablet_id = true;
    boolean that_present_tablet_id = true;
    if (this_present_tablet_id || that_present_tablet_id) {
      if (!(this_present_tablet_id && that_present_tablet_id))
        return false;
      if (this.tablet_id != that.tablet_id)
        return false;
    }

    boolean this_present_data_size = true && this.isSetDataSize();
    boolean that_present_data_size = true && that.isSetDataSize();
    if (this_present_data_size || that_present_data_size) {
      if (!(this_present_data_size && that_present_data_size))
        return false;
      if (this.data_size != that.data_size)
        return false;
    }

    boolean this_present_row_count = true && this.isSetRowCount();
    boolean that_present_row_count = true && that.isSetRowCount();
    if (this_present_row_count || that_present_row_count) {
      if (!(this_present_row_count && that_present_row_count))
        return false;
      if (this.row_count != that.row_count)
        return false;
    }

    boolean this_present_total_version_count = true && this.isSetTotalVersionCount();
    boolean that_present_total_version_count = true && that.isSetTotalVersionCount();
    if (this_present_total_version_count || that_present_total_version_count) {
      if (!(this_present_total_version_count && that_present_total_version_count))
        return false;
      if (this.total_version_count != that.total_version_count)
        return false;
    }

    boolean this_present_remote_data_size = true && this.isSetRemoteDataSize();
    boolean that_present_remote_data_size = true && that.isSetRemoteDataSize();
    if (this_present_remote_data_size || that_present_remote_data_size) {
      if (!(this_present_remote_data_size && that_present_remote_data_size))
        return false;
      if (this.remote_data_size != that.remote_data_size)
        return false;
    }

    boolean this_present_visible_version_count = true && this.isSetVisibleVersionCount();
    boolean that_present_visible_version_count = true && that.isSetVisibleVersionCount();
    if (this_present_visible_version_count || that_present_visible_version_count) {
      if (!(this_present_visible_version_count && that_present_visible_version_count))
        return false;
      if (this.visible_version_count != that.visible_version_count)
        return false;
    }

    boolean this_present_visible_version = true && this.isSetVisibleVersion();
    boolean that_present_visible_version = true && that.isSetVisibleVersion();
    if (this_present_visible_version || that_present_visible_version) {
      if (!(this_present_visible_version && that_present_visible_version))
        return false;
      if (this.visible_version != that.visible_version)
        return false;
    }

    boolean this_present_local_index_size = true && this.isSetLocalIndexSize();
    boolean that_present_local_index_size = true && that.isSetLocalIndexSize();
    if (this_present_local_index_size || that_present_local_index_size) {
      if (!(this_present_local_index_size && that_present_local_index_size))
        return false;
      if (this.local_index_size != that.local_index_size)
        return false;
    }

    boolean this_present_local_segment_size = true && this.isSetLocalSegmentSize();
    boolean that_present_local_segment_size = true && that.isSetLocalSegmentSize();
    if (this_present_local_segment_size || that_present_local_segment_size) {
      if (!(this_present_local_segment_size && that_present_local_segment_size))
        return false;
      if (this.local_segment_size != that.local_segment_size)
        return false;
    }

    boolean this_present_remote_index_size = true && this.isSetRemoteIndexSize();
    boolean that_present_remote_index_size = true && that.isSetRemoteIndexSize();
    if (this_present_remote_index_size || that_present_remote_index_size) {
      if (!(this_present_remote_index_size && that_present_remote_index_size))
        return false;
      if (this.remote_index_size != that.remote_index_size)
        return false;
    }

    boolean this_present_remote_segment_size = true && this.isSetRemoteSegmentSize();
    boolean that_present_remote_segment_size = true && that.isSetRemoteSegmentSize();
    if (this_present_remote_segment_size || that_present_remote_segment_size) {
      if (!(this_present_remote_segment_size && that_present_remote_segment_size))
        return false;
      if (this.remote_segment_size != that.remote_segment_size)
        return false;
    }

    return true;
  }

  @Override
  public int hashCode() {
    int hashCode = 1;

    hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(tablet_id);

    hashCode = hashCode * 8191 + ((isSetDataSize()) ? 131071 : 524287);
    if (isSetDataSize())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(data_size);

    hashCode = hashCode * 8191 + ((isSetRowCount()) ? 131071 : 524287);
    if (isSetRowCount())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(row_count);

    hashCode = hashCode * 8191 + ((isSetTotalVersionCount()) ? 131071 : 524287);
    if (isSetTotalVersionCount())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(total_version_count);

    hashCode = hashCode * 8191 + ((isSetRemoteDataSize()) ? 131071 : 524287);
    if (isSetRemoteDataSize())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(remote_data_size);

    hashCode = hashCode * 8191 + ((isSetVisibleVersionCount()) ? 131071 : 524287);
    if (isSetVisibleVersionCount())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(visible_version_count);

    hashCode = hashCode * 8191 + ((isSetVisibleVersion()) ? 131071 : 524287);
    if (isSetVisibleVersion())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(visible_version);

    hashCode = hashCode * 8191 + ((isSetLocalIndexSize()) ? 131071 : 524287);
    if (isSetLocalIndexSize())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(local_index_size);

    hashCode = hashCode * 8191 + ((isSetLocalSegmentSize()) ? 131071 : 524287);
    if (isSetLocalSegmentSize())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(local_segment_size);

    hashCode = hashCode * 8191 + ((isSetRemoteIndexSize()) ? 131071 : 524287);
    if (isSetRemoteIndexSize())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(remote_index_size);

    hashCode = hashCode * 8191 + ((isSetRemoteSegmentSize()) ? 131071 : 524287);
    if (isSetRemoteSegmentSize())
      hashCode = hashCode * 8191 + org.apache.thrift.TBaseHelper.hashCode(remote_segment_size);

    return hashCode;
  }

  @Override
  public int compareTo(TTabletStat other) {
    if (!getClass().equals(other.getClass())) {
      return getClass().getName().compareTo(other.getClass().getName());
    }

    int lastComparison = 0;

    lastComparison = java.lang.Boolean.compare(isSetTabletId(), other.isSetTabletId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetTabletId()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tablet_id, other.tablet_id);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetDataSize(), other.isSetDataSize());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetDataSize()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.data_size, other.data_size);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetRowCount(), other.isSetRowCount());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetRowCount()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row_count, other.row_count);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetTotalVersionCount(), other.isSetTotalVersionCount());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetTotalVersionCount()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.total_version_count, other.total_version_count);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetRemoteDataSize(), other.isSetRemoteDataSize());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetRemoteDataSize()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.remote_data_size, other.remote_data_size);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetVisibleVersionCount(), other.isSetVisibleVersionCount());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetVisibleVersionCount()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.visible_version_count, other.visible_version_count);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetVisibleVersion(), other.isSetVisibleVersion());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetVisibleVersion()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.visible_version, other.visible_version);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetLocalIndexSize(), other.isSetLocalIndexSize());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetLocalIndexSize()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.local_index_size, other.local_index_size);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetLocalSegmentSize(), other.isSetLocalSegmentSize());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetLocalSegmentSize()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.local_segment_size, other.local_segment_size);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetRemoteIndexSize(), other.isSetRemoteIndexSize());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetRemoteIndexSize()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.remote_index_size, other.remote_index_size);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = java.lang.Boolean.compare(isSetRemoteSegmentSize(), other.isSetRemoteSegmentSize());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetRemoteSegmentSize()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.remote_segment_size, other.remote_segment_size);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    return 0;
  }

  @org.apache.thrift.annotation.Nullable
  public _Fields fieldForId(int fieldId) {
    return _Fields.findByThriftId(fieldId);
  }

  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
    scheme(iprot).read(iprot, this);
  }

  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
    scheme(oprot).write(oprot, this);
  }

  @Override
  public java.lang.String toString() {
    java.lang.StringBuilder sb = new java.lang.StringBuilder("TTabletStat(");
    boolean first = true;

    sb.append("tablet_id:");
    sb.append(this.tablet_id);
    first = false;
    if (isSetDataSize()) {
      if (!first) sb.append(", ");
      sb.append("data_size:");
      sb.append(this.data_size);
      first = false;
    }
    if (isSetRowCount()) {
      if (!first) sb.append(", ");
      sb.append("row_count:");
      sb.append(this.row_count);
      first = false;
    }
    if (isSetTotalVersionCount()) {
      if (!first) sb.append(", ");
      sb.append("total_version_count:");
      sb.append(this.total_version_count);
      first = false;
    }
    if (isSetRemoteDataSize()) {
      if (!first) sb.append(", ");
      sb.append("remote_data_size:");
      sb.append(this.remote_data_size);
      first = false;
    }
    if (isSetVisibleVersionCount()) {
      if (!first) sb.append(", ");
      sb.append("visible_version_count:");
      sb.append(this.visible_version_count);
      first = false;
    }
    if (isSetVisibleVersion()) {
      if (!first) sb.append(", ");
      sb.append("visible_version:");
      sb.append(this.visible_version);
      first = false;
    }
    if (isSetLocalIndexSize()) {
      if (!first) sb.append(", ");
      sb.append("local_index_size:");
      sb.append(this.local_index_size);
      first = false;
    }
    if (isSetLocalSegmentSize()) {
      if (!first) sb.append(", ");
      sb.append("local_segment_size:");
      sb.append(this.local_segment_size);
      first = false;
    }
    if (isSetRemoteIndexSize()) {
      if (!first) sb.append(", ");
      sb.append("remote_index_size:");
      sb.append(this.remote_index_size);
      first = false;
    }
    if (isSetRemoteSegmentSize()) {
      if (!first) sb.append(", ");
      sb.append("remote_segment_size:");
      sb.append(this.remote_segment_size);
      first = false;
    }
    sb.append(")");
    return sb.toString();
  }

  public void validate() throws org.apache.thrift.TException {
    // check for required fields
    // alas, we cannot check 'tablet_id' because it's a primitive and you chose the non-beans generator.
    // check for sub-struct validity
  }

  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
    try {
      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
    } catch (org.apache.thrift.TException te) {
      throw new java.io.IOException(te);
    }
  }

  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, java.lang.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);
    }
  }

  private static class TTabletStatStandardSchemeFactory implements org.apache.thrift.scheme.SchemeFactory {
    public TTabletStatStandardScheme getScheme() {
      return new TTabletStatStandardScheme();
    }
  }

  private static class TTabletStatStandardScheme extends org.apache.thrift.scheme.StandardScheme<TTabletStat> {

    public void read(org.apache.thrift.protocol.TProtocol iprot, TTabletStat struct) throws org.apache.thrift.TException {
      org.apache.thrift.protocol.TField schemeField;
      iprot.readStructBegin();
      while (true)
      {
        schemeField = iprot.readFieldBegin();
        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
          break;
        }
        switch (schemeField.id) {
          case 1: // TABLET_ID
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.tablet_id = iprot.readI64();
              struct.setTabletIdIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 2: // DATA_SIZE
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.data_size = iprot.readI64();
              struct.setDataSizeIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 3: // ROW_COUNT
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.row_count = iprot.readI64();
              struct.setRowCountIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 4: // TOTAL_VERSION_COUNT
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.total_version_count = iprot.readI64();
              struct.setTotalVersionCountIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 5: // REMOTE_DATA_SIZE
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.remote_data_size = iprot.readI64();
              struct.setRemoteDataSizeIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 6: // VISIBLE_VERSION_COUNT
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.visible_version_count = iprot.readI64();
              struct.setVisibleVersionCountIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 7: // VISIBLE_VERSION
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.visible_version = iprot.readI64();
              struct.setVisibleVersionIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 8: // LOCAL_INDEX_SIZE
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.local_index_size = iprot.readI64();
              struct.setLocalIndexSizeIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 9: // LOCAL_SEGMENT_SIZE
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.local_segment_size = iprot.readI64();
              struct.setLocalSegmentSizeIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 10: // REMOTE_INDEX_SIZE
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.remote_index_size = iprot.readI64();
              struct.setRemoteIndexSizeIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 11: // REMOTE_SEGMENT_SIZE
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.remote_segment_size = iprot.readI64();
              struct.setRemoteSegmentSizeIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          default:
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
        }
        iprot.readFieldEnd();
      }
      iprot.readStructEnd();

      // check for required fields of primitive type, which can't be checked in the validate method
      if (!struct.isSetTabletId()) {
        throw new org.apache.thrift.protocol.TProtocolException("Required field 'tablet_id' was not found in serialized data! Struct: " + toString());
      }
      struct.validate();
    }

    public void write(org.apache.thrift.protocol.TProtocol oprot, TTabletStat struct) throws org.apache.thrift.TException {
      struct.validate();

      oprot.writeStructBegin(STRUCT_DESC);
      oprot.writeFieldBegin(TABLET_ID_FIELD_DESC);
      oprot.writeI64(struct.tablet_id);
      oprot.writeFieldEnd();
      if (struct.isSetDataSize()) {
        oprot.writeFieldBegin(DATA_SIZE_FIELD_DESC);
        oprot.writeI64(struct.data_size);
        oprot.writeFieldEnd();
      }
      if (struct.isSetRowCount()) {
        oprot.writeFieldBegin(ROW_COUNT_FIELD_DESC);
        oprot.writeI64(struct.row_count);
        oprot.writeFieldEnd();
      }
      if (struct.isSetTotalVersionCount()) {
        oprot.writeFieldBegin(TOTAL_VERSION_COUNT_FIELD_DESC);
        oprot.writeI64(struct.total_version_count);
        oprot.writeFieldEnd();
      }
      if (struct.isSetRemoteDataSize()) {
        oprot.writeFieldBegin(REMOTE_DATA_SIZE_FIELD_DESC);
        oprot.writeI64(struct.remote_data_size);
        oprot.writeFieldEnd();
      }
      if (struct.isSetVisibleVersionCount()) {
        oprot.writeFieldBegin(VISIBLE_VERSION_COUNT_FIELD_DESC);
        oprot.writeI64(struct.visible_version_count);
        oprot.writeFieldEnd();
      }
      if (struct.isSetVisibleVersion()) {
        oprot.writeFieldBegin(VISIBLE_VERSION_FIELD_DESC);
        oprot.writeI64(struct.visible_version);
        oprot.writeFieldEnd();
      }
      if (struct.isSetLocalIndexSize()) {
        oprot.writeFieldBegin(LOCAL_INDEX_SIZE_FIELD_DESC);
        oprot.writeI64(struct.local_index_size);
        oprot.writeFieldEnd();
      }
      if (struct.isSetLocalSegmentSize()) {
        oprot.writeFieldBegin(LOCAL_SEGMENT_SIZE_FIELD_DESC);
        oprot.writeI64(struct.local_segment_size);
        oprot.writeFieldEnd();
      }
      if (struct.isSetRemoteIndexSize()) {
        oprot.writeFieldBegin(REMOTE_INDEX_SIZE_FIELD_DESC);
        oprot.writeI64(struct.remote_index_size);
        oprot.writeFieldEnd();
      }
      if (struct.isSetRemoteSegmentSize()) {
        oprot.writeFieldBegin(REMOTE_SEGMENT_SIZE_FIELD_DESC);
        oprot.writeI64(struct.remote_segment_size);
        oprot.writeFieldEnd();
      }
      oprot.writeFieldStop();
      oprot.writeStructEnd();
    }

  }

  private static class TTabletStatTupleSchemeFactory implements org.apache.thrift.scheme.SchemeFactory {
    public TTabletStatTupleScheme getScheme() {
      return new TTabletStatTupleScheme();
    }
  }

  private static class TTabletStatTupleScheme extends org.apache.thrift.scheme.TupleScheme<TTabletStat> {

    @Override
    public void write(org.apache.thrift.protocol.TProtocol prot, TTabletStat struct) throws org.apache.thrift.TException {
      org.apache.thrift.protocol.TTupleProtocol oprot = (org.apache.thrift.protocol.TTupleProtocol) prot;
      oprot.writeI64(struct.tablet_id);
      java.util.BitSet optionals = new java.util.BitSet();
      if (struct.isSetDataSize()) {
        optionals.set(0);
      }
      if (struct.isSetRowCount()) {
        optionals.set(1);
      }
      if (struct.isSetTotalVersionCount()) {
        optionals.set(2);
      }
      if (struct.isSetRemoteDataSize()) {
        optionals.set(3);
      }
      if (struct.isSetVisibleVersionCount()) {
        optionals.set(4);
      }
      if (struct.isSetVisibleVersion()) {
        optionals.set(5);
      }
      if (struct.isSetLocalIndexSize()) {
        optionals.set(6);
      }
      if (struct.isSetLocalSegmentSize()) {
        optionals.set(7);
      }
      if (struct.isSetRemoteIndexSize()) {
        optionals.set(8);
      }
      if (struct.isSetRemoteSegmentSize()) {
        optionals.set(9);
      }
      oprot.writeBitSet(optionals, 10);
      if (struct.isSetDataSize()) {
        oprot.writeI64(struct.data_size);
      }
      if (struct.isSetRowCount()) {
        oprot.writeI64(struct.row_count);
      }
      if (struct.isSetTotalVersionCount()) {
        oprot.writeI64(struct.total_version_count);
      }
      if (struct.isSetRemoteDataSize()) {
        oprot.writeI64(struct.remote_data_size);
      }
      if (struct.isSetVisibleVersionCount()) {
        oprot.writeI64(struct.visible_version_count);
      }
      if (struct.isSetVisibleVersion()) {
        oprot.writeI64(struct.visible_version);
      }
      if (struct.isSetLocalIndexSize()) {
        oprot.writeI64(struct.local_index_size);
      }
      if (struct.isSetLocalSegmentSize()) {
        oprot.writeI64(struct.local_segment_size);
      }
      if (struct.isSetRemoteIndexSize()) {
        oprot.writeI64(struct.remote_index_size);
      }
      if (struct.isSetRemoteSegmentSize()) {
        oprot.writeI64(struct.remote_segment_size);
      }
    }

    @Override
    public void read(org.apache.thrift.protocol.TProtocol prot, TTabletStat struct) throws org.apache.thrift.TException {
      org.apache.thrift.protocol.TTupleProtocol iprot = (org.apache.thrift.protocol.TTupleProtocol) prot;
      struct.tablet_id = iprot.readI64();
      struct.setTabletIdIsSet(true);
      java.util.BitSet incoming = iprot.readBitSet(10);
      if (incoming.get(0)) {
        struct.data_size = iprot.readI64();
        struct.setDataSizeIsSet(true);
      }
      if (incoming.get(1)) {
        struct.row_count = iprot.readI64();
        struct.setRowCountIsSet(true);
      }
      if (incoming.get(2)) {
        struct.total_version_count = iprot.readI64();
        struct.setTotalVersionCountIsSet(true);
      }
      if (incoming.get(3)) {
        struct.remote_data_size = iprot.readI64();
        struct.setRemoteDataSizeIsSet(true);
      }
      if (incoming.get(4)) {
        struct.visible_version_count = iprot.readI64();
        struct.setVisibleVersionCountIsSet(true);
      }
      if (incoming.get(5)) {
        struct.visible_version = iprot.readI64();
        struct.setVisibleVersionIsSet(true);
      }
      if (incoming.get(6)) {
        struct.local_index_size = iprot.readI64();
        struct.setLocalIndexSizeIsSet(true);
      }
      if (incoming.get(7)) {
        struct.local_segment_size = iprot.readI64();
        struct.setLocalSegmentSizeIsSet(true);
      }
      if (incoming.get(8)) {
        struct.remote_index_size = iprot.readI64();
        struct.setRemoteIndexSizeIsSet(true);
      }
      if (incoming.get(9)) {
        struct.remote_segment_size = iprot.readI64();
        struct.setRemoteSegmentSizeIsSet(true);
      }
    }
  }

  private static <S extends org.apache.thrift.scheme.IScheme> S scheme(org.apache.thrift.protocol.TProtocol proto) {
    return (org.apache.thrift.scheme.StandardScheme.class.equals(proto.getScheme()) ? STANDARD_SCHEME_FACTORY : TUPLE_SCHEME_FACTORY).getScheme();
  }
}