Copilot commented on code in PR #12163:
URL: https://github.com/apache/gluten/pull/12163#discussion_r3439975339


##########
gluten-substrait/src/main/scala/org/apache/gluten/execution/JoinExecTransformer.scala:
##########
@@ -105,6 +107,15 @@ trait HashJoinLikeExecTransformer extends BaseJoinExec 
with TransformSupport {
     (right, left)
   }
 
+  protected def canonicalBuildHashTableId(plan: SparkPlan): String = plan 
match {
+    case b: BroadcastQueryStageExec =>
+      canonicalBuildHashTableId(b.plan)
+    case r: ReusedExchangeExec =>
+      canonicalBuildHashTableId(r.child)
+    case other =>
+      other.id.toString
+  }

Review Comment:
   `canonicalBuildHashTableId` currently returns the raw SparkPlan numeric `id` 
as the hash-table/cache key. On the native side, this ID is also used as a 
Velox `PlanNodeId` (see BHJ path in `SubstraitToVeloxPlan.cc`), while 
`nextPlanNodeId()` generates numeric string IDs as well. Using plain numbers 
makes collisions very likely, which can corrupt split routing and/or plan 
metrics. Prefix the canonical ID with a stable string (similar to the old 
`BuiltHashTable-` prefix) to keep it distinct from auto-generated node IDs.



##########
ep/build-velox/src/get-velox.sh:
##########
@@ -17,9 +17,9 @@
 set -exu
 
 CURRENT_DIR=$(cd "$(dirname "$BASH_SOURCE")"; pwd)
-VELOX_REPO=https://github.com/IBM/velox.git
-VELOX_BRANCH=dft-2026_06_12
-VELOX_ENHANCED_BRANCH=ibm-2026_06_12
+VELOX_REPO=https://github.com/JkSelf/velox.git
+VELOX_BRANCH=dft-2026_06_12-hashtable-cache
+VELOX_ENHANCED_BRANCH=ibm-2026_06_12-hashtable-cache

Review Comment:
   Defaulting the Velox dependency to a personal fork (`JkSelf/velox`) makes 
builds non-reproducible and introduces supply-chain / operational risk for 
anyone building Gluten without custom flags. Please keep the default pinned to 
an official / org-owned repository (e.g., `IBM/velox` or 
`facebookincubator/velox`) and apply the HashTableCache changes via a pinned 
commit/branch in that repo (or via `UPSTREAM_VELOX_PR_ID`/patching), while 
still allowing personal forks only through `--velox_repo` for local testing.



-- 
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]

Reply via email to