Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions velox/experimental/cudf/exec/CudfHashJoin.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -602,7 +602,7 @@ std::unique_ptr<cudf::table> CudfHashJoinProbe::filteredOutput(
cudf::column_view rightIndicesCol,
std::function<std::vector<std::unique_ptr<cudf::column>>(
std::vector<std::unique_ptr<cudf::column>>&&,
cudf::mutable_column_view)> func,
cudf::column_view)> func,
rmm::cuda_stream_view stream) {
auto leftResult =
cudf::gather(leftTableView, leftIndicesCol, oobPolicy, stream);
Expand All @@ -623,11 +623,11 @@ std::unique_ptr<cudf::table> CudfHashJoinProbe::filteredOutput(
std::vector<velox::RowTypePtr> rowTypes{probeType, buildType};
exec::ExprSet exprs({joinNode_->filter()}, operatorCtx_->execCtx());
VELOX_CHECK_EQ(exprs.exprs().size(), 1);
auto filterEvaluator = ExpressionEvaluator(
{exprs.exprs()[0]}, facebook::velox::type::concatRowTypes(rowTypes));
auto filterColumns = filterEvaluator.compute(
auto filterEvaluator = createCudfExpression(
exprs.exprs()[0], facebook::velox::type::concatRowTypes(rowTypes));
auto filterColumns = filterEvaluator->eval(
joinedCols, stream, cudf::get_current_device_resource_ref());
auto filterColumn = filterColumns[0]->mutable_view();
auto filterColumn = asView(filterColumns);

joinedCols = func(std::move(joinedCols), filterColumn);

Expand Down Expand Up @@ -689,7 +689,7 @@ std::vector<std::unique_ptr<cudf::table>> CudfHashJoinProbe::innerJoin(
auto filterFunc =
[stream](
std::vector<std::unique_ptr<cudf::column>>&& joinedCols,
cudf::mutable_column_view filterColumn) {
cudf::column_view filterColumn) {
auto filterTable =
std::make_unique<cudf::table>(std::move(joinedCols));
auto filteredTable =
Expand Down Expand Up @@ -757,7 +757,7 @@ std::vector<std::unique_ptr<cudf::table>> CudfHashJoinProbe::leftJoin(
stream](
std::vector<std::unique_ptr<cudf::column>>&&
joinedCols,
cudf::mutable_column_view filterColumn) {
cudf::column_view filterColumn) {
auto leftColsSize = leftTableView.num_columns();
auto rightColsSize = rightTableView.num_columns();

Expand Down Expand Up @@ -922,7 +922,7 @@ std::vector<std::unique_ptr<cudf::table>> CudfHashJoinProbe::rightJoin(
auto filterFunc =
[&rightMatchedFlags, rightIndicesSpan, stream](
std::vector<std::unique_ptr<cudf::column>>&& joinedCols,
cudf::mutable_column_view filterColumn) {
cudf::column_view filterColumn) {
// apply the filter
auto filterTable =
std::make_unique<cudf::table>(std::move(joinedCols));
Expand Down
2 changes: 1 addition & 1 deletion velox/experimental/cudf/exec/CudfHashJoin.h
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,7 @@ class CudfHashJoinProbe : public exec::Operator, public NvtxHelper {
cudf::column_view rightIndicesCol,
std::function<std::vector<std::unique_ptr<cudf::column>>(
std::vector<std::unique_ptr<cudf::column>>&&,
cudf::mutable_column_view)> func,
cudf::column_view)> func,
rmm::cuda_stream_view stream);
};

Expand Down