Class: Impala::Protocol::TPlanNode

Inherits:
Object
  • Object
show all
Includes:
Thrift::Struct, Thrift::Struct_Union
Defined in:
lib/impala/protocol/plan_nodes_types.rb

Constant Summary collapse

NODE_ID =
1
NODE_TYPE =
2
NUM_CHILDREN =
3
LIMIT =
4
ROW_TUPLES =
5
NULLABLE_TUPLES =
6
CONJUNCTS =
7
COMPACT_DATA =
8
HDFS_SCAN_NODE =
9
HBASE_SCAN_NODE =
10
HASH_JOIN_NODE =
11
AGG_NODE =
12
SORT_NODE =
13
MERGE_NODE =
14
FIELDS =
{
NODE_ID => { :type => ::Thrift::Types::I32, :name => 'node_id' },
NODE_TYPE => { :type => ::Thrift::Types::I32, :name => 'node_type', :enum_class => Impala::Protocol::TPlanNodeType },
NUM_CHILDREN => { :type => ::Thrift::Types::I32, :name => 'num_children' },
LIMIT => { :type => ::Thrift::Types::I64, :name => 'limit' },
ROW_TUPLES => { :type => ::Thrift::Types::LIST, :name => 'row_tuples', :element => { :type => ::Thrift::Types::I32 } },
NULLABLE_TUPLES => { :type => ::Thrift::Types::LIST, :name => 'nullable_tuples', :element => { :type => ::Thrift::Types::BOOL } },
CONJUNCTS => { :type => ::Thrift::Types::LIST, :name => 'conjuncts', :element => { :type => ::Thrift::Types::STRUCT, :class => Impala::Protocol::TExpr }, :optional => true },
COMPACT_DATA => { :type => ::Thrift::Types::BOOL, :name => 'compact_data' },
HDFS_SCAN_NODE => { :type => ::Thrift::Types::STRUCT, :name => 'hdfs_scan_node', :class => Impala::Protocol::THdfsScanNode, :optional => true },
HBASE_SCAN_NODE => { :type => ::Thrift::Types::STRUCT, :name => 'hbase_scan_node', :class => Impala::Protocol::THBaseScanNode, :optional => true },
HASH_JOIN_NODE => { :type => ::Thrift::Types::STRUCT, :name => 'hash_join_node', :class => Impala::Protocol::THashJoinNode, :optional => true },
AGG_NODE => { :type => ::Thrift::Types::STRUCT, :name => 'agg_node', :class => Impala::Protocol::TAggregationNode, :optional => true },
SORT_NODE => { :type => ::Thrift::Types::STRUCT, :name => 'sort_node', :class => Impala::Protocol::TSortNode, :optional => true },
MERGE_NODE => { :type => ::Thrift::Types::STRUCT, :name => 'merge_node', :class => Impala::Protocol::TMergeNode, :optional => true }
}

Instance Method Summary collapse

Instance Method Details

#struct_fieldsObject



309
# File 'lib/impala/protocol/plan_nodes_types.rb', line 309

def struct_fields; FIELDS; end

#validateObject

Raises:

  • (::Thrift::ProtocolException)


311
312
313
314
315
316
317
318
319
320
321
322
# File 'lib/impala/protocol/plan_nodes_types.rb', line 311

def validate
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field node_id is unset!') unless @node_id
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field node_type is unset!') unless @node_type
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field num_children is unset!') unless @num_children
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field limit is unset!') unless @limit
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field row_tuples is unset!') unless @row_tuples
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field nullable_tuples is unset!') unless @nullable_tuples
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field compact_data is unset!') if @compact_data.nil?
  unless @node_type.nil? || Impala::Protocol::TPlanNodeType::VALID_VALUES.include?(@node_type)
    raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field node_type!')
  end
end