All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cz.proto.HashJoinStats Maven / Gradle / Ivy

There is a newer version: 2.0.0
Show newest version
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: operator.proto

package cz.proto;

/**
 * Protobuf type {@code cz.proto.HashJoinStats}
 */
public final class HashJoinStats extends
    com.google.protobuf.GeneratedMessageV3 implements
    // @@protoc_insertion_point(message_implements:cz.proto.HashJoinStats)
    HashJoinStatsOrBuilder {
private static final long serialVersionUID = 0L;
  // Use HashJoinStats.newBuilder() to construct.
  private HashJoinStats(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    super(builder);
  }
  private HashJoinStats() {
  }

  @java.lang.Override
  @SuppressWarnings({"unused"})
  protected java.lang.Object newInstance(
      UnusedPrivateParameter unused) {
    return new HashJoinStats();
  }

  @java.lang.Override
  public final com.google.protobuf.UnknownFieldSet
  getUnknownFields() {
    return this.unknownFields;
  }
  private HashJoinStats(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    this();
    if (extensionRegistry == null) {
      throw new java.lang.NullPointerException();
    }
    com.google.protobuf.UnknownFieldSet.Builder unknownFields =
        com.google.protobuf.UnknownFieldSet.newBuilder();
    try {
      boolean done = false;
      while (!done) {
        int tag = input.readTag();
        switch (tag) {
          case 0:
            done = true;
            break;
          case 10: {
            cz.proto.Timing.Builder subBuilder = null;
            if (buildTiming_ != null) {
              subBuilder = buildTiming_.toBuilder();
            }
            buildTiming_ = input.readMessage(cz.proto.Timing.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(buildTiming_);
              buildTiming_ = subBuilder.buildPartial();
            }

            break;
          }
          case 18: {
            cz.proto.Timing.Builder subBuilder = null;
            if (finishBuildTiming_ != null) {
              subBuilder = finishBuildTiming_.toBuilder();
            }
            finishBuildTiming_ = input.readMessage(cz.proto.Timing.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(finishBuildTiming_);
              finishBuildTiming_ = subBuilder.buildPartial();
            }

            break;
          }
          case 26: {
            cz.proto.Timing.Builder subBuilder = null;
            if (probeTiming_ != null) {
              subBuilder = probeTiming_.toBuilder();
            }
            probeTiming_ = input.readMessage(cz.proto.Timing.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(probeTiming_);
              probeTiming_ = subBuilder.buildPartial();
            }

            break;
          }
          case 34: {
            cz.proto.Timing.Builder subBuilder = null;
            if (postProbeTiming_ != null) {
              subBuilder = postProbeTiming_.toBuilder();
            }
            postProbeTiming_ = input.readMessage(cz.proto.Timing.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(postProbeTiming_);
              postProbeTiming_ = subBuilder.buildPartial();
            }

            break;
          }
          case 42: {
            cz.proto.HashTableStats.Builder subBuilder = null;
            if (htStats_ != null) {
              subBuilder = htStats_.toBuilder();
            }
            htStats_ = input.readMessage(cz.proto.HashTableStats.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(htStats_);
              htStats_ = subBuilder.buildPartial();
            }

            break;
          }
          case 48: {

            numBuildRows_ = input.readUInt64();
            break;
          }
          case 56: {

            numDistinctBuildRows_ = input.readUInt64();
            break;
          }
          case 64: {

            maxEqualBuildRows_ = input.readUInt64();
            break;
          }
          case 74: {
            cz.proto.SpillStats.Builder subBuilder = null;
            if (buildSpillStats_ != null) {
              subBuilder = buildSpillStats_.toBuilder();
            }
            buildSpillStats_ = input.readMessage(cz.proto.SpillStats.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(buildSpillStats_);
              buildSpillStats_ = subBuilder.buildPartial();
            }

            break;
          }
          case 82: {
            cz.proto.SpillStats.Builder subBuilder = null;
            if (probeSpillStats_ != null) {
              subBuilder = probeSpillStats_.toBuilder();
            }
            probeSpillStats_ = input.readMessage(cz.proto.SpillStats.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(probeSpillStats_);
              probeSpillStats_ = subBuilder.buildPartial();
            }

            break;
          }
          case 90: {
            cz.proto.Timing.Builder subBuilder = null;
            if (probeFindHtTiming_ != null) {
              subBuilder = probeFindHtTiming_.toBuilder();
            }
            probeFindHtTiming_ = input.readMessage(cz.proto.Timing.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(probeFindHtTiming_);
              probeFindHtTiming_ = subBuilder.buildPartial();
            }

            break;
          }
          case 98: {
            cz.proto.Timing.Builder subBuilder = null;
            if (probeOutputTiming_ != null) {
              subBuilder = probeOutputTiming_.toBuilder();
            }
            probeOutputTiming_ = input.readMessage(cz.proto.Timing.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(probeOutputTiming_);
              probeOutputTiming_ = subBuilder.buildPartial();
            }

            break;
          }
          case 106: {
            cz.proto.Timing.Builder subBuilder = null;
            if (probeEvalConjunctTiming_ != null) {
              subBuilder = probeEvalConjunctTiming_.toBuilder();
            }
            probeEvalConjunctTiming_ = input.readMessage(cz.proto.Timing.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(probeEvalConjunctTiming_);
              probeEvalConjunctTiming_ = subBuilder.buildPartial();
            }

            break;
          }
          case 114: {
            cz.proto.Timing.Builder subBuilder = null;
            if (probeOutputConjunctTiming_ != null) {
              subBuilder = probeOutputConjunctTiming_.toBuilder();
            }
            probeOutputConjunctTiming_ = input.readMessage(cz.proto.Timing.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(probeOutputConjunctTiming_);
              probeOutputConjunctTiming_ = subBuilder.buildPartial();
            }

            break;
          }
          case 120: {

            numNullRows_ = input.readUInt64();
            break;
          }
          default: {
            if (!parseUnknownField(
                input, unknownFields, extensionRegistry, tag)) {
              done = true;
            }
            break;
          }
        }
      }
    } catch (com.google.protobuf.InvalidProtocolBufferException e) {
      throw e.setUnfinishedMessage(this);
    } catch (java.io.IOException e) {
      throw new com.google.protobuf.InvalidProtocolBufferException(
          e).setUnfinishedMessage(this);
    } finally {
      this.unknownFields = unknownFields.build();
      makeExtensionsImmutable();
    }
  }
  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return cz.proto.OperatorProto.internal_static_cz_proto_HashJoinStats_descriptor;
  }

  @java.lang.Override
  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return cz.proto.OperatorProto.internal_static_cz_proto_HashJoinStats_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            cz.proto.HashJoinStats.class, cz.proto.HashJoinStats.Builder.class);
  }

  public static final int BUILD_TIMING_FIELD_NUMBER = 1;
  private cz.proto.Timing buildTiming_;
  /**
   * .cz.proto.Timing build_timing = 1;
   * @return Whether the buildTiming field is set.
   */
  @java.lang.Override
  public boolean hasBuildTiming() {
    return buildTiming_ != null;
  }
  /**
   * .cz.proto.Timing build_timing = 1;
   * @return The buildTiming.
   */
  @java.lang.Override
  public cz.proto.Timing getBuildTiming() {
    return buildTiming_ == null ? cz.proto.Timing.getDefaultInstance() : buildTiming_;
  }
  /**
   * .cz.proto.Timing build_timing = 1;
   */
  @java.lang.Override
  public cz.proto.TimingOrBuilder getBuildTimingOrBuilder() {
    return getBuildTiming();
  }

  public static final int FINISH_BUILD_TIMING_FIELD_NUMBER = 2;
  private cz.proto.Timing finishBuildTiming_;
  /**
   * .cz.proto.Timing finish_build_timing = 2;
   * @return Whether the finishBuildTiming field is set.
   */
  @java.lang.Override
  public boolean hasFinishBuildTiming() {
    return finishBuildTiming_ != null;
  }
  /**
   * .cz.proto.Timing finish_build_timing = 2;
   * @return The finishBuildTiming.
   */
  @java.lang.Override
  public cz.proto.Timing getFinishBuildTiming() {
    return finishBuildTiming_ == null ? cz.proto.Timing.getDefaultInstance() : finishBuildTiming_;
  }
  /**
   * .cz.proto.Timing finish_build_timing = 2;
   */
  @java.lang.Override
  public cz.proto.TimingOrBuilder getFinishBuildTimingOrBuilder() {
    return getFinishBuildTiming();
  }

  public static final int PROBE_TIMING_FIELD_NUMBER = 3;
  private cz.proto.Timing probeTiming_;
  /**
   * .cz.proto.Timing probe_timing = 3;
   * @return Whether the probeTiming field is set.
   */
  @java.lang.Override
  public boolean hasProbeTiming() {
    return probeTiming_ != null;
  }
  /**
   * .cz.proto.Timing probe_timing = 3;
   * @return The probeTiming.
   */
  @java.lang.Override
  public cz.proto.Timing getProbeTiming() {
    return probeTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeTiming_;
  }
  /**
   * .cz.proto.Timing probe_timing = 3;
   */
  @java.lang.Override
  public cz.proto.TimingOrBuilder getProbeTimingOrBuilder() {
    return getProbeTiming();
  }

  public static final int POST_PROBE_TIMING_FIELD_NUMBER = 4;
  private cz.proto.Timing postProbeTiming_;
  /**
   * .cz.proto.Timing post_probe_timing = 4;
   * @return Whether the postProbeTiming field is set.
   */
  @java.lang.Override
  public boolean hasPostProbeTiming() {
    return postProbeTiming_ != null;
  }
  /**
   * .cz.proto.Timing post_probe_timing = 4;
   * @return The postProbeTiming.
   */
  @java.lang.Override
  public cz.proto.Timing getPostProbeTiming() {
    return postProbeTiming_ == null ? cz.proto.Timing.getDefaultInstance() : postProbeTiming_;
  }
  /**
   * .cz.proto.Timing post_probe_timing = 4;
   */
  @java.lang.Override
  public cz.proto.TimingOrBuilder getPostProbeTimingOrBuilder() {
    return getPostProbeTiming();
  }

  public static final int HT_STATS_FIELD_NUMBER = 5;
  private cz.proto.HashTableStats htStats_;
  /**
   * .cz.proto.HashTableStats ht_stats = 5;
   * @return Whether the htStats field is set.
   */
  @java.lang.Override
  public boolean hasHtStats() {
    return htStats_ != null;
  }
  /**
   * .cz.proto.HashTableStats ht_stats = 5;
   * @return The htStats.
   */
  @java.lang.Override
  public cz.proto.HashTableStats getHtStats() {
    return htStats_ == null ? cz.proto.HashTableStats.getDefaultInstance() : htStats_;
  }
  /**
   * .cz.proto.HashTableStats ht_stats = 5;
   */
  @java.lang.Override
  public cz.proto.HashTableStatsOrBuilder getHtStatsOrBuilder() {
    return getHtStats();
  }

  public static final int NUM_BUILD_ROWS_FIELD_NUMBER = 6;
  private long numBuildRows_;
  /**
   * uint64 num_build_rows = 6;
   * @return The numBuildRows.
   */
  @java.lang.Override
  public long getNumBuildRows() {
    return numBuildRows_;
  }

  public static final int NUM_DISTINCT_BUILD_ROWS_FIELD_NUMBER = 7;
  private long numDistinctBuildRows_;
  /**
   * uint64 num_distinct_build_rows = 7;
   * @return The numDistinctBuildRows.
   */
  @java.lang.Override
  public long getNumDistinctBuildRows() {
    return numDistinctBuildRows_;
  }

  public static final int MAX_EQUAL_BUILD_ROWS_FIELD_NUMBER = 8;
  private long maxEqualBuildRows_;
  /**
   * uint64 max_equal_build_rows = 8;
   * @return The maxEqualBuildRows.
   */
  @java.lang.Override
  public long getMaxEqualBuildRows() {
    return maxEqualBuildRows_;
  }

  public static final int BUILD_SPILL_STATS_FIELD_NUMBER = 9;
  private cz.proto.SpillStats buildSpillStats_;
  /**
   * .cz.proto.SpillStats build_spill_stats = 9;
   * @return Whether the buildSpillStats field is set.
   */
  @java.lang.Override
  public boolean hasBuildSpillStats() {
    return buildSpillStats_ != null;
  }
  /**
   * .cz.proto.SpillStats build_spill_stats = 9;
   * @return The buildSpillStats.
   */
  @java.lang.Override
  public cz.proto.SpillStats getBuildSpillStats() {
    return buildSpillStats_ == null ? cz.proto.SpillStats.getDefaultInstance() : buildSpillStats_;
  }
  /**
   * .cz.proto.SpillStats build_spill_stats = 9;
   */
  @java.lang.Override
  public cz.proto.SpillStatsOrBuilder getBuildSpillStatsOrBuilder() {
    return getBuildSpillStats();
  }

  public static final int PROBE_SPILL_STATS_FIELD_NUMBER = 10;
  private cz.proto.SpillStats probeSpillStats_;
  /**
   * .cz.proto.SpillStats probe_spill_stats = 10;
   * @return Whether the probeSpillStats field is set.
   */
  @java.lang.Override
  public boolean hasProbeSpillStats() {
    return probeSpillStats_ != null;
  }
  /**
   * .cz.proto.SpillStats probe_spill_stats = 10;
   * @return The probeSpillStats.
   */
  @java.lang.Override
  public cz.proto.SpillStats getProbeSpillStats() {
    return probeSpillStats_ == null ? cz.proto.SpillStats.getDefaultInstance() : probeSpillStats_;
  }
  /**
   * .cz.proto.SpillStats probe_spill_stats = 10;
   */
  @java.lang.Override
  public cz.proto.SpillStatsOrBuilder getProbeSpillStatsOrBuilder() {
    return getProbeSpillStats();
  }

  public static final int PROBE_FIND_HT_TIMING_FIELD_NUMBER = 11;
  private cz.proto.Timing probeFindHtTiming_;
  /**
   * .cz.proto.Timing probe_find_ht_timing = 11;
   * @return Whether the probeFindHtTiming field is set.
   */
  @java.lang.Override
  public boolean hasProbeFindHtTiming() {
    return probeFindHtTiming_ != null;
  }
  /**
   * .cz.proto.Timing probe_find_ht_timing = 11;
   * @return The probeFindHtTiming.
   */
  @java.lang.Override
  public cz.proto.Timing getProbeFindHtTiming() {
    return probeFindHtTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeFindHtTiming_;
  }
  /**
   * .cz.proto.Timing probe_find_ht_timing = 11;
   */
  @java.lang.Override
  public cz.proto.TimingOrBuilder getProbeFindHtTimingOrBuilder() {
    return getProbeFindHtTiming();
  }

  public static final int PROBE_OUTPUT_TIMING_FIELD_NUMBER = 12;
  private cz.proto.Timing probeOutputTiming_;
  /**
   * .cz.proto.Timing probe_output_timing = 12;
   * @return Whether the probeOutputTiming field is set.
   */
  @java.lang.Override
  public boolean hasProbeOutputTiming() {
    return probeOutputTiming_ != null;
  }
  /**
   * .cz.proto.Timing probe_output_timing = 12;
   * @return The probeOutputTiming.
   */
  @java.lang.Override
  public cz.proto.Timing getProbeOutputTiming() {
    return probeOutputTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeOutputTiming_;
  }
  /**
   * .cz.proto.Timing probe_output_timing = 12;
   */
  @java.lang.Override
  public cz.proto.TimingOrBuilder getProbeOutputTimingOrBuilder() {
    return getProbeOutputTiming();
  }

  public static final int PROBE_EVAL_CONJUNCT_TIMING_FIELD_NUMBER = 13;
  private cz.proto.Timing probeEvalConjunctTiming_;
  /**
   * .cz.proto.Timing probe_eval_conjunct_timing = 13;
   * @return Whether the probeEvalConjunctTiming field is set.
   */
  @java.lang.Override
  public boolean hasProbeEvalConjunctTiming() {
    return probeEvalConjunctTiming_ != null;
  }
  /**
   * .cz.proto.Timing probe_eval_conjunct_timing = 13;
   * @return The probeEvalConjunctTiming.
   */
  @java.lang.Override
  public cz.proto.Timing getProbeEvalConjunctTiming() {
    return probeEvalConjunctTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeEvalConjunctTiming_;
  }
  /**
   * .cz.proto.Timing probe_eval_conjunct_timing = 13;
   */
  @java.lang.Override
  public cz.proto.TimingOrBuilder getProbeEvalConjunctTimingOrBuilder() {
    return getProbeEvalConjunctTiming();
  }

  public static final int PROBE_OUTPUT_CONJUNCT_TIMING_FIELD_NUMBER = 14;
  private cz.proto.Timing probeOutputConjunctTiming_;
  /**
   * .cz.proto.Timing probe_output_conjunct_timing = 14;
   * @return Whether the probeOutputConjunctTiming field is set.
   */
  @java.lang.Override
  public boolean hasProbeOutputConjunctTiming() {
    return probeOutputConjunctTiming_ != null;
  }
  /**
   * .cz.proto.Timing probe_output_conjunct_timing = 14;
   * @return The probeOutputConjunctTiming.
   */
  @java.lang.Override
  public cz.proto.Timing getProbeOutputConjunctTiming() {
    return probeOutputConjunctTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeOutputConjunctTiming_;
  }
  /**
   * .cz.proto.Timing probe_output_conjunct_timing = 14;
   */
  @java.lang.Override
  public cz.proto.TimingOrBuilder getProbeOutputConjunctTimingOrBuilder() {
    return getProbeOutputConjunctTiming();
  }

  public static final int NUM_NULL_ROWS_FIELD_NUMBER = 15;
  private long numNullRows_;
  /**
   * uint64 num_null_rows = 15;
   * @return The numNullRows.
   */
  @java.lang.Override
  public long getNumNullRows() {
    return numNullRows_;
  }

  private byte memoizedIsInitialized = -1;
  @java.lang.Override
  public final boolean isInitialized() {
    byte isInitialized = memoizedIsInitialized;
    if (isInitialized == 1) return true;
    if (isInitialized == 0) return false;

    memoizedIsInitialized = 1;
    return true;
  }

  @java.lang.Override
  public void writeTo(com.google.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    if (buildTiming_ != null) {
      output.writeMessage(1, getBuildTiming());
    }
    if (finishBuildTiming_ != null) {
      output.writeMessage(2, getFinishBuildTiming());
    }
    if (probeTiming_ != null) {
      output.writeMessage(3, getProbeTiming());
    }
    if (postProbeTiming_ != null) {
      output.writeMessage(4, getPostProbeTiming());
    }
    if (htStats_ != null) {
      output.writeMessage(5, getHtStats());
    }
    if (numBuildRows_ != 0L) {
      output.writeUInt64(6, numBuildRows_);
    }
    if (numDistinctBuildRows_ != 0L) {
      output.writeUInt64(7, numDistinctBuildRows_);
    }
    if (maxEqualBuildRows_ != 0L) {
      output.writeUInt64(8, maxEqualBuildRows_);
    }
    if (buildSpillStats_ != null) {
      output.writeMessage(9, getBuildSpillStats());
    }
    if (probeSpillStats_ != null) {
      output.writeMessage(10, getProbeSpillStats());
    }
    if (probeFindHtTiming_ != null) {
      output.writeMessage(11, getProbeFindHtTiming());
    }
    if (probeOutputTiming_ != null) {
      output.writeMessage(12, getProbeOutputTiming());
    }
    if (probeEvalConjunctTiming_ != null) {
      output.writeMessage(13, getProbeEvalConjunctTiming());
    }
    if (probeOutputConjunctTiming_ != null) {
      output.writeMessage(14, getProbeOutputConjunctTiming());
    }
    if (numNullRows_ != 0L) {
      output.writeUInt64(15, numNullRows_);
    }
    unknownFields.writeTo(output);
  }

  @java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (buildTiming_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(1, getBuildTiming());
    }
    if (finishBuildTiming_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(2, getFinishBuildTiming());
    }
    if (probeTiming_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(3, getProbeTiming());
    }
    if (postProbeTiming_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(4, getPostProbeTiming());
    }
    if (htStats_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(5, getHtStats());
    }
    if (numBuildRows_ != 0L) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt64Size(6, numBuildRows_);
    }
    if (numDistinctBuildRows_ != 0L) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt64Size(7, numDistinctBuildRows_);
    }
    if (maxEqualBuildRows_ != 0L) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt64Size(8, maxEqualBuildRows_);
    }
    if (buildSpillStats_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(9, getBuildSpillStats());
    }
    if (probeSpillStats_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(10, getProbeSpillStats());
    }
    if (probeFindHtTiming_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(11, getProbeFindHtTiming());
    }
    if (probeOutputTiming_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(12, getProbeOutputTiming());
    }
    if (probeEvalConjunctTiming_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(13, getProbeEvalConjunctTiming());
    }
    if (probeOutputConjunctTiming_ != null) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(14, getProbeOutputConjunctTiming());
    }
    if (numNullRows_ != 0L) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt64Size(15, numNullRows_);
    }
    size += unknownFields.getSerializedSize();
    memoizedSize = size;
    return size;
  }

  @java.lang.Override
  public boolean equals(final java.lang.Object obj) {
    if (obj == this) {
     return true;
    }
    if (!(obj instanceof cz.proto.HashJoinStats)) {
      return super.equals(obj);
    }
    cz.proto.HashJoinStats other = (cz.proto.HashJoinStats) obj;

    if (hasBuildTiming() != other.hasBuildTiming()) return false;
    if (hasBuildTiming()) {
      if (!getBuildTiming()
          .equals(other.getBuildTiming())) return false;
    }
    if (hasFinishBuildTiming() != other.hasFinishBuildTiming()) return false;
    if (hasFinishBuildTiming()) {
      if (!getFinishBuildTiming()
          .equals(other.getFinishBuildTiming())) return false;
    }
    if (hasProbeTiming() != other.hasProbeTiming()) return false;
    if (hasProbeTiming()) {
      if (!getProbeTiming()
          .equals(other.getProbeTiming())) return false;
    }
    if (hasPostProbeTiming() != other.hasPostProbeTiming()) return false;
    if (hasPostProbeTiming()) {
      if (!getPostProbeTiming()
          .equals(other.getPostProbeTiming())) return false;
    }
    if (hasHtStats() != other.hasHtStats()) return false;
    if (hasHtStats()) {
      if (!getHtStats()
          .equals(other.getHtStats())) return false;
    }
    if (getNumBuildRows()
        != other.getNumBuildRows()) return false;
    if (getNumDistinctBuildRows()
        != other.getNumDistinctBuildRows()) return false;
    if (getMaxEqualBuildRows()
        != other.getMaxEqualBuildRows()) return false;
    if (hasBuildSpillStats() != other.hasBuildSpillStats()) return false;
    if (hasBuildSpillStats()) {
      if (!getBuildSpillStats()
          .equals(other.getBuildSpillStats())) return false;
    }
    if (hasProbeSpillStats() != other.hasProbeSpillStats()) return false;
    if (hasProbeSpillStats()) {
      if (!getProbeSpillStats()
          .equals(other.getProbeSpillStats())) return false;
    }
    if (hasProbeFindHtTiming() != other.hasProbeFindHtTiming()) return false;
    if (hasProbeFindHtTiming()) {
      if (!getProbeFindHtTiming()
          .equals(other.getProbeFindHtTiming())) return false;
    }
    if (hasProbeOutputTiming() != other.hasProbeOutputTiming()) return false;
    if (hasProbeOutputTiming()) {
      if (!getProbeOutputTiming()
          .equals(other.getProbeOutputTiming())) return false;
    }
    if (hasProbeEvalConjunctTiming() != other.hasProbeEvalConjunctTiming()) return false;
    if (hasProbeEvalConjunctTiming()) {
      if (!getProbeEvalConjunctTiming()
          .equals(other.getProbeEvalConjunctTiming())) return false;
    }
    if (hasProbeOutputConjunctTiming() != other.hasProbeOutputConjunctTiming()) return false;
    if (hasProbeOutputConjunctTiming()) {
      if (!getProbeOutputConjunctTiming()
          .equals(other.getProbeOutputConjunctTiming())) return false;
    }
    if (getNumNullRows()
        != other.getNumNullRows()) return false;
    if (!unknownFields.equals(other.unknownFields)) return false;
    return true;
  }

  @java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    if (hasBuildTiming()) {
      hash = (37 * hash) + BUILD_TIMING_FIELD_NUMBER;
      hash = (53 * hash) + getBuildTiming().hashCode();
    }
    if (hasFinishBuildTiming()) {
      hash = (37 * hash) + FINISH_BUILD_TIMING_FIELD_NUMBER;
      hash = (53 * hash) + getFinishBuildTiming().hashCode();
    }
    if (hasProbeTiming()) {
      hash = (37 * hash) + PROBE_TIMING_FIELD_NUMBER;
      hash = (53 * hash) + getProbeTiming().hashCode();
    }
    if (hasPostProbeTiming()) {
      hash = (37 * hash) + POST_PROBE_TIMING_FIELD_NUMBER;
      hash = (53 * hash) + getPostProbeTiming().hashCode();
    }
    if (hasHtStats()) {
      hash = (37 * hash) + HT_STATS_FIELD_NUMBER;
      hash = (53 * hash) + getHtStats().hashCode();
    }
    hash = (37 * hash) + NUM_BUILD_ROWS_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        getNumBuildRows());
    hash = (37 * hash) + NUM_DISTINCT_BUILD_ROWS_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        getNumDistinctBuildRows());
    hash = (37 * hash) + MAX_EQUAL_BUILD_ROWS_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        getMaxEqualBuildRows());
    if (hasBuildSpillStats()) {
      hash = (37 * hash) + BUILD_SPILL_STATS_FIELD_NUMBER;
      hash = (53 * hash) + getBuildSpillStats().hashCode();
    }
    if (hasProbeSpillStats()) {
      hash = (37 * hash) + PROBE_SPILL_STATS_FIELD_NUMBER;
      hash = (53 * hash) + getProbeSpillStats().hashCode();
    }
    if (hasProbeFindHtTiming()) {
      hash = (37 * hash) + PROBE_FIND_HT_TIMING_FIELD_NUMBER;
      hash = (53 * hash) + getProbeFindHtTiming().hashCode();
    }
    if (hasProbeOutputTiming()) {
      hash = (37 * hash) + PROBE_OUTPUT_TIMING_FIELD_NUMBER;
      hash = (53 * hash) + getProbeOutputTiming().hashCode();
    }
    if (hasProbeEvalConjunctTiming()) {
      hash = (37 * hash) + PROBE_EVAL_CONJUNCT_TIMING_FIELD_NUMBER;
      hash = (53 * hash) + getProbeEvalConjunctTiming().hashCode();
    }
    if (hasProbeOutputConjunctTiming()) {
      hash = (37 * hash) + PROBE_OUTPUT_CONJUNCT_TIMING_FIELD_NUMBER;
      hash = (53 * hash) + getProbeOutputConjunctTiming().hashCode();
    }
    hash = (37 * hash) + NUM_NULL_ROWS_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        getNumNullRows());
    hash = (29 * hash) + unknownFields.hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static cz.proto.HashJoinStats parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static cz.proto.HashJoinStats parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static cz.proto.HashJoinStats parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static cz.proto.HashJoinStats parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static cz.proto.HashJoinStats parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static cz.proto.HashJoinStats parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static cz.proto.HashJoinStats parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static cz.proto.HashJoinStats parseFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }
  public static cz.proto.HashJoinStats parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input);
  }
  public static cz.proto.HashJoinStats parseDelimitedFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
  }
  public static cz.proto.HashJoinStats parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static cz.proto.HashJoinStats parseFrom(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  @java.lang.Override
  public Builder newBuilderForType() { return newBuilder(); }
  public static Builder newBuilder() {
    return DEFAULT_INSTANCE.toBuilder();
  }
  public static Builder newBuilder(cz.proto.HashJoinStats prototype) {
    return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
  }
  @java.lang.Override
  public Builder toBuilder() {
    return this == DEFAULT_INSTANCE
        ? new Builder() : new Builder().mergeFrom(this);
  }

  @java.lang.Override
  protected Builder newBuilderForType(
      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    Builder builder = new Builder(parent);
    return builder;
  }
  /**
   * Protobuf type {@code cz.proto.HashJoinStats}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessageV3.Builder implements
      // @@protoc_insertion_point(builder_implements:cz.proto.HashJoinStats)
      cz.proto.HashJoinStatsOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return cz.proto.OperatorProto.internal_static_cz_proto_HashJoinStats_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return cz.proto.OperatorProto.internal_static_cz_proto_HashJoinStats_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              cz.proto.HashJoinStats.class, cz.proto.HashJoinStats.Builder.class);
    }

    // Construct using cz.proto.HashJoinStats.newBuilder()
    private Builder() {
      maybeForceBuilderInitialization();
    }

    private Builder(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      super(parent);
      maybeForceBuilderInitialization();
    }
    private void maybeForceBuilderInitialization() {
      if (com.google.protobuf.GeneratedMessageV3
              .alwaysUseFieldBuilders) {
      }
    }
    @java.lang.Override
    public Builder clear() {
      super.clear();
      if (buildTimingBuilder_ == null) {
        buildTiming_ = null;
      } else {
        buildTiming_ = null;
        buildTimingBuilder_ = null;
      }
      if (finishBuildTimingBuilder_ == null) {
        finishBuildTiming_ = null;
      } else {
        finishBuildTiming_ = null;
        finishBuildTimingBuilder_ = null;
      }
      if (probeTimingBuilder_ == null) {
        probeTiming_ = null;
      } else {
        probeTiming_ = null;
        probeTimingBuilder_ = null;
      }
      if (postProbeTimingBuilder_ == null) {
        postProbeTiming_ = null;
      } else {
        postProbeTiming_ = null;
        postProbeTimingBuilder_ = null;
      }
      if (htStatsBuilder_ == null) {
        htStats_ = null;
      } else {
        htStats_ = null;
        htStatsBuilder_ = null;
      }
      numBuildRows_ = 0L;

      numDistinctBuildRows_ = 0L;

      maxEqualBuildRows_ = 0L;

      if (buildSpillStatsBuilder_ == null) {
        buildSpillStats_ = null;
      } else {
        buildSpillStats_ = null;
        buildSpillStatsBuilder_ = null;
      }
      if (probeSpillStatsBuilder_ == null) {
        probeSpillStats_ = null;
      } else {
        probeSpillStats_ = null;
        probeSpillStatsBuilder_ = null;
      }
      if (probeFindHtTimingBuilder_ == null) {
        probeFindHtTiming_ = null;
      } else {
        probeFindHtTiming_ = null;
        probeFindHtTimingBuilder_ = null;
      }
      if (probeOutputTimingBuilder_ == null) {
        probeOutputTiming_ = null;
      } else {
        probeOutputTiming_ = null;
        probeOutputTimingBuilder_ = null;
      }
      if (probeEvalConjunctTimingBuilder_ == null) {
        probeEvalConjunctTiming_ = null;
      } else {
        probeEvalConjunctTiming_ = null;
        probeEvalConjunctTimingBuilder_ = null;
      }
      if (probeOutputConjunctTimingBuilder_ == null) {
        probeOutputConjunctTiming_ = null;
      } else {
        probeOutputConjunctTiming_ = null;
        probeOutputConjunctTimingBuilder_ = null;
      }
      numNullRows_ = 0L;

      return this;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return cz.proto.OperatorProto.internal_static_cz_proto_HashJoinStats_descriptor;
    }

    @java.lang.Override
    public cz.proto.HashJoinStats getDefaultInstanceForType() {
      return cz.proto.HashJoinStats.getDefaultInstance();
    }

    @java.lang.Override
    public cz.proto.HashJoinStats build() {
      cz.proto.HashJoinStats result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public cz.proto.HashJoinStats buildPartial() {
      cz.proto.HashJoinStats result = new cz.proto.HashJoinStats(this);
      if (buildTimingBuilder_ == null) {
        result.buildTiming_ = buildTiming_;
      } else {
        result.buildTiming_ = buildTimingBuilder_.build();
      }
      if (finishBuildTimingBuilder_ == null) {
        result.finishBuildTiming_ = finishBuildTiming_;
      } else {
        result.finishBuildTiming_ = finishBuildTimingBuilder_.build();
      }
      if (probeTimingBuilder_ == null) {
        result.probeTiming_ = probeTiming_;
      } else {
        result.probeTiming_ = probeTimingBuilder_.build();
      }
      if (postProbeTimingBuilder_ == null) {
        result.postProbeTiming_ = postProbeTiming_;
      } else {
        result.postProbeTiming_ = postProbeTimingBuilder_.build();
      }
      if (htStatsBuilder_ == null) {
        result.htStats_ = htStats_;
      } else {
        result.htStats_ = htStatsBuilder_.build();
      }
      result.numBuildRows_ = numBuildRows_;
      result.numDistinctBuildRows_ = numDistinctBuildRows_;
      result.maxEqualBuildRows_ = maxEqualBuildRows_;
      if (buildSpillStatsBuilder_ == null) {
        result.buildSpillStats_ = buildSpillStats_;
      } else {
        result.buildSpillStats_ = buildSpillStatsBuilder_.build();
      }
      if (probeSpillStatsBuilder_ == null) {
        result.probeSpillStats_ = probeSpillStats_;
      } else {
        result.probeSpillStats_ = probeSpillStatsBuilder_.build();
      }
      if (probeFindHtTimingBuilder_ == null) {
        result.probeFindHtTiming_ = probeFindHtTiming_;
      } else {
        result.probeFindHtTiming_ = probeFindHtTimingBuilder_.build();
      }
      if (probeOutputTimingBuilder_ == null) {
        result.probeOutputTiming_ = probeOutputTiming_;
      } else {
        result.probeOutputTiming_ = probeOutputTimingBuilder_.build();
      }
      if (probeEvalConjunctTimingBuilder_ == null) {
        result.probeEvalConjunctTiming_ = probeEvalConjunctTiming_;
      } else {
        result.probeEvalConjunctTiming_ = probeEvalConjunctTimingBuilder_.build();
      }
      if (probeOutputConjunctTimingBuilder_ == null) {
        result.probeOutputConjunctTiming_ = probeOutputConjunctTiming_;
      } else {
        result.probeOutputConjunctTiming_ = probeOutputConjunctTimingBuilder_.build();
      }
      result.numNullRows_ = numNullRows_;
      onBuilt();
      return result;
    }

    @java.lang.Override
    public Builder clone() {
      return super.clone();
    }
    @java.lang.Override
    public Builder setField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        java.lang.Object value) {
      return super.setField(field, value);
    }
    @java.lang.Override
    public Builder clearField(
        com.google.protobuf.Descriptors.FieldDescriptor field) {
      return super.clearField(field);
    }
    @java.lang.Override
    public Builder clearOneof(
        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
      return super.clearOneof(oneof);
    }
    @java.lang.Override
    public Builder setRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        int index, java.lang.Object value) {
      return super.setRepeatedField(field, index, value);
    }
    @java.lang.Override
    public Builder addRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        java.lang.Object value) {
      return super.addRepeatedField(field, value);
    }
    @java.lang.Override
    public Builder mergeFrom(com.google.protobuf.Message other) {
      if (other instanceof cz.proto.HashJoinStats) {
        return mergeFrom((cz.proto.HashJoinStats)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(cz.proto.HashJoinStats other) {
      if (other == cz.proto.HashJoinStats.getDefaultInstance()) return this;
      if (other.hasBuildTiming()) {
        mergeBuildTiming(other.getBuildTiming());
      }
      if (other.hasFinishBuildTiming()) {
        mergeFinishBuildTiming(other.getFinishBuildTiming());
      }
      if (other.hasProbeTiming()) {
        mergeProbeTiming(other.getProbeTiming());
      }
      if (other.hasPostProbeTiming()) {
        mergePostProbeTiming(other.getPostProbeTiming());
      }
      if (other.hasHtStats()) {
        mergeHtStats(other.getHtStats());
      }
      if (other.getNumBuildRows() != 0L) {
        setNumBuildRows(other.getNumBuildRows());
      }
      if (other.getNumDistinctBuildRows() != 0L) {
        setNumDistinctBuildRows(other.getNumDistinctBuildRows());
      }
      if (other.getMaxEqualBuildRows() != 0L) {
        setMaxEqualBuildRows(other.getMaxEqualBuildRows());
      }
      if (other.hasBuildSpillStats()) {
        mergeBuildSpillStats(other.getBuildSpillStats());
      }
      if (other.hasProbeSpillStats()) {
        mergeProbeSpillStats(other.getProbeSpillStats());
      }
      if (other.hasProbeFindHtTiming()) {
        mergeProbeFindHtTiming(other.getProbeFindHtTiming());
      }
      if (other.hasProbeOutputTiming()) {
        mergeProbeOutputTiming(other.getProbeOutputTiming());
      }
      if (other.hasProbeEvalConjunctTiming()) {
        mergeProbeEvalConjunctTiming(other.getProbeEvalConjunctTiming());
      }
      if (other.hasProbeOutputConjunctTiming()) {
        mergeProbeOutputConjunctTiming(other.getProbeOutputConjunctTiming());
      }
      if (other.getNumNullRows() != 0L) {
        setNumNullRows(other.getNumNullRows());
      }
      this.mergeUnknownFields(other.unknownFields);
      onChanged();
      return this;
    }

    @java.lang.Override
    public final boolean isInitialized() {
      return true;
    }

    @java.lang.Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      cz.proto.HashJoinStats parsedMessage = null;
      try {
        parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        parsedMessage = (cz.proto.HashJoinStats) e.getUnfinishedMessage();
        throw e.unwrapIOException();
      } finally {
        if (parsedMessage != null) {
          mergeFrom(parsedMessage);
        }
      }
      return this;
    }

    private cz.proto.Timing buildTiming_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> buildTimingBuilder_;
    /**
     * .cz.proto.Timing build_timing = 1;
     * @return Whether the buildTiming field is set.
     */
    public boolean hasBuildTiming() {
      return buildTimingBuilder_ != null || buildTiming_ != null;
    }
    /**
     * .cz.proto.Timing build_timing = 1;
     * @return The buildTiming.
     */
    public cz.proto.Timing getBuildTiming() {
      if (buildTimingBuilder_ == null) {
        return buildTiming_ == null ? cz.proto.Timing.getDefaultInstance() : buildTiming_;
      } else {
        return buildTimingBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.Timing build_timing = 1;
     */
    public Builder setBuildTiming(cz.proto.Timing value) {
      if (buildTimingBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        buildTiming_ = value;
        onChanged();
      } else {
        buildTimingBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing build_timing = 1;
     */
    public Builder setBuildTiming(
        cz.proto.Timing.Builder builderForValue) {
      if (buildTimingBuilder_ == null) {
        buildTiming_ = builderForValue.build();
        onChanged();
      } else {
        buildTimingBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.Timing build_timing = 1;
     */
    public Builder mergeBuildTiming(cz.proto.Timing value) {
      if (buildTimingBuilder_ == null) {
        if (buildTiming_ != null) {
          buildTiming_ =
            cz.proto.Timing.newBuilder(buildTiming_).mergeFrom(value).buildPartial();
        } else {
          buildTiming_ = value;
        }
        onChanged();
      } else {
        buildTimingBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing build_timing = 1;
     */
    public Builder clearBuildTiming() {
      if (buildTimingBuilder_ == null) {
        buildTiming_ = null;
        onChanged();
      } else {
        buildTiming_ = null;
        buildTimingBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.Timing build_timing = 1;
     */
    public cz.proto.Timing.Builder getBuildTimingBuilder() {
      
      onChanged();
      return getBuildTimingFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.Timing build_timing = 1;
     */
    public cz.proto.TimingOrBuilder getBuildTimingOrBuilder() {
      if (buildTimingBuilder_ != null) {
        return buildTimingBuilder_.getMessageOrBuilder();
      } else {
        return buildTiming_ == null ?
            cz.proto.Timing.getDefaultInstance() : buildTiming_;
      }
    }
    /**
     * .cz.proto.Timing build_timing = 1;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> 
        getBuildTimingFieldBuilder() {
      if (buildTimingBuilder_ == null) {
        buildTimingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder>(
                getBuildTiming(),
                getParentForChildren(),
                isClean());
        buildTiming_ = null;
      }
      return buildTimingBuilder_;
    }

    private cz.proto.Timing finishBuildTiming_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> finishBuildTimingBuilder_;
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     * @return Whether the finishBuildTiming field is set.
     */
    public boolean hasFinishBuildTiming() {
      return finishBuildTimingBuilder_ != null || finishBuildTiming_ != null;
    }
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     * @return The finishBuildTiming.
     */
    public cz.proto.Timing getFinishBuildTiming() {
      if (finishBuildTimingBuilder_ == null) {
        return finishBuildTiming_ == null ? cz.proto.Timing.getDefaultInstance() : finishBuildTiming_;
      } else {
        return finishBuildTimingBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     */
    public Builder setFinishBuildTiming(cz.proto.Timing value) {
      if (finishBuildTimingBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        finishBuildTiming_ = value;
        onChanged();
      } else {
        finishBuildTimingBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     */
    public Builder setFinishBuildTiming(
        cz.proto.Timing.Builder builderForValue) {
      if (finishBuildTimingBuilder_ == null) {
        finishBuildTiming_ = builderForValue.build();
        onChanged();
      } else {
        finishBuildTimingBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     */
    public Builder mergeFinishBuildTiming(cz.proto.Timing value) {
      if (finishBuildTimingBuilder_ == null) {
        if (finishBuildTiming_ != null) {
          finishBuildTiming_ =
            cz.proto.Timing.newBuilder(finishBuildTiming_).mergeFrom(value).buildPartial();
        } else {
          finishBuildTiming_ = value;
        }
        onChanged();
      } else {
        finishBuildTimingBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     */
    public Builder clearFinishBuildTiming() {
      if (finishBuildTimingBuilder_ == null) {
        finishBuildTiming_ = null;
        onChanged();
      } else {
        finishBuildTiming_ = null;
        finishBuildTimingBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     */
    public cz.proto.Timing.Builder getFinishBuildTimingBuilder() {
      
      onChanged();
      return getFinishBuildTimingFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     */
    public cz.proto.TimingOrBuilder getFinishBuildTimingOrBuilder() {
      if (finishBuildTimingBuilder_ != null) {
        return finishBuildTimingBuilder_.getMessageOrBuilder();
      } else {
        return finishBuildTiming_ == null ?
            cz.proto.Timing.getDefaultInstance() : finishBuildTiming_;
      }
    }
    /**
     * .cz.proto.Timing finish_build_timing = 2;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> 
        getFinishBuildTimingFieldBuilder() {
      if (finishBuildTimingBuilder_ == null) {
        finishBuildTimingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder>(
                getFinishBuildTiming(),
                getParentForChildren(),
                isClean());
        finishBuildTiming_ = null;
      }
      return finishBuildTimingBuilder_;
    }

    private cz.proto.Timing probeTiming_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> probeTimingBuilder_;
    /**
     * .cz.proto.Timing probe_timing = 3;
     * @return Whether the probeTiming field is set.
     */
    public boolean hasProbeTiming() {
      return probeTimingBuilder_ != null || probeTiming_ != null;
    }
    /**
     * .cz.proto.Timing probe_timing = 3;
     * @return The probeTiming.
     */
    public cz.proto.Timing getProbeTiming() {
      if (probeTimingBuilder_ == null) {
        return probeTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeTiming_;
      } else {
        return probeTimingBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.Timing probe_timing = 3;
     */
    public Builder setProbeTiming(cz.proto.Timing value) {
      if (probeTimingBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        probeTiming_ = value;
        onChanged();
      } else {
        probeTimingBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_timing = 3;
     */
    public Builder setProbeTiming(
        cz.proto.Timing.Builder builderForValue) {
      if (probeTimingBuilder_ == null) {
        probeTiming_ = builderForValue.build();
        onChanged();
      } else {
        probeTimingBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_timing = 3;
     */
    public Builder mergeProbeTiming(cz.proto.Timing value) {
      if (probeTimingBuilder_ == null) {
        if (probeTiming_ != null) {
          probeTiming_ =
            cz.proto.Timing.newBuilder(probeTiming_).mergeFrom(value).buildPartial();
        } else {
          probeTiming_ = value;
        }
        onChanged();
      } else {
        probeTimingBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_timing = 3;
     */
    public Builder clearProbeTiming() {
      if (probeTimingBuilder_ == null) {
        probeTiming_ = null;
        onChanged();
      } else {
        probeTiming_ = null;
        probeTimingBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_timing = 3;
     */
    public cz.proto.Timing.Builder getProbeTimingBuilder() {
      
      onChanged();
      return getProbeTimingFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.Timing probe_timing = 3;
     */
    public cz.proto.TimingOrBuilder getProbeTimingOrBuilder() {
      if (probeTimingBuilder_ != null) {
        return probeTimingBuilder_.getMessageOrBuilder();
      } else {
        return probeTiming_ == null ?
            cz.proto.Timing.getDefaultInstance() : probeTiming_;
      }
    }
    /**
     * .cz.proto.Timing probe_timing = 3;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> 
        getProbeTimingFieldBuilder() {
      if (probeTimingBuilder_ == null) {
        probeTimingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder>(
                getProbeTiming(),
                getParentForChildren(),
                isClean());
        probeTiming_ = null;
      }
      return probeTimingBuilder_;
    }

    private cz.proto.Timing postProbeTiming_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> postProbeTimingBuilder_;
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     * @return Whether the postProbeTiming field is set.
     */
    public boolean hasPostProbeTiming() {
      return postProbeTimingBuilder_ != null || postProbeTiming_ != null;
    }
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     * @return The postProbeTiming.
     */
    public cz.proto.Timing getPostProbeTiming() {
      if (postProbeTimingBuilder_ == null) {
        return postProbeTiming_ == null ? cz.proto.Timing.getDefaultInstance() : postProbeTiming_;
      } else {
        return postProbeTimingBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     */
    public Builder setPostProbeTiming(cz.proto.Timing value) {
      if (postProbeTimingBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        postProbeTiming_ = value;
        onChanged();
      } else {
        postProbeTimingBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     */
    public Builder setPostProbeTiming(
        cz.proto.Timing.Builder builderForValue) {
      if (postProbeTimingBuilder_ == null) {
        postProbeTiming_ = builderForValue.build();
        onChanged();
      } else {
        postProbeTimingBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     */
    public Builder mergePostProbeTiming(cz.proto.Timing value) {
      if (postProbeTimingBuilder_ == null) {
        if (postProbeTiming_ != null) {
          postProbeTiming_ =
            cz.proto.Timing.newBuilder(postProbeTiming_).mergeFrom(value).buildPartial();
        } else {
          postProbeTiming_ = value;
        }
        onChanged();
      } else {
        postProbeTimingBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     */
    public Builder clearPostProbeTiming() {
      if (postProbeTimingBuilder_ == null) {
        postProbeTiming_ = null;
        onChanged();
      } else {
        postProbeTiming_ = null;
        postProbeTimingBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     */
    public cz.proto.Timing.Builder getPostProbeTimingBuilder() {
      
      onChanged();
      return getPostProbeTimingFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     */
    public cz.proto.TimingOrBuilder getPostProbeTimingOrBuilder() {
      if (postProbeTimingBuilder_ != null) {
        return postProbeTimingBuilder_.getMessageOrBuilder();
      } else {
        return postProbeTiming_ == null ?
            cz.proto.Timing.getDefaultInstance() : postProbeTiming_;
      }
    }
    /**
     * .cz.proto.Timing post_probe_timing = 4;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> 
        getPostProbeTimingFieldBuilder() {
      if (postProbeTimingBuilder_ == null) {
        postProbeTimingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder>(
                getPostProbeTiming(),
                getParentForChildren(),
                isClean());
        postProbeTiming_ = null;
      }
      return postProbeTimingBuilder_;
    }

    private cz.proto.HashTableStats htStats_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.HashTableStats, cz.proto.HashTableStats.Builder, cz.proto.HashTableStatsOrBuilder> htStatsBuilder_;
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     * @return Whether the htStats field is set.
     */
    public boolean hasHtStats() {
      return htStatsBuilder_ != null || htStats_ != null;
    }
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     * @return The htStats.
     */
    public cz.proto.HashTableStats getHtStats() {
      if (htStatsBuilder_ == null) {
        return htStats_ == null ? cz.proto.HashTableStats.getDefaultInstance() : htStats_;
      } else {
        return htStatsBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     */
    public Builder setHtStats(cz.proto.HashTableStats value) {
      if (htStatsBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        htStats_ = value;
        onChanged();
      } else {
        htStatsBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     */
    public Builder setHtStats(
        cz.proto.HashTableStats.Builder builderForValue) {
      if (htStatsBuilder_ == null) {
        htStats_ = builderForValue.build();
        onChanged();
      } else {
        htStatsBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     */
    public Builder mergeHtStats(cz.proto.HashTableStats value) {
      if (htStatsBuilder_ == null) {
        if (htStats_ != null) {
          htStats_ =
            cz.proto.HashTableStats.newBuilder(htStats_).mergeFrom(value).buildPartial();
        } else {
          htStats_ = value;
        }
        onChanged();
      } else {
        htStatsBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     */
    public Builder clearHtStats() {
      if (htStatsBuilder_ == null) {
        htStats_ = null;
        onChanged();
      } else {
        htStats_ = null;
        htStatsBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     */
    public cz.proto.HashTableStats.Builder getHtStatsBuilder() {
      
      onChanged();
      return getHtStatsFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     */
    public cz.proto.HashTableStatsOrBuilder getHtStatsOrBuilder() {
      if (htStatsBuilder_ != null) {
        return htStatsBuilder_.getMessageOrBuilder();
      } else {
        return htStats_ == null ?
            cz.proto.HashTableStats.getDefaultInstance() : htStats_;
      }
    }
    /**
     * .cz.proto.HashTableStats ht_stats = 5;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.HashTableStats, cz.proto.HashTableStats.Builder, cz.proto.HashTableStatsOrBuilder> 
        getHtStatsFieldBuilder() {
      if (htStatsBuilder_ == null) {
        htStatsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.HashTableStats, cz.proto.HashTableStats.Builder, cz.proto.HashTableStatsOrBuilder>(
                getHtStats(),
                getParentForChildren(),
                isClean());
        htStats_ = null;
      }
      return htStatsBuilder_;
    }

    private long numBuildRows_ ;
    /**
     * uint64 num_build_rows = 6;
     * @return The numBuildRows.
     */
    @java.lang.Override
    public long getNumBuildRows() {
      return numBuildRows_;
    }
    /**
     * uint64 num_build_rows = 6;
     * @param value The numBuildRows to set.
     * @return This builder for chaining.
     */
    public Builder setNumBuildRows(long value) {
      
      numBuildRows_ = value;
      onChanged();
      return this;
    }
    /**
     * uint64 num_build_rows = 6;
     * @return This builder for chaining.
     */
    public Builder clearNumBuildRows() {
      
      numBuildRows_ = 0L;
      onChanged();
      return this;
    }

    private long numDistinctBuildRows_ ;
    /**
     * uint64 num_distinct_build_rows = 7;
     * @return The numDistinctBuildRows.
     */
    @java.lang.Override
    public long getNumDistinctBuildRows() {
      return numDistinctBuildRows_;
    }
    /**
     * uint64 num_distinct_build_rows = 7;
     * @param value The numDistinctBuildRows to set.
     * @return This builder for chaining.
     */
    public Builder setNumDistinctBuildRows(long value) {
      
      numDistinctBuildRows_ = value;
      onChanged();
      return this;
    }
    /**
     * uint64 num_distinct_build_rows = 7;
     * @return This builder for chaining.
     */
    public Builder clearNumDistinctBuildRows() {
      
      numDistinctBuildRows_ = 0L;
      onChanged();
      return this;
    }

    private long maxEqualBuildRows_ ;
    /**
     * uint64 max_equal_build_rows = 8;
     * @return The maxEqualBuildRows.
     */
    @java.lang.Override
    public long getMaxEqualBuildRows() {
      return maxEqualBuildRows_;
    }
    /**
     * uint64 max_equal_build_rows = 8;
     * @param value The maxEqualBuildRows to set.
     * @return This builder for chaining.
     */
    public Builder setMaxEqualBuildRows(long value) {
      
      maxEqualBuildRows_ = value;
      onChanged();
      return this;
    }
    /**
     * uint64 max_equal_build_rows = 8;
     * @return This builder for chaining.
     */
    public Builder clearMaxEqualBuildRows() {
      
      maxEqualBuildRows_ = 0L;
      onChanged();
      return this;
    }

    private cz.proto.SpillStats buildSpillStats_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.SpillStats, cz.proto.SpillStats.Builder, cz.proto.SpillStatsOrBuilder> buildSpillStatsBuilder_;
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     * @return Whether the buildSpillStats field is set.
     */
    public boolean hasBuildSpillStats() {
      return buildSpillStatsBuilder_ != null || buildSpillStats_ != null;
    }
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     * @return The buildSpillStats.
     */
    public cz.proto.SpillStats getBuildSpillStats() {
      if (buildSpillStatsBuilder_ == null) {
        return buildSpillStats_ == null ? cz.proto.SpillStats.getDefaultInstance() : buildSpillStats_;
      } else {
        return buildSpillStatsBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     */
    public Builder setBuildSpillStats(cz.proto.SpillStats value) {
      if (buildSpillStatsBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        buildSpillStats_ = value;
        onChanged();
      } else {
        buildSpillStatsBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     */
    public Builder setBuildSpillStats(
        cz.proto.SpillStats.Builder builderForValue) {
      if (buildSpillStatsBuilder_ == null) {
        buildSpillStats_ = builderForValue.build();
        onChanged();
      } else {
        buildSpillStatsBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     */
    public Builder mergeBuildSpillStats(cz.proto.SpillStats value) {
      if (buildSpillStatsBuilder_ == null) {
        if (buildSpillStats_ != null) {
          buildSpillStats_ =
            cz.proto.SpillStats.newBuilder(buildSpillStats_).mergeFrom(value).buildPartial();
        } else {
          buildSpillStats_ = value;
        }
        onChanged();
      } else {
        buildSpillStatsBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     */
    public Builder clearBuildSpillStats() {
      if (buildSpillStatsBuilder_ == null) {
        buildSpillStats_ = null;
        onChanged();
      } else {
        buildSpillStats_ = null;
        buildSpillStatsBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     */
    public cz.proto.SpillStats.Builder getBuildSpillStatsBuilder() {
      
      onChanged();
      return getBuildSpillStatsFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     */
    public cz.proto.SpillStatsOrBuilder getBuildSpillStatsOrBuilder() {
      if (buildSpillStatsBuilder_ != null) {
        return buildSpillStatsBuilder_.getMessageOrBuilder();
      } else {
        return buildSpillStats_ == null ?
            cz.proto.SpillStats.getDefaultInstance() : buildSpillStats_;
      }
    }
    /**
     * .cz.proto.SpillStats build_spill_stats = 9;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.SpillStats, cz.proto.SpillStats.Builder, cz.proto.SpillStatsOrBuilder> 
        getBuildSpillStatsFieldBuilder() {
      if (buildSpillStatsBuilder_ == null) {
        buildSpillStatsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.SpillStats, cz.proto.SpillStats.Builder, cz.proto.SpillStatsOrBuilder>(
                getBuildSpillStats(),
                getParentForChildren(),
                isClean());
        buildSpillStats_ = null;
      }
      return buildSpillStatsBuilder_;
    }

    private cz.proto.SpillStats probeSpillStats_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.SpillStats, cz.proto.SpillStats.Builder, cz.proto.SpillStatsOrBuilder> probeSpillStatsBuilder_;
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     * @return Whether the probeSpillStats field is set.
     */
    public boolean hasProbeSpillStats() {
      return probeSpillStatsBuilder_ != null || probeSpillStats_ != null;
    }
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     * @return The probeSpillStats.
     */
    public cz.proto.SpillStats getProbeSpillStats() {
      if (probeSpillStatsBuilder_ == null) {
        return probeSpillStats_ == null ? cz.proto.SpillStats.getDefaultInstance() : probeSpillStats_;
      } else {
        return probeSpillStatsBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     */
    public Builder setProbeSpillStats(cz.proto.SpillStats value) {
      if (probeSpillStatsBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        probeSpillStats_ = value;
        onChanged();
      } else {
        probeSpillStatsBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     */
    public Builder setProbeSpillStats(
        cz.proto.SpillStats.Builder builderForValue) {
      if (probeSpillStatsBuilder_ == null) {
        probeSpillStats_ = builderForValue.build();
        onChanged();
      } else {
        probeSpillStatsBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     */
    public Builder mergeProbeSpillStats(cz.proto.SpillStats value) {
      if (probeSpillStatsBuilder_ == null) {
        if (probeSpillStats_ != null) {
          probeSpillStats_ =
            cz.proto.SpillStats.newBuilder(probeSpillStats_).mergeFrom(value).buildPartial();
        } else {
          probeSpillStats_ = value;
        }
        onChanged();
      } else {
        probeSpillStatsBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     */
    public Builder clearProbeSpillStats() {
      if (probeSpillStatsBuilder_ == null) {
        probeSpillStats_ = null;
        onChanged();
      } else {
        probeSpillStats_ = null;
        probeSpillStatsBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     */
    public cz.proto.SpillStats.Builder getProbeSpillStatsBuilder() {
      
      onChanged();
      return getProbeSpillStatsFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     */
    public cz.proto.SpillStatsOrBuilder getProbeSpillStatsOrBuilder() {
      if (probeSpillStatsBuilder_ != null) {
        return probeSpillStatsBuilder_.getMessageOrBuilder();
      } else {
        return probeSpillStats_ == null ?
            cz.proto.SpillStats.getDefaultInstance() : probeSpillStats_;
      }
    }
    /**
     * .cz.proto.SpillStats probe_spill_stats = 10;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.SpillStats, cz.proto.SpillStats.Builder, cz.proto.SpillStatsOrBuilder> 
        getProbeSpillStatsFieldBuilder() {
      if (probeSpillStatsBuilder_ == null) {
        probeSpillStatsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.SpillStats, cz.proto.SpillStats.Builder, cz.proto.SpillStatsOrBuilder>(
                getProbeSpillStats(),
                getParentForChildren(),
                isClean());
        probeSpillStats_ = null;
      }
      return probeSpillStatsBuilder_;
    }

    private cz.proto.Timing probeFindHtTiming_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> probeFindHtTimingBuilder_;
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     * @return Whether the probeFindHtTiming field is set.
     */
    public boolean hasProbeFindHtTiming() {
      return probeFindHtTimingBuilder_ != null || probeFindHtTiming_ != null;
    }
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     * @return The probeFindHtTiming.
     */
    public cz.proto.Timing getProbeFindHtTiming() {
      if (probeFindHtTimingBuilder_ == null) {
        return probeFindHtTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeFindHtTiming_;
      } else {
        return probeFindHtTimingBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     */
    public Builder setProbeFindHtTiming(cz.proto.Timing value) {
      if (probeFindHtTimingBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        probeFindHtTiming_ = value;
        onChanged();
      } else {
        probeFindHtTimingBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     */
    public Builder setProbeFindHtTiming(
        cz.proto.Timing.Builder builderForValue) {
      if (probeFindHtTimingBuilder_ == null) {
        probeFindHtTiming_ = builderForValue.build();
        onChanged();
      } else {
        probeFindHtTimingBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     */
    public Builder mergeProbeFindHtTiming(cz.proto.Timing value) {
      if (probeFindHtTimingBuilder_ == null) {
        if (probeFindHtTiming_ != null) {
          probeFindHtTiming_ =
            cz.proto.Timing.newBuilder(probeFindHtTiming_).mergeFrom(value).buildPartial();
        } else {
          probeFindHtTiming_ = value;
        }
        onChanged();
      } else {
        probeFindHtTimingBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     */
    public Builder clearProbeFindHtTiming() {
      if (probeFindHtTimingBuilder_ == null) {
        probeFindHtTiming_ = null;
        onChanged();
      } else {
        probeFindHtTiming_ = null;
        probeFindHtTimingBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     */
    public cz.proto.Timing.Builder getProbeFindHtTimingBuilder() {
      
      onChanged();
      return getProbeFindHtTimingFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     */
    public cz.proto.TimingOrBuilder getProbeFindHtTimingOrBuilder() {
      if (probeFindHtTimingBuilder_ != null) {
        return probeFindHtTimingBuilder_.getMessageOrBuilder();
      } else {
        return probeFindHtTiming_ == null ?
            cz.proto.Timing.getDefaultInstance() : probeFindHtTiming_;
      }
    }
    /**
     * .cz.proto.Timing probe_find_ht_timing = 11;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> 
        getProbeFindHtTimingFieldBuilder() {
      if (probeFindHtTimingBuilder_ == null) {
        probeFindHtTimingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder>(
                getProbeFindHtTiming(),
                getParentForChildren(),
                isClean());
        probeFindHtTiming_ = null;
      }
      return probeFindHtTimingBuilder_;
    }

    private cz.proto.Timing probeOutputTiming_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> probeOutputTimingBuilder_;
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     * @return Whether the probeOutputTiming field is set.
     */
    public boolean hasProbeOutputTiming() {
      return probeOutputTimingBuilder_ != null || probeOutputTiming_ != null;
    }
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     * @return The probeOutputTiming.
     */
    public cz.proto.Timing getProbeOutputTiming() {
      if (probeOutputTimingBuilder_ == null) {
        return probeOutputTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeOutputTiming_;
      } else {
        return probeOutputTimingBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     */
    public Builder setProbeOutputTiming(cz.proto.Timing value) {
      if (probeOutputTimingBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        probeOutputTiming_ = value;
        onChanged();
      } else {
        probeOutputTimingBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     */
    public Builder setProbeOutputTiming(
        cz.proto.Timing.Builder builderForValue) {
      if (probeOutputTimingBuilder_ == null) {
        probeOutputTiming_ = builderForValue.build();
        onChanged();
      } else {
        probeOutputTimingBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     */
    public Builder mergeProbeOutputTiming(cz.proto.Timing value) {
      if (probeOutputTimingBuilder_ == null) {
        if (probeOutputTiming_ != null) {
          probeOutputTiming_ =
            cz.proto.Timing.newBuilder(probeOutputTiming_).mergeFrom(value).buildPartial();
        } else {
          probeOutputTiming_ = value;
        }
        onChanged();
      } else {
        probeOutputTimingBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     */
    public Builder clearProbeOutputTiming() {
      if (probeOutputTimingBuilder_ == null) {
        probeOutputTiming_ = null;
        onChanged();
      } else {
        probeOutputTiming_ = null;
        probeOutputTimingBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     */
    public cz.proto.Timing.Builder getProbeOutputTimingBuilder() {
      
      onChanged();
      return getProbeOutputTimingFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     */
    public cz.proto.TimingOrBuilder getProbeOutputTimingOrBuilder() {
      if (probeOutputTimingBuilder_ != null) {
        return probeOutputTimingBuilder_.getMessageOrBuilder();
      } else {
        return probeOutputTiming_ == null ?
            cz.proto.Timing.getDefaultInstance() : probeOutputTiming_;
      }
    }
    /**
     * .cz.proto.Timing probe_output_timing = 12;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> 
        getProbeOutputTimingFieldBuilder() {
      if (probeOutputTimingBuilder_ == null) {
        probeOutputTimingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder>(
                getProbeOutputTiming(),
                getParentForChildren(),
                isClean());
        probeOutputTiming_ = null;
      }
      return probeOutputTimingBuilder_;
    }

    private cz.proto.Timing probeEvalConjunctTiming_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> probeEvalConjunctTimingBuilder_;
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     * @return Whether the probeEvalConjunctTiming field is set.
     */
    public boolean hasProbeEvalConjunctTiming() {
      return probeEvalConjunctTimingBuilder_ != null || probeEvalConjunctTiming_ != null;
    }
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     * @return The probeEvalConjunctTiming.
     */
    public cz.proto.Timing getProbeEvalConjunctTiming() {
      if (probeEvalConjunctTimingBuilder_ == null) {
        return probeEvalConjunctTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeEvalConjunctTiming_;
      } else {
        return probeEvalConjunctTimingBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     */
    public Builder setProbeEvalConjunctTiming(cz.proto.Timing value) {
      if (probeEvalConjunctTimingBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        probeEvalConjunctTiming_ = value;
        onChanged();
      } else {
        probeEvalConjunctTimingBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     */
    public Builder setProbeEvalConjunctTiming(
        cz.proto.Timing.Builder builderForValue) {
      if (probeEvalConjunctTimingBuilder_ == null) {
        probeEvalConjunctTiming_ = builderForValue.build();
        onChanged();
      } else {
        probeEvalConjunctTimingBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     */
    public Builder mergeProbeEvalConjunctTiming(cz.proto.Timing value) {
      if (probeEvalConjunctTimingBuilder_ == null) {
        if (probeEvalConjunctTiming_ != null) {
          probeEvalConjunctTiming_ =
            cz.proto.Timing.newBuilder(probeEvalConjunctTiming_).mergeFrom(value).buildPartial();
        } else {
          probeEvalConjunctTiming_ = value;
        }
        onChanged();
      } else {
        probeEvalConjunctTimingBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     */
    public Builder clearProbeEvalConjunctTiming() {
      if (probeEvalConjunctTimingBuilder_ == null) {
        probeEvalConjunctTiming_ = null;
        onChanged();
      } else {
        probeEvalConjunctTiming_ = null;
        probeEvalConjunctTimingBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     */
    public cz.proto.Timing.Builder getProbeEvalConjunctTimingBuilder() {
      
      onChanged();
      return getProbeEvalConjunctTimingFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     */
    public cz.proto.TimingOrBuilder getProbeEvalConjunctTimingOrBuilder() {
      if (probeEvalConjunctTimingBuilder_ != null) {
        return probeEvalConjunctTimingBuilder_.getMessageOrBuilder();
      } else {
        return probeEvalConjunctTiming_ == null ?
            cz.proto.Timing.getDefaultInstance() : probeEvalConjunctTiming_;
      }
    }
    /**
     * .cz.proto.Timing probe_eval_conjunct_timing = 13;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> 
        getProbeEvalConjunctTimingFieldBuilder() {
      if (probeEvalConjunctTimingBuilder_ == null) {
        probeEvalConjunctTimingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder>(
                getProbeEvalConjunctTiming(),
                getParentForChildren(),
                isClean());
        probeEvalConjunctTiming_ = null;
      }
      return probeEvalConjunctTimingBuilder_;
    }

    private cz.proto.Timing probeOutputConjunctTiming_;
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> probeOutputConjunctTimingBuilder_;
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     * @return Whether the probeOutputConjunctTiming field is set.
     */
    public boolean hasProbeOutputConjunctTiming() {
      return probeOutputConjunctTimingBuilder_ != null || probeOutputConjunctTiming_ != null;
    }
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     * @return The probeOutputConjunctTiming.
     */
    public cz.proto.Timing getProbeOutputConjunctTiming() {
      if (probeOutputConjunctTimingBuilder_ == null) {
        return probeOutputConjunctTiming_ == null ? cz.proto.Timing.getDefaultInstance() : probeOutputConjunctTiming_;
      } else {
        return probeOutputConjunctTimingBuilder_.getMessage();
      }
    }
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     */
    public Builder setProbeOutputConjunctTiming(cz.proto.Timing value) {
      if (probeOutputConjunctTimingBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        probeOutputConjunctTiming_ = value;
        onChanged();
      } else {
        probeOutputConjunctTimingBuilder_.setMessage(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     */
    public Builder setProbeOutputConjunctTiming(
        cz.proto.Timing.Builder builderForValue) {
      if (probeOutputConjunctTimingBuilder_ == null) {
        probeOutputConjunctTiming_ = builderForValue.build();
        onChanged();
      } else {
        probeOutputConjunctTimingBuilder_.setMessage(builderForValue.build());
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     */
    public Builder mergeProbeOutputConjunctTiming(cz.proto.Timing value) {
      if (probeOutputConjunctTimingBuilder_ == null) {
        if (probeOutputConjunctTiming_ != null) {
          probeOutputConjunctTiming_ =
            cz.proto.Timing.newBuilder(probeOutputConjunctTiming_).mergeFrom(value).buildPartial();
        } else {
          probeOutputConjunctTiming_ = value;
        }
        onChanged();
      } else {
        probeOutputConjunctTimingBuilder_.mergeFrom(value);
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     */
    public Builder clearProbeOutputConjunctTiming() {
      if (probeOutputConjunctTimingBuilder_ == null) {
        probeOutputConjunctTiming_ = null;
        onChanged();
      } else {
        probeOutputConjunctTiming_ = null;
        probeOutputConjunctTimingBuilder_ = null;
      }

      return this;
    }
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     */
    public cz.proto.Timing.Builder getProbeOutputConjunctTimingBuilder() {
      
      onChanged();
      return getProbeOutputConjunctTimingFieldBuilder().getBuilder();
    }
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     */
    public cz.proto.TimingOrBuilder getProbeOutputConjunctTimingOrBuilder() {
      if (probeOutputConjunctTimingBuilder_ != null) {
        return probeOutputConjunctTimingBuilder_.getMessageOrBuilder();
      } else {
        return probeOutputConjunctTiming_ == null ?
            cz.proto.Timing.getDefaultInstance() : probeOutputConjunctTiming_;
      }
    }
    /**
     * .cz.proto.Timing probe_output_conjunct_timing = 14;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder> 
        getProbeOutputConjunctTimingFieldBuilder() {
      if (probeOutputConjunctTimingBuilder_ == null) {
        probeOutputConjunctTimingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            cz.proto.Timing, cz.proto.Timing.Builder, cz.proto.TimingOrBuilder>(
                getProbeOutputConjunctTiming(),
                getParentForChildren(),
                isClean());
        probeOutputConjunctTiming_ = null;
      }
      return probeOutputConjunctTimingBuilder_;
    }

    private long numNullRows_ ;
    /**
     * uint64 num_null_rows = 15;
     * @return The numNullRows.
     */
    @java.lang.Override
    public long getNumNullRows() {
      return numNullRows_;
    }
    /**
     * uint64 num_null_rows = 15;
     * @param value The numNullRows to set.
     * @return This builder for chaining.
     */
    public Builder setNumNullRows(long value) {
      
      numNullRows_ = value;
      onChanged();
      return this;
    }
    /**
     * uint64 num_null_rows = 15;
     * @return This builder for chaining.
     */
    public Builder clearNumNullRows() {
      
      numNullRows_ = 0L;
      onChanged();
      return this;
    }
    @java.lang.Override
    public final Builder setUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.setUnknownFields(unknownFields);
    }

    @java.lang.Override
    public final Builder mergeUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.mergeUnknownFields(unknownFields);
    }


    // @@protoc_insertion_point(builder_scope:cz.proto.HashJoinStats)
  }

  // @@protoc_insertion_point(class_scope:cz.proto.HashJoinStats)
  private static final cz.proto.HashJoinStats DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new cz.proto.HashJoinStats();
  }

  public static cz.proto.HashJoinStats getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

  private static final com.google.protobuf.Parser
      PARSER = new com.google.protobuf.AbstractParser() {
    @java.lang.Override
    public HashJoinStats parsePartialFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return new HashJoinStats(input, extensionRegistry);
    }
  };

  public static com.google.protobuf.Parser parser() {
    return PARSER;
  }

  @java.lang.Override
  public com.google.protobuf.Parser getParserForType() {
    return PARSER;
  }

  @java.lang.Override
  public cz.proto.HashJoinStats getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy