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: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
