THashJoinNode.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 THashJoinNode implements org.apache.thrift.TBase<THashJoinNode, THashJoinNode._Fields>, java.io.Serializable, Cloneable, Comparable<THashJoinNode> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("THashJoinNode");
private static final org.apache.thrift.protocol.TField JOIN_OP_FIELD_DESC = new org.apache.thrift.protocol.TField("join_op", org.apache.thrift.protocol.TType.I32, (short)1);
private static final org.apache.thrift.protocol.TField EQ_JOIN_CONJUNCTS_FIELD_DESC = new org.apache.thrift.protocol.TField("eq_join_conjuncts", org.apache.thrift.protocol.TType.LIST, (short)2);
private static final org.apache.thrift.protocol.TField OTHER_JOIN_CONJUNCTS_FIELD_DESC = new org.apache.thrift.protocol.TField("other_join_conjuncts", org.apache.thrift.protocol.TType.LIST, (short)3);
private static final org.apache.thrift.protocol.TField ADD_PROBE_FILTERS_FIELD_DESC = new org.apache.thrift.protocol.TField("add_probe_filters", org.apache.thrift.protocol.TType.BOOL, (short)4);
private static final org.apache.thrift.protocol.TField VOTHER_JOIN_CONJUNCT_FIELD_DESC = new org.apache.thrift.protocol.TField("vother_join_conjunct", org.apache.thrift.protocol.TType.STRUCT, (short)5);
private static final org.apache.thrift.protocol.TField HASH_OUTPUT_SLOT_IDS_FIELD_DESC = new org.apache.thrift.protocol.TField("hash_output_slot_ids", org.apache.thrift.protocol.TType.LIST, (short)6);
private static final org.apache.thrift.protocol.TField SRC_EXPR_LIST_FIELD_DESC = new org.apache.thrift.protocol.TField("srcExprList", org.apache.thrift.protocol.TType.LIST, (short)7);
private static final org.apache.thrift.protocol.TField VOUTPUT_TUPLE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("voutput_tuple_id", org.apache.thrift.protocol.TType.I32, (short)8);
private static final org.apache.thrift.protocol.TField VINTERMEDIATE_TUPLE_ID_LIST_FIELD_DESC = new org.apache.thrift.protocol.TField("vintermediate_tuple_id_list", org.apache.thrift.protocol.TType.LIST, (short)9);
private static final org.apache.thrift.protocol.TField IS_BROADCAST_JOIN_FIELD_DESC = new org.apache.thrift.protocol.TField("is_broadcast_join", org.apache.thrift.protocol.TType.BOOL, (short)10);
private static final org.apache.thrift.protocol.TField IS_MARK_FIELD_DESC = new org.apache.thrift.protocol.TField("is_mark", org.apache.thrift.protocol.TType.BOOL, (short)11);
private static final org.apache.thrift.protocol.TField DIST_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("dist_type", org.apache.thrift.protocol.TType.I32, (short)12);
private static final org.apache.thrift.protocol.TField MARK_JOIN_CONJUNCTS_FIELD_DESC = new org.apache.thrift.protocol.TField("mark_join_conjuncts", org.apache.thrift.protocol.TType.LIST, (short)13);
private static final org.apache.thrift.protocol.TField USE_SPECIFIC_PROJECTIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("use_specific_projections", org.apache.thrift.protocol.TType.BOOL, (short)14);
private static final org.apache.thrift.protocol.TField MATCH_CONDITION_FIELD_DESC = new org.apache.thrift.protocol.TField("match_condition", org.apache.thrift.protocol.TType.STRUCT, (short)15);
private static final org.apache.thrift.scheme.SchemeFactory STANDARD_SCHEME_FACTORY = new THashJoinNodeStandardSchemeFactory();
private static final org.apache.thrift.scheme.SchemeFactory TUPLE_SCHEME_FACTORY = new THashJoinNodeTupleSchemeFactory();
/**
*
* @see TJoinOp
*/
public @org.apache.thrift.annotation.Nullable TJoinOp join_op; // required
public @org.apache.thrift.annotation.Nullable java.util.List<TEqJoinCondition> eq_join_conjuncts; // required
public @org.apache.thrift.annotation.Nullable java.util.List<org.apache.doris.thrift.TExpr> other_join_conjuncts; // optional
public boolean add_probe_filters; // optional
public @org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr vother_join_conjunct; // optional
public @org.apache.thrift.annotation.Nullable java.util.List<java.lang.Integer> hash_output_slot_ids; // optional
public @org.apache.thrift.annotation.Nullable java.util.List<org.apache.doris.thrift.TExpr> srcExprList; // optional
public int voutput_tuple_id; // optional
public @org.apache.thrift.annotation.Nullable java.util.List<java.lang.Integer> vintermediate_tuple_id_list; // optional
public boolean is_broadcast_join; // optional
public boolean is_mark; // optional
/**
*
* @see TJoinDistributionType
*/
public @org.apache.thrift.annotation.Nullable TJoinDistributionType dist_type; // optional
public @org.apache.thrift.annotation.Nullable java.util.List<org.apache.doris.thrift.TExpr> mark_join_conjuncts; // optional
public boolean use_specific_projections; // optional
public @org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr match_condition; // 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 {
/**
*
* @see TJoinOp
*/
JOIN_OP((short)1, "join_op"),
EQ_JOIN_CONJUNCTS((short)2, "eq_join_conjuncts"),
OTHER_JOIN_CONJUNCTS((short)3, "other_join_conjuncts"),
ADD_PROBE_FILTERS((short)4, "add_probe_filters"),
VOTHER_JOIN_CONJUNCT((short)5, "vother_join_conjunct"),
HASH_OUTPUT_SLOT_IDS((short)6, "hash_output_slot_ids"),
SRC_EXPR_LIST((short)7, "srcExprList"),
VOUTPUT_TUPLE_ID((short)8, "voutput_tuple_id"),
VINTERMEDIATE_TUPLE_ID_LIST((short)9, "vintermediate_tuple_id_list"),
IS_BROADCAST_JOIN((short)10, "is_broadcast_join"),
IS_MARK((short)11, "is_mark"),
/**
*
* @see TJoinDistributionType
*/
DIST_TYPE((short)12, "dist_type"),
MARK_JOIN_CONJUNCTS((short)13, "mark_join_conjuncts"),
USE_SPECIFIC_PROJECTIONS((short)14, "use_specific_projections"),
MATCH_CONDITION((short)15, "match_condition");
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: // JOIN_OP
return JOIN_OP;
case 2: // EQ_JOIN_CONJUNCTS
return EQ_JOIN_CONJUNCTS;
case 3: // OTHER_JOIN_CONJUNCTS
return OTHER_JOIN_CONJUNCTS;
case 4: // ADD_PROBE_FILTERS
return ADD_PROBE_FILTERS;
case 5: // VOTHER_JOIN_CONJUNCT
return VOTHER_JOIN_CONJUNCT;
case 6: // HASH_OUTPUT_SLOT_IDS
return HASH_OUTPUT_SLOT_IDS;
case 7: // SRC_EXPR_LIST
return SRC_EXPR_LIST;
case 8: // VOUTPUT_TUPLE_ID
return VOUTPUT_TUPLE_ID;
case 9: // VINTERMEDIATE_TUPLE_ID_LIST
return VINTERMEDIATE_TUPLE_ID_LIST;
case 10: // IS_BROADCAST_JOIN
return IS_BROADCAST_JOIN;
case 11: // IS_MARK
return IS_MARK;
case 12: // DIST_TYPE
return DIST_TYPE;
case 13: // MARK_JOIN_CONJUNCTS
return MARK_JOIN_CONJUNCTS;
case 14: // USE_SPECIFIC_PROJECTIONS
return USE_SPECIFIC_PROJECTIONS;
case 15: // MATCH_CONDITION
return MATCH_CONDITION;
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 __ADD_PROBE_FILTERS_ISSET_ID = 0;
private static final int __VOUTPUT_TUPLE_ID_ISSET_ID = 1;
private static final int __IS_BROADCAST_JOIN_ISSET_ID = 2;
private static final int __IS_MARK_ISSET_ID = 3;
private static final int __USE_SPECIFIC_PROJECTIONS_ISSET_ID = 4;
private byte __isset_bitfield = 0;
private static final _Fields optionals[] = {_Fields.OTHER_JOIN_CONJUNCTS,_Fields.ADD_PROBE_FILTERS,_Fields.VOTHER_JOIN_CONJUNCT,_Fields.HASH_OUTPUT_SLOT_IDS,_Fields.SRC_EXPR_LIST,_Fields.VOUTPUT_TUPLE_ID,_Fields.VINTERMEDIATE_TUPLE_ID_LIST,_Fields.IS_BROADCAST_JOIN,_Fields.IS_MARK,_Fields.DIST_TYPE,_Fields.MARK_JOIN_CONJUNCTS,_Fields.USE_SPECIFIC_PROJECTIONS,_Fields.MATCH_CONDITION};
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.JOIN_OP, new org.apache.thrift.meta_data.FieldMetaData("join_op", org.apache.thrift.TFieldRequirementType.REQUIRED,
new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, TJoinOp.class)));
tmpMap.put(_Fields.EQ_JOIN_CONJUNCTS, new org.apache.thrift.meta_data.FieldMetaData("eq_join_conjuncts", org.apache.thrift.TFieldRequirementType.REQUIRED,
new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, TEqJoinCondition.class))));
tmpMap.put(_Fields.OTHER_JOIN_CONJUNCTS, new org.apache.thrift.meta_data.FieldMetaData("other_join_conjuncts", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.doris.thrift.TExpr.class))));
tmpMap.put(_Fields.ADD_PROBE_FILTERS, new org.apache.thrift.meta_data.FieldMetaData("add_probe_filters", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
tmpMap.put(_Fields.VOTHER_JOIN_CONJUNCT, new org.apache.thrift.meta_data.FieldMetaData("vother_join_conjunct", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.doris.thrift.TExpr.class)));
tmpMap.put(_Fields.HASH_OUTPUT_SLOT_IDS, new org.apache.thrift.meta_data.FieldMetaData("hash_output_slot_ids", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32 , "TSlotId"))));
tmpMap.put(_Fields.SRC_EXPR_LIST, new org.apache.thrift.meta_data.FieldMetaData("srcExprList", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.doris.thrift.TExpr.class))));
tmpMap.put(_Fields.VOUTPUT_TUPLE_ID, new org.apache.thrift.meta_data.FieldMetaData("voutput_tuple_id", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32 , "TTupleId")));
tmpMap.put(_Fields.VINTERMEDIATE_TUPLE_ID_LIST, new org.apache.thrift.meta_data.FieldMetaData("vintermediate_tuple_id_list", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32 , "TTupleId"))));
tmpMap.put(_Fields.IS_BROADCAST_JOIN, new org.apache.thrift.meta_data.FieldMetaData("is_broadcast_join", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
tmpMap.put(_Fields.IS_MARK, new org.apache.thrift.meta_data.FieldMetaData("is_mark", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
tmpMap.put(_Fields.DIST_TYPE, new org.apache.thrift.meta_data.FieldMetaData("dist_type", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, TJoinDistributionType.class)));
tmpMap.put(_Fields.MARK_JOIN_CONJUNCTS, new org.apache.thrift.meta_data.FieldMetaData("mark_join_conjuncts", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.doris.thrift.TExpr.class))));
tmpMap.put(_Fields.USE_SPECIFIC_PROJECTIONS, new org.apache.thrift.meta_data.FieldMetaData("use_specific_projections", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
tmpMap.put(_Fields.MATCH_CONDITION, new org.apache.thrift.meta_data.FieldMetaData("match_condition", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.doris.thrift.TExpr.class)));
metaDataMap = java.util.Collections.unmodifiableMap(tmpMap);
org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(THashJoinNode.class, metaDataMap);
}
public THashJoinNode() {
}
public THashJoinNode(
TJoinOp join_op,
java.util.List<TEqJoinCondition> eq_join_conjuncts)
{
this();
this.join_op = join_op;
this.eq_join_conjuncts = eq_join_conjuncts;
}
/**
* Performs a deep copy on <i>other</i>.
*/
public THashJoinNode(THashJoinNode other) {
__isset_bitfield = other.__isset_bitfield;
if (other.isSetJoinOp()) {
this.join_op = other.join_op;
}
if (other.isSetEqJoinConjuncts()) {
java.util.List<TEqJoinCondition> __this__eq_join_conjuncts = new java.util.ArrayList<TEqJoinCondition>(other.eq_join_conjuncts.size());
for (TEqJoinCondition other_element : other.eq_join_conjuncts) {
__this__eq_join_conjuncts.add(new TEqJoinCondition(other_element));
}
this.eq_join_conjuncts = __this__eq_join_conjuncts;
}
if (other.isSetOtherJoinConjuncts()) {
java.util.List<org.apache.doris.thrift.TExpr> __this__other_join_conjuncts = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(other.other_join_conjuncts.size());
for (org.apache.doris.thrift.TExpr other_element : other.other_join_conjuncts) {
__this__other_join_conjuncts.add(new org.apache.doris.thrift.TExpr(other_element));
}
this.other_join_conjuncts = __this__other_join_conjuncts;
}
this.add_probe_filters = other.add_probe_filters;
if (other.isSetVotherJoinConjunct()) {
this.vother_join_conjunct = new org.apache.doris.thrift.TExpr(other.vother_join_conjunct);
}
if (other.isSetHashOutputSlotIds()) {
java.util.List<java.lang.Integer> __this__hash_output_slot_ids = new java.util.ArrayList<java.lang.Integer>(other.hash_output_slot_ids.size());
for (java.lang.Integer other_element : other.hash_output_slot_ids) {
__this__hash_output_slot_ids.add(other_element);
}
this.hash_output_slot_ids = __this__hash_output_slot_ids;
}
if (other.isSetSrcExprList()) {
java.util.List<org.apache.doris.thrift.TExpr> __this__srcExprList = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(other.srcExprList.size());
for (org.apache.doris.thrift.TExpr other_element : other.srcExprList) {
__this__srcExprList.add(new org.apache.doris.thrift.TExpr(other_element));
}
this.srcExprList = __this__srcExprList;
}
this.voutput_tuple_id = other.voutput_tuple_id;
if (other.isSetVintermediateTupleIdList()) {
java.util.List<java.lang.Integer> __this__vintermediate_tuple_id_list = new java.util.ArrayList<java.lang.Integer>(other.vintermediate_tuple_id_list.size());
for (java.lang.Integer other_element : other.vintermediate_tuple_id_list) {
__this__vintermediate_tuple_id_list.add(other_element);
}
this.vintermediate_tuple_id_list = __this__vintermediate_tuple_id_list;
}
this.is_broadcast_join = other.is_broadcast_join;
this.is_mark = other.is_mark;
if (other.isSetDistType()) {
this.dist_type = other.dist_type;
}
if (other.isSetMarkJoinConjuncts()) {
java.util.List<org.apache.doris.thrift.TExpr> __this__mark_join_conjuncts = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(other.mark_join_conjuncts.size());
for (org.apache.doris.thrift.TExpr other_element : other.mark_join_conjuncts) {
__this__mark_join_conjuncts.add(new org.apache.doris.thrift.TExpr(other_element));
}
this.mark_join_conjuncts = __this__mark_join_conjuncts;
}
this.use_specific_projections = other.use_specific_projections;
if (other.isSetMatchCondition()) {
this.match_condition = new org.apache.doris.thrift.TExpr(other.match_condition);
}
}
public THashJoinNode deepCopy() {
return new THashJoinNode(this);
}
@Override
public void clear() {
this.join_op = null;
this.eq_join_conjuncts = null;
this.other_join_conjuncts = null;
setAddProbeFiltersIsSet(false);
this.add_probe_filters = false;
this.vother_join_conjunct = null;
this.hash_output_slot_ids = null;
this.srcExprList = null;
setVoutputTupleIdIsSet(false);
this.voutput_tuple_id = 0;
this.vintermediate_tuple_id_list = null;
setIsBroadcastJoinIsSet(false);
this.is_broadcast_join = false;
setIsMarkIsSet(false);
this.is_mark = false;
this.dist_type = null;
this.mark_join_conjuncts = null;
setUseSpecificProjectionsIsSet(false);
this.use_specific_projections = false;
this.match_condition = null;
}
/**
*
* @see TJoinOp
*/
@org.apache.thrift.annotation.Nullable
public TJoinOp getJoinOp() {
return this.join_op;
}
/**
*
* @see TJoinOp
*/
public THashJoinNode setJoinOp(@org.apache.thrift.annotation.Nullable TJoinOp join_op) {
this.join_op = join_op;
return this;
}
public void unsetJoinOp() {
this.join_op = null;
}
/** Returns true if field join_op is set (has been assigned a value) and false otherwise */
public boolean isSetJoinOp() {
return this.join_op != null;
}
public void setJoinOpIsSet(boolean value) {
if (!value) {
this.join_op = null;
}
}
public int getEqJoinConjunctsSize() {
return (this.eq_join_conjuncts == null) ? 0 : this.eq_join_conjuncts.size();
}
@org.apache.thrift.annotation.Nullable
public java.util.Iterator<TEqJoinCondition> getEqJoinConjunctsIterator() {
return (this.eq_join_conjuncts == null) ? null : this.eq_join_conjuncts.iterator();
}
public void addToEqJoinConjuncts(TEqJoinCondition elem) {
if (this.eq_join_conjuncts == null) {
this.eq_join_conjuncts = new java.util.ArrayList<TEqJoinCondition>();
}
this.eq_join_conjuncts.add(elem);
}
@org.apache.thrift.annotation.Nullable
public java.util.List<TEqJoinCondition> getEqJoinConjuncts() {
return this.eq_join_conjuncts;
}
public THashJoinNode setEqJoinConjuncts(@org.apache.thrift.annotation.Nullable java.util.List<TEqJoinCondition> eq_join_conjuncts) {
this.eq_join_conjuncts = eq_join_conjuncts;
return this;
}
public void unsetEqJoinConjuncts() {
this.eq_join_conjuncts = null;
}
/** Returns true if field eq_join_conjuncts is set (has been assigned a value) and false otherwise */
public boolean isSetEqJoinConjuncts() {
return this.eq_join_conjuncts != null;
}
public void setEqJoinConjunctsIsSet(boolean value) {
if (!value) {
this.eq_join_conjuncts = null;
}
}
public int getOtherJoinConjunctsSize() {
return (this.other_join_conjuncts == null) ? 0 : this.other_join_conjuncts.size();
}
@org.apache.thrift.annotation.Nullable
public java.util.Iterator<org.apache.doris.thrift.TExpr> getOtherJoinConjunctsIterator() {
return (this.other_join_conjuncts == null) ? null : this.other_join_conjuncts.iterator();
}
public void addToOtherJoinConjuncts(org.apache.doris.thrift.TExpr elem) {
if (this.other_join_conjuncts == null) {
this.other_join_conjuncts = new java.util.ArrayList<org.apache.doris.thrift.TExpr>();
}
this.other_join_conjuncts.add(elem);
}
@org.apache.thrift.annotation.Nullable
public java.util.List<org.apache.doris.thrift.TExpr> getOtherJoinConjuncts() {
return this.other_join_conjuncts;
}
public THashJoinNode setOtherJoinConjuncts(@org.apache.thrift.annotation.Nullable java.util.List<org.apache.doris.thrift.TExpr> other_join_conjuncts) {
this.other_join_conjuncts = other_join_conjuncts;
return this;
}
public void unsetOtherJoinConjuncts() {
this.other_join_conjuncts = null;
}
/** Returns true if field other_join_conjuncts is set (has been assigned a value) and false otherwise */
public boolean isSetOtherJoinConjuncts() {
return this.other_join_conjuncts != null;
}
public void setOtherJoinConjunctsIsSet(boolean value) {
if (!value) {
this.other_join_conjuncts = null;
}
}
public boolean isAddProbeFilters() {
return this.add_probe_filters;
}
public THashJoinNode setAddProbeFilters(boolean add_probe_filters) {
this.add_probe_filters = add_probe_filters;
setAddProbeFiltersIsSet(true);
return this;
}
public void unsetAddProbeFilters() {
__isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __ADD_PROBE_FILTERS_ISSET_ID);
}
/** Returns true if field add_probe_filters is set (has been assigned a value) and false otherwise */
public boolean isSetAddProbeFilters() {
return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __ADD_PROBE_FILTERS_ISSET_ID);
}
public void setAddProbeFiltersIsSet(boolean value) {
__isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __ADD_PROBE_FILTERS_ISSET_ID, value);
}
@org.apache.thrift.annotation.Nullable
public org.apache.doris.thrift.TExpr getVotherJoinConjunct() {
return this.vother_join_conjunct;
}
public THashJoinNode setVotherJoinConjunct(@org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr vother_join_conjunct) {
this.vother_join_conjunct = vother_join_conjunct;
return this;
}
public void unsetVotherJoinConjunct() {
this.vother_join_conjunct = null;
}
/** Returns true if field vother_join_conjunct is set (has been assigned a value) and false otherwise */
public boolean isSetVotherJoinConjunct() {
return this.vother_join_conjunct != null;
}
public void setVotherJoinConjunctIsSet(boolean value) {
if (!value) {
this.vother_join_conjunct = null;
}
}
public int getHashOutputSlotIdsSize() {
return (this.hash_output_slot_ids == null) ? 0 : this.hash_output_slot_ids.size();
}
@org.apache.thrift.annotation.Nullable
public java.util.Iterator<java.lang.Integer> getHashOutputSlotIdsIterator() {
return (this.hash_output_slot_ids == null) ? null : this.hash_output_slot_ids.iterator();
}
public void addToHashOutputSlotIds(int elem) {
if (this.hash_output_slot_ids == null) {
this.hash_output_slot_ids = new java.util.ArrayList<java.lang.Integer>();
}
this.hash_output_slot_ids.add(elem);
}
@org.apache.thrift.annotation.Nullable
public java.util.List<java.lang.Integer> getHashOutputSlotIds() {
return this.hash_output_slot_ids;
}
public THashJoinNode setHashOutputSlotIds(@org.apache.thrift.annotation.Nullable java.util.List<java.lang.Integer> hash_output_slot_ids) {
this.hash_output_slot_ids = hash_output_slot_ids;
return this;
}
public void unsetHashOutputSlotIds() {
this.hash_output_slot_ids = null;
}
/** Returns true if field hash_output_slot_ids is set (has been assigned a value) and false otherwise */
public boolean isSetHashOutputSlotIds() {
return this.hash_output_slot_ids != null;
}
public void setHashOutputSlotIdsIsSet(boolean value) {
if (!value) {
this.hash_output_slot_ids = null;
}
}
public int getSrcExprListSize() {
return (this.srcExprList == null) ? 0 : this.srcExprList.size();
}
@org.apache.thrift.annotation.Nullable
public java.util.Iterator<org.apache.doris.thrift.TExpr> getSrcExprListIterator() {
return (this.srcExprList == null) ? null : this.srcExprList.iterator();
}
public void addToSrcExprList(org.apache.doris.thrift.TExpr elem) {
if (this.srcExprList == null) {
this.srcExprList = new java.util.ArrayList<org.apache.doris.thrift.TExpr>();
}
this.srcExprList.add(elem);
}
@org.apache.thrift.annotation.Nullable
public java.util.List<org.apache.doris.thrift.TExpr> getSrcExprList() {
return this.srcExprList;
}
public THashJoinNode setSrcExprList(@org.apache.thrift.annotation.Nullable java.util.List<org.apache.doris.thrift.TExpr> srcExprList) {
this.srcExprList = srcExprList;
return this;
}
public void unsetSrcExprList() {
this.srcExprList = null;
}
/** Returns true if field srcExprList is set (has been assigned a value) and false otherwise */
public boolean isSetSrcExprList() {
return this.srcExprList != null;
}
public void setSrcExprListIsSet(boolean value) {
if (!value) {
this.srcExprList = null;
}
}
public int getVoutputTupleId() {
return this.voutput_tuple_id;
}
public THashJoinNode setVoutputTupleId(int voutput_tuple_id) {
this.voutput_tuple_id = voutput_tuple_id;
setVoutputTupleIdIsSet(true);
return this;
}
public void unsetVoutputTupleId() {
__isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __VOUTPUT_TUPLE_ID_ISSET_ID);
}
/** Returns true if field voutput_tuple_id is set (has been assigned a value) and false otherwise */
public boolean isSetVoutputTupleId() {
return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __VOUTPUT_TUPLE_ID_ISSET_ID);
}
public void setVoutputTupleIdIsSet(boolean value) {
__isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __VOUTPUT_TUPLE_ID_ISSET_ID, value);
}
public int getVintermediateTupleIdListSize() {
return (this.vintermediate_tuple_id_list == null) ? 0 : this.vintermediate_tuple_id_list.size();
}
@org.apache.thrift.annotation.Nullable
public java.util.Iterator<java.lang.Integer> getVintermediateTupleIdListIterator() {
return (this.vintermediate_tuple_id_list == null) ? null : this.vintermediate_tuple_id_list.iterator();
}
public void addToVintermediateTupleIdList(int elem) {
if (this.vintermediate_tuple_id_list == null) {
this.vintermediate_tuple_id_list = new java.util.ArrayList<java.lang.Integer>();
}
this.vintermediate_tuple_id_list.add(elem);
}
@org.apache.thrift.annotation.Nullable
public java.util.List<java.lang.Integer> getVintermediateTupleIdList() {
return this.vintermediate_tuple_id_list;
}
public THashJoinNode setVintermediateTupleIdList(@org.apache.thrift.annotation.Nullable java.util.List<java.lang.Integer> vintermediate_tuple_id_list) {
this.vintermediate_tuple_id_list = vintermediate_tuple_id_list;
return this;
}
public void unsetVintermediateTupleIdList() {
this.vintermediate_tuple_id_list = null;
}
/** Returns true if field vintermediate_tuple_id_list is set (has been assigned a value) and false otherwise */
public boolean isSetVintermediateTupleIdList() {
return this.vintermediate_tuple_id_list != null;
}
public void setVintermediateTupleIdListIsSet(boolean value) {
if (!value) {
this.vintermediate_tuple_id_list = null;
}
}
public boolean isIsBroadcastJoin() {
return this.is_broadcast_join;
}
public THashJoinNode setIsBroadcastJoin(boolean is_broadcast_join) {
this.is_broadcast_join = is_broadcast_join;
setIsBroadcastJoinIsSet(true);
return this;
}
public void unsetIsBroadcastJoin() {
__isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __IS_BROADCAST_JOIN_ISSET_ID);
}
/** Returns true if field is_broadcast_join is set (has been assigned a value) and false otherwise */
public boolean isSetIsBroadcastJoin() {
return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __IS_BROADCAST_JOIN_ISSET_ID);
}
public void setIsBroadcastJoinIsSet(boolean value) {
__isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __IS_BROADCAST_JOIN_ISSET_ID, value);
}
public boolean isIsMark() {
return this.is_mark;
}
public THashJoinNode setIsMark(boolean is_mark) {
this.is_mark = is_mark;
setIsMarkIsSet(true);
return this;
}
public void unsetIsMark() {
__isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __IS_MARK_ISSET_ID);
}
/** Returns true if field is_mark is set (has been assigned a value) and false otherwise */
public boolean isSetIsMark() {
return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __IS_MARK_ISSET_ID);
}
public void setIsMarkIsSet(boolean value) {
__isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __IS_MARK_ISSET_ID, value);
}
/**
*
* @see TJoinDistributionType
*/
@org.apache.thrift.annotation.Nullable
public TJoinDistributionType getDistType() {
return this.dist_type;
}
/**
*
* @see TJoinDistributionType
*/
public THashJoinNode setDistType(@org.apache.thrift.annotation.Nullable TJoinDistributionType dist_type) {
this.dist_type = dist_type;
return this;
}
public void unsetDistType() {
this.dist_type = null;
}
/** Returns true if field dist_type is set (has been assigned a value) and false otherwise */
public boolean isSetDistType() {
return this.dist_type != null;
}
public void setDistTypeIsSet(boolean value) {
if (!value) {
this.dist_type = null;
}
}
public int getMarkJoinConjunctsSize() {
return (this.mark_join_conjuncts == null) ? 0 : this.mark_join_conjuncts.size();
}
@org.apache.thrift.annotation.Nullable
public java.util.Iterator<org.apache.doris.thrift.TExpr> getMarkJoinConjunctsIterator() {
return (this.mark_join_conjuncts == null) ? null : this.mark_join_conjuncts.iterator();
}
public void addToMarkJoinConjuncts(org.apache.doris.thrift.TExpr elem) {
if (this.mark_join_conjuncts == null) {
this.mark_join_conjuncts = new java.util.ArrayList<org.apache.doris.thrift.TExpr>();
}
this.mark_join_conjuncts.add(elem);
}
@org.apache.thrift.annotation.Nullable
public java.util.List<org.apache.doris.thrift.TExpr> getMarkJoinConjuncts() {
return this.mark_join_conjuncts;
}
public THashJoinNode setMarkJoinConjuncts(@org.apache.thrift.annotation.Nullable java.util.List<org.apache.doris.thrift.TExpr> mark_join_conjuncts) {
this.mark_join_conjuncts = mark_join_conjuncts;
return this;
}
public void unsetMarkJoinConjuncts() {
this.mark_join_conjuncts = null;
}
/** Returns true if field mark_join_conjuncts is set (has been assigned a value) and false otherwise */
public boolean isSetMarkJoinConjuncts() {
return this.mark_join_conjuncts != null;
}
public void setMarkJoinConjunctsIsSet(boolean value) {
if (!value) {
this.mark_join_conjuncts = null;
}
}
public boolean isUseSpecificProjections() {
return this.use_specific_projections;
}
public THashJoinNode setUseSpecificProjections(boolean use_specific_projections) {
this.use_specific_projections = use_specific_projections;
setUseSpecificProjectionsIsSet(true);
return this;
}
public void unsetUseSpecificProjections() {
__isset_bitfield = org.apache.thrift.EncodingUtils.clearBit(__isset_bitfield, __USE_SPECIFIC_PROJECTIONS_ISSET_ID);
}
/** Returns true if field use_specific_projections is set (has been assigned a value) and false otherwise */
public boolean isSetUseSpecificProjections() {
return org.apache.thrift.EncodingUtils.testBit(__isset_bitfield, __USE_SPECIFIC_PROJECTIONS_ISSET_ID);
}
public void setUseSpecificProjectionsIsSet(boolean value) {
__isset_bitfield = org.apache.thrift.EncodingUtils.setBit(__isset_bitfield, __USE_SPECIFIC_PROJECTIONS_ISSET_ID, value);
}
@org.apache.thrift.annotation.Nullable
public org.apache.doris.thrift.TExpr getMatchCondition() {
return this.match_condition;
}
public THashJoinNode setMatchCondition(@org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr match_condition) {
this.match_condition = match_condition;
return this;
}
public void unsetMatchCondition() {
this.match_condition = null;
}
/** Returns true if field match_condition is set (has been assigned a value) and false otherwise */
public boolean isSetMatchCondition() {
return this.match_condition != null;
}
public void setMatchConditionIsSet(boolean value) {
if (!value) {
this.match_condition = null;
}
}
public void setFieldValue(_Fields field, @org.apache.thrift.annotation.Nullable java.lang.Object value) {
switch (field) {
case JOIN_OP:
if (value == null) {
unsetJoinOp();
} else {
setJoinOp((TJoinOp)value);
}
break;
case EQ_JOIN_CONJUNCTS:
if (value == null) {
unsetEqJoinConjuncts();
} else {
setEqJoinConjuncts((java.util.List<TEqJoinCondition>)value);
}
break;
case OTHER_JOIN_CONJUNCTS:
if (value == null) {
unsetOtherJoinConjuncts();
} else {
setOtherJoinConjuncts((java.util.List<org.apache.doris.thrift.TExpr>)value);
}
break;
case ADD_PROBE_FILTERS:
if (value == null) {
unsetAddProbeFilters();
} else {
setAddProbeFilters((java.lang.Boolean)value);
}
break;
case VOTHER_JOIN_CONJUNCT:
if (value == null) {
unsetVotherJoinConjunct();
} else {
setVotherJoinConjunct((org.apache.doris.thrift.TExpr)value);
}
break;
case HASH_OUTPUT_SLOT_IDS:
if (value == null) {
unsetHashOutputSlotIds();
} else {
setHashOutputSlotIds((java.util.List<java.lang.Integer>)value);
}
break;
case SRC_EXPR_LIST:
if (value == null) {
unsetSrcExprList();
} else {
setSrcExprList((java.util.List<org.apache.doris.thrift.TExpr>)value);
}
break;
case VOUTPUT_TUPLE_ID:
if (value == null) {
unsetVoutputTupleId();
} else {
setVoutputTupleId((java.lang.Integer)value);
}
break;
case VINTERMEDIATE_TUPLE_ID_LIST:
if (value == null) {
unsetVintermediateTupleIdList();
} else {
setVintermediateTupleIdList((java.util.List<java.lang.Integer>)value);
}
break;
case IS_BROADCAST_JOIN:
if (value == null) {
unsetIsBroadcastJoin();
} else {
setIsBroadcastJoin((java.lang.Boolean)value);
}
break;
case IS_MARK:
if (value == null) {
unsetIsMark();
} else {
setIsMark((java.lang.Boolean)value);
}
break;
case DIST_TYPE:
if (value == null) {
unsetDistType();
} else {
setDistType((TJoinDistributionType)value);
}
break;
case MARK_JOIN_CONJUNCTS:
if (value == null) {
unsetMarkJoinConjuncts();
} else {
setMarkJoinConjuncts((java.util.List<org.apache.doris.thrift.TExpr>)value);
}
break;
case USE_SPECIFIC_PROJECTIONS:
if (value == null) {
unsetUseSpecificProjections();
} else {
setUseSpecificProjections((java.lang.Boolean)value);
}
break;
case MATCH_CONDITION:
if (value == null) {
unsetMatchCondition();
} else {
setMatchCondition((org.apache.doris.thrift.TExpr)value);
}
break;
}
}
@org.apache.thrift.annotation.Nullable
public java.lang.Object getFieldValue(_Fields field) {
switch (field) {
case JOIN_OP:
return getJoinOp();
case EQ_JOIN_CONJUNCTS:
return getEqJoinConjuncts();
case OTHER_JOIN_CONJUNCTS:
return getOtherJoinConjuncts();
case ADD_PROBE_FILTERS:
return isAddProbeFilters();
case VOTHER_JOIN_CONJUNCT:
return getVotherJoinConjunct();
case HASH_OUTPUT_SLOT_IDS:
return getHashOutputSlotIds();
case SRC_EXPR_LIST:
return getSrcExprList();
case VOUTPUT_TUPLE_ID:
return getVoutputTupleId();
case VINTERMEDIATE_TUPLE_ID_LIST:
return getVintermediateTupleIdList();
case IS_BROADCAST_JOIN:
return isIsBroadcastJoin();
case IS_MARK:
return isIsMark();
case DIST_TYPE:
return getDistType();
case MARK_JOIN_CONJUNCTS:
return getMarkJoinConjuncts();
case USE_SPECIFIC_PROJECTIONS:
return isUseSpecificProjections();
case MATCH_CONDITION:
return getMatchCondition();
}
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 JOIN_OP:
return isSetJoinOp();
case EQ_JOIN_CONJUNCTS:
return isSetEqJoinConjuncts();
case OTHER_JOIN_CONJUNCTS:
return isSetOtherJoinConjuncts();
case ADD_PROBE_FILTERS:
return isSetAddProbeFilters();
case VOTHER_JOIN_CONJUNCT:
return isSetVotherJoinConjunct();
case HASH_OUTPUT_SLOT_IDS:
return isSetHashOutputSlotIds();
case SRC_EXPR_LIST:
return isSetSrcExprList();
case VOUTPUT_TUPLE_ID:
return isSetVoutputTupleId();
case VINTERMEDIATE_TUPLE_ID_LIST:
return isSetVintermediateTupleIdList();
case IS_BROADCAST_JOIN:
return isSetIsBroadcastJoin();
case IS_MARK:
return isSetIsMark();
case DIST_TYPE:
return isSetDistType();
case MARK_JOIN_CONJUNCTS:
return isSetMarkJoinConjuncts();
case USE_SPECIFIC_PROJECTIONS:
return isSetUseSpecificProjections();
case MATCH_CONDITION:
return isSetMatchCondition();
}
throw new java.lang.IllegalStateException();
}
@Override
public boolean equals(java.lang.Object that) {
if (that instanceof THashJoinNode)
return this.equals((THashJoinNode)that);
return false;
}
public boolean equals(THashJoinNode that) {
if (that == null)
return false;
if (this == that)
return true;
boolean this_present_join_op = true && this.isSetJoinOp();
boolean that_present_join_op = true && that.isSetJoinOp();
if (this_present_join_op || that_present_join_op) {
if (!(this_present_join_op && that_present_join_op))
return false;
if (!this.join_op.equals(that.join_op))
return false;
}
boolean this_present_eq_join_conjuncts = true && this.isSetEqJoinConjuncts();
boolean that_present_eq_join_conjuncts = true && that.isSetEqJoinConjuncts();
if (this_present_eq_join_conjuncts || that_present_eq_join_conjuncts) {
if (!(this_present_eq_join_conjuncts && that_present_eq_join_conjuncts))
return false;
if (!this.eq_join_conjuncts.equals(that.eq_join_conjuncts))
return false;
}
boolean this_present_other_join_conjuncts = true && this.isSetOtherJoinConjuncts();
boolean that_present_other_join_conjuncts = true && that.isSetOtherJoinConjuncts();
if (this_present_other_join_conjuncts || that_present_other_join_conjuncts) {
if (!(this_present_other_join_conjuncts && that_present_other_join_conjuncts))
return false;
if (!this.other_join_conjuncts.equals(that.other_join_conjuncts))
return false;
}
boolean this_present_add_probe_filters = true && this.isSetAddProbeFilters();
boolean that_present_add_probe_filters = true && that.isSetAddProbeFilters();
if (this_present_add_probe_filters || that_present_add_probe_filters) {
if (!(this_present_add_probe_filters && that_present_add_probe_filters))
return false;
if (this.add_probe_filters != that.add_probe_filters)
return false;
}
boolean this_present_vother_join_conjunct = true && this.isSetVotherJoinConjunct();
boolean that_present_vother_join_conjunct = true && that.isSetVotherJoinConjunct();
if (this_present_vother_join_conjunct || that_present_vother_join_conjunct) {
if (!(this_present_vother_join_conjunct && that_present_vother_join_conjunct))
return false;
if (!this.vother_join_conjunct.equals(that.vother_join_conjunct))
return false;
}
boolean this_present_hash_output_slot_ids = true && this.isSetHashOutputSlotIds();
boolean that_present_hash_output_slot_ids = true && that.isSetHashOutputSlotIds();
if (this_present_hash_output_slot_ids || that_present_hash_output_slot_ids) {
if (!(this_present_hash_output_slot_ids && that_present_hash_output_slot_ids))
return false;
if (!this.hash_output_slot_ids.equals(that.hash_output_slot_ids))
return false;
}
boolean this_present_srcExprList = true && this.isSetSrcExprList();
boolean that_present_srcExprList = true && that.isSetSrcExprList();
if (this_present_srcExprList || that_present_srcExprList) {
if (!(this_present_srcExprList && that_present_srcExprList))
return false;
if (!this.srcExprList.equals(that.srcExprList))
return false;
}
boolean this_present_voutput_tuple_id = true && this.isSetVoutputTupleId();
boolean that_present_voutput_tuple_id = true && that.isSetVoutputTupleId();
if (this_present_voutput_tuple_id || that_present_voutput_tuple_id) {
if (!(this_present_voutput_tuple_id && that_present_voutput_tuple_id))
return false;
if (this.voutput_tuple_id != that.voutput_tuple_id)
return false;
}
boolean this_present_vintermediate_tuple_id_list = true && this.isSetVintermediateTupleIdList();
boolean that_present_vintermediate_tuple_id_list = true && that.isSetVintermediateTupleIdList();
if (this_present_vintermediate_tuple_id_list || that_present_vintermediate_tuple_id_list) {
if (!(this_present_vintermediate_tuple_id_list && that_present_vintermediate_tuple_id_list))
return false;
if (!this.vintermediate_tuple_id_list.equals(that.vintermediate_tuple_id_list))
return false;
}
boolean this_present_is_broadcast_join = true && this.isSetIsBroadcastJoin();
boolean that_present_is_broadcast_join = true && that.isSetIsBroadcastJoin();
if (this_present_is_broadcast_join || that_present_is_broadcast_join) {
if (!(this_present_is_broadcast_join && that_present_is_broadcast_join))
return false;
if (this.is_broadcast_join != that.is_broadcast_join)
return false;
}
boolean this_present_is_mark = true && this.isSetIsMark();
boolean that_present_is_mark = true && that.isSetIsMark();
if (this_present_is_mark || that_present_is_mark) {
if (!(this_present_is_mark && that_present_is_mark))
return false;
if (this.is_mark != that.is_mark)
return false;
}
boolean this_present_dist_type = true && this.isSetDistType();
boolean that_present_dist_type = true && that.isSetDistType();
if (this_present_dist_type || that_present_dist_type) {
if (!(this_present_dist_type && that_present_dist_type))
return false;
if (!this.dist_type.equals(that.dist_type))
return false;
}
boolean this_present_mark_join_conjuncts = true && this.isSetMarkJoinConjuncts();
boolean that_present_mark_join_conjuncts = true && that.isSetMarkJoinConjuncts();
if (this_present_mark_join_conjuncts || that_present_mark_join_conjuncts) {
if (!(this_present_mark_join_conjuncts && that_present_mark_join_conjuncts))
return false;
if (!this.mark_join_conjuncts.equals(that.mark_join_conjuncts))
return false;
}
boolean this_present_use_specific_projections = true && this.isSetUseSpecificProjections();
boolean that_present_use_specific_projections = true && that.isSetUseSpecificProjections();
if (this_present_use_specific_projections || that_present_use_specific_projections) {
if (!(this_present_use_specific_projections && that_present_use_specific_projections))
return false;
if (this.use_specific_projections != that.use_specific_projections)
return false;
}
boolean this_present_match_condition = true && this.isSetMatchCondition();
boolean that_present_match_condition = true && that.isSetMatchCondition();
if (this_present_match_condition || that_present_match_condition) {
if (!(this_present_match_condition && that_present_match_condition))
return false;
if (!this.match_condition.equals(that.match_condition))
return false;
}
return true;
}
@Override
public int hashCode() {
int hashCode = 1;
hashCode = hashCode * 8191 + ((isSetJoinOp()) ? 131071 : 524287);
if (isSetJoinOp())
hashCode = hashCode * 8191 + join_op.getValue();
hashCode = hashCode * 8191 + ((isSetEqJoinConjuncts()) ? 131071 : 524287);
if (isSetEqJoinConjuncts())
hashCode = hashCode * 8191 + eq_join_conjuncts.hashCode();
hashCode = hashCode * 8191 + ((isSetOtherJoinConjuncts()) ? 131071 : 524287);
if (isSetOtherJoinConjuncts())
hashCode = hashCode * 8191 + other_join_conjuncts.hashCode();
hashCode = hashCode * 8191 + ((isSetAddProbeFilters()) ? 131071 : 524287);
if (isSetAddProbeFilters())
hashCode = hashCode * 8191 + ((add_probe_filters) ? 131071 : 524287);
hashCode = hashCode * 8191 + ((isSetVotherJoinConjunct()) ? 131071 : 524287);
if (isSetVotherJoinConjunct())
hashCode = hashCode * 8191 + vother_join_conjunct.hashCode();
hashCode = hashCode * 8191 + ((isSetHashOutputSlotIds()) ? 131071 : 524287);
if (isSetHashOutputSlotIds())
hashCode = hashCode * 8191 + hash_output_slot_ids.hashCode();
hashCode = hashCode * 8191 + ((isSetSrcExprList()) ? 131071 : 524287);
if (isSetSrcExprList())
hashCode = hashCode * 8191 + srcExprList.hashCode();
hashCode = hashCode * 8191 + ((isSetVoutputTupleId()) ? 131071 : 524287);
if (isSetVoutputTupleId())
hashCode = hashCode * 8191 + voutput_tuple_id;
hashCode = hashCode * 8191 + ((isSetVintermediateTupleIdList()) ? 131071 : 524287);
if (isSetVintermediateTupleIdList())
hashCode = hashCode * 8191 + vintermediate_tuple_id_list.hashCode();
hashCode = hashCode * 8191 + ((isSetIsBroadcastJoin()) ? 131071 : 524287);
if (isSetIsBroadcastJoin())
hashCode = hashCode * 8191 + ((is_broadcast_join) ? 131071 : 524287);
hashCode = hashCode * 8191 + ((isSetIsMark()) ? 131071 : 524287);
if (isSetIsMark())
hashCode = hashCode * 8191 + ((is_mark) ? 131071 : 524287);
hashCode = hashCode * 8191 + ((isSetDistType()) ? 131071 : 524287);
if (isSetDistType())
hashCode = hashCode * 8191 + dist_type.getValue();
hashCode = hashCode * 8191 + ((isSetMarkJoinConjuncts()) ? 131071 : 524287);
if (isSetMarkJoinConjuncts())
hashCode = hashCode * 8191 + mark_join_conjuncts.hashCode();
hashCode = hashCode * 8191 + ((isSetUseSpecificProjections()) ? 131071 : 524287);
if (isSetUseSpecificProjections())
hashCode = hashCode * 8191 + ((use_specific_projections) ? 131071 : 524287);
hashCode = hashCode * 8191 + ((isSetMatchCondition()) ? 131071 : 524287);
if (isSetMatchCondition())
hashCode = hashCode * 8191 + match_condition.hashCode();
return hashCode;
}
@Override
public int compareTo(THashJoinNode other) {
if (!getClass().equals(other.getClass())) {
return getClass().getName().compareTo(other.getClass().getName());
}
int lastComparison = 0;
lastComparison = java.lang.Boolean.compare(isSetJoinOp(), other.isSetJoinOp());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetJoinOp()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.join_op, other.join_op);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetEqJoinConjuncts(), other.isSetEqJoinConjuncts());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetEqJoinConjuncts()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.eq_join_conjuncts, other.eq_join_conjuncts);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetOtherJoinConjuncts(), other.isSetOtherJoinConjuncts());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetOtherJoinConjuncts()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.other_join_conjuncts, other.other_join_conjuncts);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetAddProbeFilters(), other.isSetAddProbeFilters());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetAddProbeFilters()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.add_probe_filters, other.add_probe_filters);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetVotherJoinConjunct(), other.isSetVotherJoinConjunct());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetVotherJoinConjunct()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.vother_join_conjunct, other.vother_join_conjunct);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetHashOutputSlotIds(), other.isSetHashOutputSlotIds());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetHashOutputSlotIds()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hash_output_slot_ids, other.hash_output_slot_ids);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetSrcExprList(), other.isSetSrcExprList());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetSrcExprList()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.srcExprList, other.srcExprList);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetVoutputTupleId(), other.isSetVoutputTupleId());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetVoutputTupleId()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.voutput_tuple_id, other.voutput_tuple_id);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetVintermediateTupleIdList(), other.isSetVintermediateTupleIdList());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetVintermediateTupleIdList()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.vintermediate_tuple_id_list, other.vintermediate_tuple_id_list);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetIsBroadcastJoin(), other.isSetIsBroadcastJoin());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetIsBroadcastJoin()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.is_broadcast_join, other.is_broadcast_join);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetIsMark(), other.isSetIsMark());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetIsMark()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.is_mark, other.is_mark);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetDistType(), other.isSetDistType());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetDistType()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.dist_type, other.dist_type);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetMarkJoinConjuncts(), other.isSetMarkJoinConjuncts());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetMarkJoinConjuncts()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mark_join_conjuncts, other.mark_join_conjuncts);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetUseSpecificProjections(), other.isSetUseSpecificProjections());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetUseSpecificProjections()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.use_specific_projections, other.use_specific_projections);
if (lastComparison != 0) {
return lastComparison;
}
}
lastComparison = java.lang.Boolean.compare(isSetMatchCondition(), other.isSetMatchCondition());
if (lastComparison != 0) {
return lastComparison;
}
if (isSetMatchCondition()) {
lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.match_condition, other.match_condition);
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("THashJoinNode(");
boolean first = true;
sb.append("join_op:");
if (this.join_op == null) {
sb.append("null");
} else {
sb.append(this.join_op);
}
first = false;
if (!first) sb.append(", ");
sb.append("eq_join_conjuncts:");
if (this.eq_join_conjuncts == null) {
sb.append("null");
} else {
sb.append(this.eq_join_conjuncts);
}
first = false;
if (isSetOtherJoinConjuncts()) {
if (!first) sb.append(", ");
sb.append("other_join_conjuncts:");
if (this.other_join_conjuncts == null) {
sb.append("null");
} else {
sb.append(this.other_join_conjuncts);
}
first = false;
}
if (isSetAddProbeFilters()) {
if (!first) sb.append(", ");
sb.append("add_probe_filters:");
sb.append(this.add_probe_filters);
first = false;
}
if (isSetVotherJoinConjunct()) {
if (!first) sb.append(", ");
sb.append("vother_join_conjunct:");
if (this.vother_join_conjunct == null) {
sb.append("null");
} else {
sb.append(this.vother_join_conjunct);
}
first = false;
}
if (isSetHashOutputSlotIds()) {
if (!first) sb.append(", ");
sb.append("hash_output_slot_ids:");
if (this.hash_output_slot_ids == null) {
sb.append("null");
} else {
sb.append(this.hash_output_slot_ids);
}
first = false;
}
if (isSetSrcExprList()) {
if (!first) sb.append(", ");
sb.append("srcExprList:");
if (this.srcExprList == null) {
sb.append("null");
} else {
sb.append(this.srcExprList);
}
first = false;
}
if (isSetVoutputTupleId()) {
if (!first) sb.append(", ");
sb.append("voutput_tuple_id:");
sb.append(this.voutput_tuple_id);
first = false;
}
if (isSetVintermediateTupleIdList()) {
if (!first) sb.append(", ");
sb.append("vintermediate_tuple_id_list:");
if (this.vintermediate_tuple_id_list == null) {
sb.append("null");
} else {
sb.append(this.vintermediate_tuple_id_list);
}
first = false;
}
if (isSetIsBroadcastJoin()) {
if (!first) sb.append(", ");
sb.append("is_broadcast_join:");
sb.append(this.is_broadcast_join);
first = false;
}
if (isSetIsMark()) {
if (!first) sb.append(", ");
sb.append("is_mark:");
sb.append(this.is_mark);
first = false;
}
if (isSetDistType()) {
if (!first) sb.append(", ");
sb.append("dist_type:");
if (this.dist_type == null) {
sb.append("null");
} else {
sb.append(this.dist_type);
}
first = false;
}
if (isSetMarkJoinConjuncts()) {
if (!first) sb.append(", ");
sb.append("mark_join_conjuncts:");
if (this.mark_join_conjuncts == null) {
sb.append("null");
} else {
sb.append(this.mark_join_conjuncts);
}
first = false;
}
if (isSetUseSpecificProjections()) {
if (!first) sb.append(", ");
sb.append("use_specific_projections:");
sb.append(this.use_specific_projections);
first = false;
}
if (isSetMatchCondition()) {
if (!first) sb.append(", ");
sb.append("match_condition:");
if (this.match_condition == null) {
sb.append("null");
} else {
sb.append(this.match_condition);
}
first = false;
}
sb.append(")");
return sb.toString();
}
public void validate() throws org.apache.thrift.TException {
// check for required fields
if (join_op == null) {
throw new org.apache.thrift.protocol.TProtocolException("Required field 'join_op' was not present! Struct: " + toString());
}
if (eq_join_conjuncts == null) {
throw new org.apache.thrift.protocol.TProtocolException("Required field 'eq_join_conjuncts' was not present! Struct: " + toString());
}
// check for sub-struct validity
if (vother_join_conjunct != null) {
vother_join_conjunct.validate();
}
if (match_condition != null) {
match_condition.validate();
}
}
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 THashJoinNodeStandardSchemeFactory implements org.apache.thrift.scheme.SchemeFactory {
public THashJoinNodeStandardScheme getScheme() {
return new THashJoinNodeStandardScheme();
}
}
private static class THashJoinNodeStandardScheme extends org.apache.thrift.scheme.StandardScheme<THashJoinNode> {
public void read(org.apache.thrift.protocol.TProtocol iprot, THashJoinNode 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: // JOIN_OP
if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
struct.join_op = org.apache.doris.thrift.TJoinOp.findByValue(iprot.readI32());
struct.setJoinOpIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 2: // EQ_JOIN_CONJUNCTS
if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
{
org.apache.thrift.protocol.TList _list682 = iprot.readListBegin();
struct.eq_join_conjuncts = new java.util.ArrayList<TEqJoinCondition>(_list682.size);
@org.apache.thrift.annotation.Nullable TEqJoinCondition _elem683;
for (int _i684 = 0; _i684 < _list682.size; ++_i684)
{
_elem683 = new TEqJoinCondition();
_elem683.read(iprot);
struct.eq_join_conjuncts.add(_elem683);
}
iprot.readListEnd();
}
struct.setEqJoinConjunctsIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 3: // OTHER_JOIN_CONJUNCTS
if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
{
org.apache.thrift.protocol.TList _list685 = iprot.readListBegin();
struct.other_join_conjuncts = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(_list685.size);
@org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr _elem686;
for (int _i687 = 0; _i687 < _list685.size; ++_i687)
{
_elem686 = new org.apache.doris.thrift.TExpr();
_elem686.read(iprot);
struct.other_join_conjuncts.add(_elem686);
}
iprot.readListEnd();
}
struct.setOtherJoinConjunctsIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 4: // ADD_PROBE_FILTERS
if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
struct.add_probe_filters = iprot.readBool();
struct.setAddProbeFiltersIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 5: // VOTHER_JOIN_CONJUNCT
if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
struct.vother_join_conjunct = new org.apache.doris.thrift.TExpr();
struct.vother_join_conjunct.read(iprot);
struct.setVotherJoinConjunctIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 6: // HASH_OUTPUT_SLOT_IDS
if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
{
org.apache.thrift.protocol.TList _list688 = iprot.readListBegin();
struct.hash_output_slot_ids = new java.util.ArrayList<java.lang.Integer>(_list688.size);
int _elem689;
for (int _i690 = 0; _i690 < _list688.size; ++_i690)
{
_elem689 = iprot.readI32();
struct.hash_output_slot_ids.add(_elem689);
}
iprot.readListEnd();
}
struct.setHashOutputSlotIdsIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 7: // SRC_EXPR_LIST
if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
{
org.apache.thrift.protocol.TList _list691 = iprot.readListBegin();
struct.srcExprList = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(_list691.size);
@org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr _elem692;
for (int _i693 = 0; _i693 < _list691.size; ++_i693)
{
_elem692 = new org.apache.doris.thrift.TExpr();
_elem692.read(iprot);
struct.srcExprList.add(_elem692);
}
iprot.readListEnd();
}
struct.setSrcExprListIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 8: // VOUTPUT_TUPLE_ID
if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
struct.voutput_tuple_id = iprot.readI32();
struct.setVoutputTupleIdIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 9: // VINTERMEDIATE_TUPLE_ID_LIST
if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
{
org.apache.thrift.protocol.TList _list694 = iprot.readListBegin();
struct.vintermediate_tuple_id_list = new java.util.ArrayList<java.lang.Integer>(_list694.size);
int _elem695;
for (int _i696 = 0; _i696 < _list694.size; ++_i696)
{
_elem695 = iprot.readI32();
struct.vintermediate_tuple_id_list.add(_elem695);
}
iprot.readListEnd();
}
struct.setVintermediateTupleIdListIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 10: // IS_BROADCAST_JOIN
if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
struct.is_broadcast_join = iprot.readBool();
struct.setIsBroadcastJoinIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 11: // IS_MARK
if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
struct.is_mark = iprot.readBool();
struct.setIsMarkIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 12: // DIST_TYPE
if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
struct.dist_type = org.apache.doris.thrift.TJoinDistributionType.findByValue(iprot.readI32());
struct.setDistTypeIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 13: // MARK_JOIN_CONJUNCTS
if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
{
org.apache.thrift.protocol.TList _list697 = iprot.readListBegin();
struct.mark_join_conjuncts = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(_list697.size);
@org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr _elem698;
for (int _i699 = 0; _i699 < _list697.size; ++_i699)
{
_elem698 = new org.apache.doris.thrift.TExpr();
_elem698.read(iprot);
struct.mark_join_conjuncts.add(_elem698);
}
iprot.readListEnd();
}
struct.setMarkJoinConjunctsIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 14: // USE_SPECIFIC_PROJECTIONS
if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
struct.use_specific_projections = iprot.readBool();
struct.setUseSpecificProjectionsIsSet(true);
} else {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
case 15: // MATCH_CONDITION
if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
struct.match_condition = new org.apache.doris.thrift.TExpr();
struct.match_condition.read(iprot);
struct.setMatchConditionIsSet(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
struct.validate();
}
public void write(org.apache.thrift.protocol.TProtocol oprot, THashJoinNode struct) throws org.apache.thrift.TException {
struct.validate();
oprot.writeStructBegin(STRUCT_DESC);
if (struct.join_op != null) {
oprot.writeFieldBegin(JOIN_OP_FIELD_DESC);
oprot.writeI32(struct.join_op.getValue());
oprot.writeFieldEnd();
}
if (struct.eq_join_conjuncts != null) {
oprot.writeFieldBegin(EQ_JOIN_CONJUNCTS_FIELD_DESC);
{
oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.eq_join_conjuncts.size()));
for (TEqJoinCondition _iter700 : struct.eq_join_conjuncts)
{
_iter700.write(oprot);
}
oprot.writeListEnd();
}
oprot.writeFieldEnd();
}
if (struct.other_join_conjuncts != null) {
if (struct.isSetOtherJoinConjuncts()) {
oprot.writeFieldBegin(OTHER_JOIN_CONJUNCTS_FIELD_DESC);
{
oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.other_join_conjuncts.size()));
for (org.apache.doris.thrift.TExpr _iter701 : struct.other_join_conjuncts)
{
_iter701.write(oprot);
}
oprot.writeListEnd();
}
oprot.writeFieldEnd();
}
}
if (struct.isSetAddProbeFilters()) {
oprot.writeFieldBegin(ADD_PROBE_FILTERS_FIELD_DESC);
oprot.writeBool(struct.add_probe_filters);
oprot.writeFieldEnd();
}
if (struct.vother_join_conjunct != null) {
if (struct.isSetVotherJoinConjunct()) {
oprot.writeFieldBegin(VOTHER_JOIN_CONJUNCT_FIELD_DESC);
struct.vother_join_conjunct.write(oprot);
oprot.writeFieldEnd();
}
}
if (struct.hash_output_slot_ids != null) {
if (struct.isSetHashOutputSlotIds()) {
oprot.writeFieldBegin(HASH_OUTPUT_SLOT_IDS_FIELD_DESC);
{
oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.I32, struct.hash_output_slot_ids.size()));
for (int _iter702 : struct.hash_output_slot_ids)
{
oprot.writeI32(_iter702);
}
oprot.writeListEnd();
}
oprot.writeFieldEnd();
}
}
if (struct.srcExprList != null) {
if (struct.isSetSrcExprList()) {
oprot.writeFieldBegin(SRC_EXPR_LIST_FIELD_DESC);
{
oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.srcExprList.size()));
for (org.apache.doris.thrift.TExpr _iter703 : struct.srcExprList)
{
_iter703.write(oprot);
}
oprot.writeListEnd();
}
oprot.writeFieldEnd();
}
}
if (struct.isSetVoutputTupleId()) {
oprot.writeFieldBegin(VOUTPUT_TUPLE_ID_FIELD_DESC);
oprot.writeI32(struct.voutput_tuple_id);
oprot.writeFieldEnd();
}
if (struct.vintermediate_tuple_id_list != null) {
if (struct.isSetVintermediateTupleIdList()) {
oprot.writeFieldBegin(VINTERMEDIATE_TUPLE_ID_LIST_FIELD_DESC);
{
oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.I32, struct.vintermediate_tuple_id_list.size()));
for (int _iter704 : struct.vintermediate_tuple_id_list)
{
oprot.writeI32(_iter704);
}
oprot.writeListEnd();
}
oprot.writeFieldEnd();
}
}
if (struct.isSetIsBroadcastJoin()) {
oprot.writeFieldBegin(IS_BROADCAST_JOIN_FIELD_DESC);
oprot.writeBool(struct.is_broadcast_join);
oprot.writeFieldEnd();
}
if (struct.isSetIsMark()) {
oprot.writeFieldBegin(IS_MARK_FIELD_DESC);
oprot.writeBool(struct.is_mark);
oprot.writeFieldEnd();
}
if (struct.dist_type != null) {
if (struct.isSetDistType()) {
oprot.writeFieldBegin(DIST_TYPE_FIELD_DESC);
oprot.writeI32(struct.dist_type.getValue());
oprot.writeFieldEnd();
}
}
if (struct.mark_join_conjuncts != null) {
if (struct.isSetMarkJoinConjuncts()) {
oprot.writeFieldBegin(MARK_JOIN_CONJUNCTS_FIELD_DESC);
{
oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.mark_join_conjuncts.size()));
for (org.apache.doris.thrift.TExpr _iter705 : struct.mark_join_conjuncts)
{
_iter705.write(oprot);
}
oprot.writeListEnd();
}
oprot.writeFieldEnd();
}
}
if (struct.isSetUseSpecificProjections()) {
oprot.writeFieldBegin(USE_SPECIFIC_PROJECTIONS_FIELD_DESC);
oprot.writeBool(struct.use_specific_projections);
oprot.writeFieldEnd();
}
if (struct.match_condition != null) {
if (struct.isSetMatchCondition()) {
oprot.writeFieldBegin(MATCH_CONDITION_FIELD_DESC);
struct.match_condition.write(oprot);
oprot.writeFieldEnd();
}
}
oprot.writeFieldStop();
oprot.writeStructEnd();
}
}
private static class THashJoinNodeTupleSchemeFactory implements org.apache.thrift.scheme.SchemeFactory {
public THashJoinNodeTupleScheme getScheme() {
return new THashJoinNodeTupleScheme();
}
}
private static class THashJoinNodeTupleScheme extends org.apache.thrift.scheme.TupleScheme<THashJoinNode> {
@Override
public void write(org.apache.thrift.protocol.TProtocol prot, THashJoinNode struct) throws org.apache.thrift.TException {
org.apache.thrift.protocol.TTupleProtocol oprot = (org.apache.thrift.protocol.TTupleProtocol) prot;
oprot.writeI32(struct.join_op.getValue());
{
oprot.writeI32(struct.eq_join_conjuncts.size());
for (TEqJoinCondition _iter706 : struct.eq_join_conjuncts)
{
_iter706.write(oprot);
}
}
java.util.BitSet optionals = new java.util.BitSet();
if (struct.isSetOtherJoinConjuncts()) {
optionals.set(0);
}
if (struct.isSetAddProbeFilters()) {
optionals.set(1);
}
if (struct.isSetVotherJoinConjunct()) {
optionals.set(2);
}
if (struct.isSetHashOutputSlotIds()) {
optionals.set(3);
}
if (struct.isSetSrcExprList()) {
optionals.set(4);
}
if (struct.isSetVoutputTupleId()) {
optionals.set(5);
}
if (struct.isSetVintermediateTupleIdList()) {
optionals.set(6);
}
if (struct.isSetIsBroadcastJoin()) {
optionals.set(7);
}
if (struct.isSetIsMark()) {
optionals.set(8);
}
if (struct.isSetDistType()) {
optionals.set(9);
}
if (struct.isSetMarkJoinConjuncts()) {
optionals.set(10);
}
if (struct.isSetUseSpecificProjections()) {
optionals.set(11);
}
if (struct.isSetMatchCondition()) {
optionals.set(12);
}
oprot.writeBitSet(optionals, 13);
if (struct.isSetOtherJoinConjuncts()) {
{
oprot.writeI32(struct.other_join_conjuncts.size());
for (org.apache.doris.thrift.TExpr _iter707 : struct.other_join_conjuncts)
{
_iter707.write(oprot);
}
}
}
if (struct.isSetAddProbeFilters()) {
oprot.writeBool(struct.add_probe_filters);
}
if (struct.isSetVotherJoinConjunct()) {
struct.vother_join_conjunct.write(oprot);
}
if (struct.isSetHashOutputSlotIds()) {
{
oprot.writeI32(struct.hash_output_slot_ids.size());
for (int _iter708 : struct.hash_output_slot_ids)
{
oprot.writeI32(_iter708);
}
}
}
if (struct.isSetSrcExprList()) {
{
oprot.writeI32(struct.srcExprList.size());
for (org.apache.doris.thrift.TExpr _iter709 : struct.srcExprList)
{
_iter709.write(oprot);
}
}
}
if (struct.isSetVoutputTupleId()) {
oprot.writeI32(struct.voutput_tuple_id);
}
if (struct.isSetVintermediateTupleIdList()) {
{
oprot.writeI32(struct.vintermediate_tuple_id_list.size());
for (int _iter710 : struct.vintermediate_tuple_id_list)
{
oprot.writeI32(_iter710);
}
}
}
if (struct.isSetIsBroadcastJoin()) {
oprot.writeBool(struct.is_broadcast_join);
}
if (struct.isSetIsMark()) {
oprot.writeBool(struct.is_mark);
}
if (struct.isSetDistType()) {
oprot.writeI32(struct.dist_type.getValue());
}
if (struct.isSetMarkJoinConjuncts()) {
{
oprot.writeI32(struct.mark_join_conjuncts.size());
for (org.apache.doris.thrift.TExpr _iter711 : struct.mark_join_conjuncts)
{
_iter711.write(oprot);
}
}
}
if (struct.isSetUseSpecificProjections()) {
oprot.writeBool(struct.use_specific_projections);
}
if (struct.isSetMatchCondition()) {
struct.match_condition.write(oprot);
}
}
@Override
public void read(org.apache.thrift.protocol.TProtocol prot, THashJoinNode struct) throws org.apache.thrift.TException {
org.apache.thrift.protocol.TTupleProtocol iprot = (org.apache.thrift.protocol.TTupleProtocol) prot;
struct.join_op = org.apache.doris.thrift.TJoinOp.findByValue(iprot.readI32());
struct.setJoinOpIsSet(true);
{
org.apache.thrift.protocol.TList _list712 = iprot.readListBegin(org.apache.thrift.protocol.TType.STRUCT);
struct.eq_join_conjuncts = new java.util.ArrayList<TEqJoinCondition>(_list712.size);
@org.apache.thrift.annotation.Nullable TEqJoinCondition _elem713;
for (int _i714 = 0; _i714 < _list712.size; ++_i714)
{
_elem713 = new TEqJoinCondition();
_elem713.read(iprot);
struct.eq_join_conjuncts.add(_elem713);
}
}
struct.setEqJoinConjunctsIsSet(true);
java.util.BitSet incoming = iprot.readBitSet(13);
if (incoming.get(0)) {
{
org.apache.thrift.protocol.TList _list715 = iprot.readListBegin(org.apache.thrift.protocol.TType.STRUCT);
struct.other_join_conjuncts = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(_list715.size);
@org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr _elem716;
for (int _i717 = 0; _i717 < _list715.size; ++_i717)
{
_elem716 = new org.apache.doris.thrift.TExpr();
_elem716.read(iprot);
struct.other_join_conjuncts.add(_elem716);
}
}
struct.setOtherJoinConjunctsIsSet(true);
}
if (incoming.get(1)) {
struct.add_probe_filters = iprot.readBool();
struct.setAddProbeFiltersIsSet(true);
}
if (incoming.get(2)) {
struct.vother_join_conjunct = new org.apache.doris.thrift.TExpr();
struct.vother_join_conjunct.read(iprot);
struct.setVotherJoinConjunctIsSet(true);
}
if (incoming.get(3)) {
{
org.apache.thrift.protocol.TList _list718 = iprot.readListBegin(org.apache.thrift.protocol.TType.I32);
struct.hash_output_slot_ids = new java.util.ArrayList<java.lang.Integer>(_list718.size);
int _elem719;
for (int _i720 = 0; _i720 < _list718.size; ++_i720)
{
_elem719 = iprot.readI32();
struct.hash_output_slot_ids.add(_elem719);
}
}
struct.setHashOutputSlotIdsIsSet(true);
}
if (incoming.get(4)) {
{
org.apache.thrift.protocol.TList _list721 = iprot.readListBegin(org.apache.thrift.protocol.TType.STRUCT);
struct.srcExprList = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(_list721.size);
@org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr _elem722;
for (int _i723 = 0; _i723 < _list721.size; ++_i723)
{
_elem722 = new org.apache.doris.thrift.TExpr();
_elem722.read(iprot);
struct.srcExprList.add(_elem722);
}
}
struct.setSrcExprListIsSet(true);
}
if (incoming.get(5)) {
struct.voutput_tuple_id = iprot.readI32();
struct.setVoutputTupleIdIsSet(true);
}
if (incoming.get(6)) {
{
org.apache.thrift.protocol.TList _list724 = iprot.readListBegin(org.apache.thrift.protocol.TType.I32);
struct.vintermediate_tuple_id_list = new java.util.ArrayList<java.lang.Integer>(_list724.size);
int _elem725;
for (int _i726 = 0; _i726 < _list724.size; ++_i726)
{
_elem725 = iprot.readI32();
struct.vintermediate_tuple_id_list.add(_elem725);
}
}
struct.setVintermediateTupleIdListIsSet(true);
}
if (incoming.get(7)) {
struct.is_broadcast_join = iprot.readBool();
struct.setIsBroadcastJoinIsSet(true);
}
if (incoming.get(8)) {
struct.is_mark = iprot.readBool();
struct.setIsMarkIsSet(true);
}
if (incoming.get(9)) {
struct.dist_type = org.apache.doris.thrift.TJoinDistributionType.findByValue(iprot.readI32());
struct.setDistTypeIsSet(true);
}
if (incoming.get(10)) {
{
org.apache.thrift.protocol.TList _list727 = iprot.readListBegin(org.apache.thrift.protocol.TType.STRUCT);
struct.mark_join_conjuncts = new java.util.ArrayList<org.apache.doris.thrift.TExpr>(_list727.size);
@org.apache.thrift.annotation.Nullable org.apache.doris.thrift.TExpr _elem728;
for (int _i729 = 0; _i729 < _list727.size; ++_i729)
{
_elem728 = new org.apache.doris.thrift.TExpr();
_elem728.read(iprot);
struct.mark_join_conjuncts.add(_elem728);
}
}
struct.setMarkJoinConjunctsIsSet(true);
}
if (incoming.get(11)) {
struct.use_specific_projections = iprot.readBool();
struct.setUseSpecificProjectionsIsSet(true);
}
if (incoming.get(12)) {
struct.match_condition = new org.apache.doris.thrift.TExpr();
struct.match_condition.read(iprot);
struct.setMatchConditionIsSet(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();
}
}