Github user viirya commented on the issue:

    https://github.com/apache/spark/pull/19324
  
    @juliuszsompolski Thanks for pinging me.
    
    #18931 is an attempt to separate the consume function as it can as 
possible. With long chain of any operators, you can have a long consume 
function and fail JIT, this is the one reason it tries to split into functions 
at the root of codegen support, instead of in some operators. I'd avoid to 
duplicate the separate logic in all operators, IMO.
    
    For the explicit delaying evaluation of projection, currently the strategy 
I take is not going to split it. I guess that you mean the evaluation that can 
be delayed by the compiler, I personally think it should not be a big impact 
under the whole-stage codegen framework. The reason is those evaluation are 
actually needed and can't be avoided in most of (if not all) cases. From the 
benchmark we can see there is no negative impact even in the cases where no 
long consume function exists.
    
    Yeah, I think the simplifies for the use of `continue` is a good thing, if 
it is possible.


---

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to