aglinxinyuan opened a new issue, #8641:
URL: https://github.com/apache/texera/issues/8641

   ### Feature Summary
   
   Inside a control block (LoopStart/LoopEnd), the iteration's loop variables 
reach every operator as a state message. A Python operator sees that message 
only as the argument of `process_state`, so any other callback, such as 
`process_tuple`, has no way to read the current iteration's variables unless 
the author stores them by hand.
   
   ### Proposed Solution or Design
   
   Register the state on the operator before the callback runs, the same for 
every Python operator:
   
   1. `Operator` gains a `loop_state` attribute, `None` until a state message 
arrives.
   2. The Python worker sets `operator.loop_state` right before it calls 
`process_state`. That covers `DataProcessor.process_state` and the LoopEnd's 
deferred consume in the main loop, which calls the operator directly.
   3. The default `process_state` is unchanged and still forwards the state 
downstream.
   
   This is the Python counterpart of the JVM registration in #8635, split into 
its own change.
   
   ### Affected Area
   
   Workflow Engine (Amber)
   


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

Reply via email to