| 96 | |
| 97 | private: |
| 98 | void InitEncoder(int side, HashJoinProjection projection_handle, RowEncoder* encoder) { |
| 99 | std::vector<TypeHolder> data_types; |
| 100 | int num_cols = schema_[side]->num_cols(projection_handle); |
| 101 | data_types.resize(num_cols); |
| 102 | for (int icol = 0; icol < num_cols; ++icol) { |
| 103 | data_types[icol] = schema_[side]->data_type(projection_handle, icol); |
| 104 | } |
| 105 | encoder->Init(data_types, ctx_->exec_context()); |
| 106 | encoder->Clear(); |
| 107 | } |
| 108 | |
| 109 | Status InitLocalStateIfNeeded(size_t thread_index) { |
| 110 | DCHECK_LT(thread_index, local_states_.size()); |
no test coverage detected