OmniSciDB  04ee39c94c
HashJoinKeyHandlers.h File Reference
+ Include dependency graph for HashJoinKeyHandlers.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  GenericKeyHandler
 
struct  OverlapsKeyHandler
 

Functions

DEVICE int64_t get_join_column_element_value (const JoinColumnTypeInfo &type_info, const JoinColumn &join_column, const size_t i)
 

Function Documentation

◆ get_join_column_element_value()

DEVICE int64_t get_join_column_element_value ( const JoinColumnTypeInfo type_info,
const JoinColumn join_column,
const size_t  i 
)
inline

Definition at line 36 of file HashJoinKeyHandlers.h.

References CHECK, JoinColumn::col_buff, JoinColumnTypeInfo::column_type, JoinColumnTypeInfo::elem_sz, fixed_width_int_decode_noinline(), fixed_width_small_date_decode_noinline(), fixed_width_unsigned_decode_noinline(), NULL_INT, NULL_SMALLINT, Signed, SmallDate, SUFFIX, and Unsigned.

Referenced by count_matches_impl(), count_matches_sharded(), fill_hash_join_buff_impl(), fill_hash_join_buff_sharded_impl(), fill_row_ids_impl(), fill_row_ids_sharded_impl(), and GenericKeyHandler::operator()().

38  {
39  switch (type_info.column_type) {
40  case SmallDate:
42  join_column.col_buff,
43  type_info.elem_sz,
44  type_info.elem_sz == 4 ? NULL_INT : NULL_SMALLINT,
45  type_info.elem_sz == 4 ? NULL_INT : NULL_SMALLINT,
46  i);
47  case Signed:
49  join_column.col_buff, type_info.elem_sz, i);
50  case Unsigned:
52  join_column.col_buff, type_info.elem_sz, i);
53  default:
54 #ifndef __CUDACC__
55  CHECK(false);
56 #else
57  assert(0);
58 #endif
59  return 0;
60  }
61 }
const ColumnType column_type
const int8_t * col_buff
DEVICE NEVER_INLINE int64_t SUFFIX() fixed_width_int_decode_noinline(const int8_t *byte_stream, const int32_t byte_width, const int64_t pos)
Definition: DecodersImpl.h:83
const size_t elem_sz
#define SUFFIX(name)
DEVICE NEVER_INLINE int64_t SUFFIX() fixed_width_unsigned_decode_noinline(const int8_t *byte_stream, const int32_t byte_width, const int64_t pos)
Definition: DecodersImpl.h:90
#define NULL_INT
Definition: sqltypes.h:173
DEVICE NEVER_INLINE int64_t SUFFIX() fixed_width_small_date_decode_noinline(const int8_t *byte_stream, const int32_t byte_width, const int32_t null_val, const int64_t ret_null_val, const int64_t pos)
Definition: DecodersImpl.h:141
#define NULL_SMALLINT
Definition: sqltypes.h:172
#define CHECK(condition)
Definition: Logger.h:187
+ Here is the call graph for this function:
+ Here is the caller graph for this function: