szehon-ho commented on code in PR #46255:
URL: https://github.com/apache/spark/pull/46255#discussion_r1620093631
##########
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/plans/physical/partitioning.scala:
##########
@@ -870,12 +870,30 @@ case class KeyGroupedShuffleSpec(
if (results.forall(p => p.isEmpty)) None else Some(results)
}
- override def canCreatePartitioning: Boolean =
SQLConf.get.v2BucketingShuffleEnabled &&
- // Only support partition expressions are AttributeReference for now
- partitioning.expressions.forall(_.isInstanceOf[AttributeReference])
+ override def canCreatePartitioning: Boolean = {
+ // Allow one side shuffle for SPJ for now only if partially-clustered is
not enabled
+ // and for join keys less than partition keys only if transforms are not
enabled.
+ val checkExprType = if
(SQLConf.get.v2BucketingAllowJoinKeysSubsetOfPartitionKeys) {
Review Comment:
iirc, I hit a pretty hard bug when trying to enable the feature with
v2BucketingAllowJoinKeysSubsetOfPartitionKeys (more in the pr description). As
we may need to rethink the logic of
v2BucketingAllowJoinKeysSubsetOfPartitionKeys to fix, I was going to leave for
subsequent PR
--
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]