src/backend/executor/abstract_join_executor.cpp
/**
 * @brief Do some basic checks and create the schema for the output logical
 * tiles.
 * @return true on success, false otherwise.
 */
@brief Do some basic checks and create the schema for the output logical
tiles.
@return true on success, false otherwise.
@brief Do some basic checks and create the schema for the output logical tiles . @return true on success false otherwise .
bool AbstractJoinExecutor::DInit() {
  assert(children_.size() == 2);
  const planner::AbstractJoinPlan &node =
      GetPlanNode<planner::AbstractJoinPlan>();
  predicate_ = node.GetPredicate();
  proj_info_ = node.GetProjInfo();
  join_type_ = node.GetJoinType();
  proj_schema_ = node.GetSchema();
  return true;
}
bool AbstractJoinExecutor :: DInit ( ) { assert ( children_ . size ( ) == 2 ) ; const planner :: AbstractJoinPlan & node = GetPlanNode < planner :: AbstractJoinPlan > ( ) ; predicate_ = node . GetPredicate ( ) ; proj_info_ = node . GetProjInfo ( ) ; join_type_ = node . GetJoinType ( ) ; proj_schema_ = node . GetSchema ( ) ; return true ; }
@brief Do some basic checks and create the schema for the output logical
 tiles.
@brief Do some basic checks and create the schema for the output logical tiles .
// Grab data from plan node. // NOTE: predicate can be null for cartesian product