     // Multimap used to compute the reference solution
     std::multimap<key_type, value_type> the_map;
 
-    // Use first right column as the build column
+    // Build hash table that maps the first right columns' values to their row index in the column
     std::vector<key_type> const & build_column = std::get<0>(right_columns);
-
-    // Build hash table that maps a value to its index in the column
     for(size_t right_index = 0; right_index < build_column.size(); ++right_index)
     {
       the_map.insert(std::make_pair(build_column[right_index], right_index));

  //gdf_error gdf_multi_left_join_generic(int num_cols, gdf_column **leftcol, gdf_column **rightcol, gdf_join_result_type **out_result)
};

template<join_kind join_type, typename tuple_type>
struct TestParameters
{
  const static join_kind join_method{join_type};
  using multi_column_t = tuple_type;
};


  else if(std::is_same<col_type,double>::value) gdf_col_type = GDF_FLOAT64;

  // Fill gdf_column structure
  std::unique_ptr<gdf_column> the_column{new gdf_column};
  the_column->data = device_vector.data().get();
  the_column->valid = nullptr;
  the_column->size = device_vector.size();
  the_column->dtype = gdf_col_type;
  gdf_dtype_extra_info extra_info;
  extra_info.time_unit = TIME_UNIT_NONE;
  the_column->dtype_info = extra_info;

  return the_column;
}
