wangyum commented on code in PR #59027:
URL: https://github.com/apache/spark/pull/59027#discussion_r4429505161
##########
sql/catalyst/src/main/scala/org/apache/spark/sql/internal/SQLConf.scala:
##########
@@ -1220,6 +1220,35 @@ object SQLConf {
.bytesConf(ByteUnit.BYTE)
.createWithDefaultString("10MB")
+ val BROADCAST_RANGE_JOIN_ENABLED =
buildConf("spark.sql.join.broadcastRangeJoin.enabled")
+ .internal()
+ .doc("When true, joins with range predicates (such as point-in-range,
interval-overlap, " +
+ "or single inequalities) are planned as broadcast range joins instead of
broadcast " +
+ "nested loop joins if the build side is eligible for broadcast.
Supported join types " +
+ "include inner, left outer, right outer, left semi, and left anti.
Broadcast range joins " +
+ "build an index on the broadcast side to significantly accelerate
selective range " +
+ "probes, but planning does not consult overlap, probe size, or
index-size estimates, " +
+ "so three trade-offs apply uniformly. First, a build where some, but not
all, " +
+ "intervals overlap each probe can run slower than a nested loop join,
and how much " +
+ "overlap triggers that depends heavily on the key family: boxed keys " +
+ "(double, string, wide decimal) slow down at far lower overlap than
long-specialized " +
Review Comment:
Fixed: added timestamp_ntz to the long-specialized list and float/binary to
the boxed list.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]