Michael Smith has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/22091 )

Change subject: IMPALA-13531: Calcite CTE frontend
......................................................................


Patch Set 8:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/22091/8/fe/src/main/java/org/apache/impala/planner/CTEBufferNode.java
File fe/src/main/java/org/apache/impala/planner/CTEBufferNode.java:

http://gerrit.cloudera.org:8080/#/c/22091/8/fe/src/main/java/org/apache/impala/planner/CTEBufferNode.java@33
PS8, Line 33: public class CTEBufferNode extends PlanNode {
> the diff is push or pull?
I'd overlooked that implementation. The design goals are different, although 
there may be arguments to combine them.

My understanding is MultiDataSink receive data pushed to them, and dispatch to 
multiple child data sinks (with usually different expressions transforming or 
filtering them). This is a synchronous operation, and I believe it all happens 
within a fragment.

CTEBufferNode stores in-memory, with the option to spill to disk. That allows 
it to be asynchronous, but either uses more memory (when in-memory) or is 
slower (when spilled to disk). It also expects to be readable by other 
fragments.



--
To view, visit http://gerrit.cloudera.org:8080/22091
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Id0840c0859d2fe25628d799a18d302cee1eb36e8
Gerrit-Change-Number: 22091
Gerrit-PatchSet: 8
Gerrit-Owner: Michael Smith <michael.sm...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <joemcdonn...@cloudera.com>
Gerrit-Reviewer: Michael Smith <michael.sm...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <scar...@cloudera.com>
Gerrit-Comment-Date: Wed, 16 Apr 2025 17:52:32 +0000
Gerrit-HasComments: Yes

Reply via email to