You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "avantgardnerio (via GitHub)" <gi...@apache.org> on 2023/04/03 13:51:34 UTC

[GitHub] [arrow-datafusion] avantgardnerio commented on issue #3349: Consolidate DDL / Catalog manipulation LogicalPlans (refactor)

avantgardnerio commented on issue #3349:
URL: https://github.com/apache/arrow-datafusion/issues/3349#issuecomment-1494360801

   > remove such DDL from `LogicalPlan` entirely
   
   FWIW, doing so would undo the motivation behind the PR that kicked off this discussion. I think if we have:
   
   LogicalPlan::DDL
   LogicalPlan::DML(Insert(DQL), Update(DQL), Delete(DQL))
   LogicalPlan::DQL(project, filter, etc)
   
   Then the planner can still do things like optimize DML, replace placeholder tokens in DML/DQL, etc.
   
   It also makes it so there is a consistent path in execution engines:
   
   AST -> LogicalPlan -> PhysicalPlan
   
   vs
   
   AST -> [LogicalPlan, Statement] -> [query plan executor, statement executor]
   
   however, if we merely group them as mentioned in this issue, then we can have the existing optimizer code focus on LogicalPlan::DQL and the rest of the code can keep functioning as it is.
   
   Just my $0.02, interested to hear how this affects others...


-- 
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: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org