zjuwangg commented on issue #10107:
URL: 
https://github.com/apache/incubator-gluten/issues/10107#issuecomment-3078610822

   @zhztheplayer 
   
https://github.com/apache/incubator-gluten/blob/main/gluten-substrait/src/main/scala/org/apache/gluten/backendsapi/SparkPlanExecApi.scala#L366
 
   ```
    /**
      * Generate ColumnarBatchSerializer for ColumnarShuffleExchangeExec.
      *
      * @return
      */
     def createColumnarBatchSerializer(
         schema: StructType,
         metrics: Map[String, SQLMetric],
         isSort: Boolean): Serializer
   ```
   
   Since now columnarBatchSerializer depends on schema metrics and isSort flag, 
I think it's a little complex to extract the serializer  from 
ColumnarShuffleExchangeExec. Another problem is there no proper chance for 
custom shuffle manager to inject their own ColumnarShuffleExchangeExec with 
minor refactor.
   
   I try add a new trait `NeedCustomColumnarBatchSerializer` in 
https://github.com/apache/incubator-gluten/pull/10201/files#diff-a59ec7a2382de83da668099f5733b99beeceeea10085187a6d7861772d19c741
 and leverage java spi to implment auto injection like 
`CelebornShuffleWriterFactory` does. 
   
   Please help have a look whether it's a proper way.
   
   


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