Oleg Zinoviev created IGNITE-28882:
--------------------------------------

             Summary: Window Functions - Thread Starvation & Redundant Row Size 
Calculation
                 Key: IGNITE-28882
                 URL: https://issues.apache.org/jira/browse/IGNITE-28882
             Project: Ignite
          Issue Type: Improvement
            Reporter: Oleg Zinoviev
            Assignee: Oleg Zinoviev


The current implementation of window functions in the scope of IGNITE-14777 
does not address the following two issues:
 # *Thread starvation risk with large partitions.* When a partition contains a 
large number of rows, the computation thread may get blocked for an extended 
period, causing other execution nodes to experience resource starvation.
 # *Redundant row size calculation.* The row size is computed multiple times to 
control memory consumption, which introduces unnecessary overhead.

h4. Required changes
 * Implement proper release of the execution thread when processing large 
partitions so that other execution nodes do not experience starvation.
 * Send computed rows directly to the downstream node to avoid intermediate 
buffering and redundant calculations.
 * Ensure that the row size is calculated exactly once per row to eliminate 
redundant computations.
 * In streaming mode for window functions, do not include row size calculation 
as part of the computation logic, since in this mode the Node does not store 
rows from upstream.

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to