somu-imply commented on code in PR #13085:
URL: https://github.com/apache/druid/pull/13085#discussion_r995222185


##########
processing/src/main/java/org/apache/druid/segment/join/JoinableFactoryWrapper.java:
##########
@@ -340,12 +192,60 @@ static JoinClauseToFilterConversion convertJoinToFilter(
     return new JoinClauseToFilterConversion(null, false);
   }
 
+  public JoinableFactory getJoinableFactory()
+  {
+    return joinableFactory;
+  }
+
+  /**
+   * Compute a cache key prefix for a join data source. This includes the data 
sources that participate in the RHS of a
+   * join as well as any query specific constructs associated with join data 
source such as base table filter. This key prefix
+   * can be used in segment level cache or result level cache. The function 
can return following wrapped in an
+   * Optional
+   * - Non-empty byte array - If there is join datasource involved and caching 
is possible. The result includes
+   * join condition expression, join type and cache key returned by joinable 
factory for each {@link PreJoinableClause}
+   * - NULL - There is a join but caching is not possible. It may happen if 
one of the participating datasource
+   * in the JOIN is not cacheable.
+   *
+   * @param dataSourceAnalysis for the join datasource
+   * @return the optional cache key to be used as part of query cache key
+   * @throws {@link IAE} if this operation is called on a non-join data source
+   */
+  public Optional<byte[]> computeJoinDataSourceCacheKey(

Review Comment:
   This has been moved. The test cases in `JoinableFactoryWrapperTest` have 
been refactored and 
   moved inside `JoinDataSourceTest`



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