Skip to content

Commit

Permalink
Remove work around for nulls in semi-anti joins (NVIDIA#2502)
Browse files Browse the repository at this point in the history
Signed-off-by: Robert (Bobby) Evans <[email protected]>
  • Loading branch information
revans2 authored May 25, 2021
1 parent b1370ac commit 63405a6
Showing 1 changed file with 2 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -623,13 +623,9 @@ trait GpuHashJoin extends GpuExec {
// The 10k is mostly for tests, hopefully no one is setting anything that low in production.
val realTarget = Math.max(targetSize, 10 * 1024)

// Filtering nulls on the build side is a workaround.
// 1) For a performance issue in LeftSemi and LeftAnti joins
// https://github.com/rapidsai/cudf/issues/7300
// 2) As a work around to Struct joins with nullable children
// Filtering nulls on the build side is a workaround for Struct joins with nullable children
// see https://github.com/NVIDIA/spark-rapids/issues/2126 for more info
val builtAnyNullable = (compareNullsEqual || joinType == LeftSemi || joinType == LeftAnti) &&
buildKeys.exists(_.nullable)
val builtAnyNullable = compareNullsEqual && buildKeys.exists(_.nullable)

val nullFiltered = if (builtAnyNullable) {
GpuHashJoin.filterNulls(builtBatch, boundBuildKeys)
Expand Down

0 comments on commit 63405a6

Please sign in to comment.