I’m also +1.

Our production experience show the current syntax is very confusing.
Prepending a query with an explain works in all other cases but statement
set as Timo mentioned.

Best,
Dawid

On Wed, 30 Apr 2025 at 15:23, Timo Walther <twal...@apache.org> wrote:

> Hi Ramin,
>
> it was a mistake to support the EXPLAIN STATEMENT SET syntax in the
> first place. We support `EXPLAIN SELECT` and `EXPLAIN CREATE TABLE`, so
> EXPLAIN + verb, we should have done the same for `EXECUTE`.
>
> +1 for the proposal.
>
> Cheers,
> Timo
>
>
> On 30.04.25 11:55, Gustavo de Morais wrote:
> > I agree with Martijn. It’s just a better, consistent user experience.
> >
> > Also, we keep backwards compatibility, so I see no reason for not doing
> it.
> > I’d also be +1 for this.
> >
> > Am Di., 29. Apr. 2025 um 09:42 Uhr schrieb Martijn Visser <
> > martijnvis...@apache.org>:
> >
> >> Hi all,
> >>
> >> Thanks for the FLIP Ramin. I would be +1 for this. It creates a
> consistent
> >> experience for SQL users, because they only have to prefix their earlier
> >> SQL statement with EXPLAIN in order to get the result.
> >>
> >> @Ron I don't think it's so much about the efforts that's required to
> remove
> >> the EXECUTE keyword, but it's about the mental model of users. If you
> can
> >> always add EXPLAIN to begin with, it's easier to comprehend for users.
> We
> >> have a lot of users who are confused and are asking questions about how
> >> they can get the query plan for statement sets and why it's not
> supported.
> >> It requires every user to go to the docs, find the documentation on
> EXPLAIN
> >> and then interpret the docs. The docs [1] also don't make it clear that
> you
> >> specifically need to modify the syntax for EXPLAIN, but users are
> required
> >> to compare the differences between a regular statement set syntax [2]
> and
> >> the one for EXPLAIN
> >>
> >> Best regards,
> >>
> >> Martijn
> >>
> >> [1]
> >>
> >>
> https://nightlies.apache.org/flink/flink-docs-master/docs/dev/table/sql/explain/#syntax
> >> [2]
> >>
> >>
> https://nightlies.apache.org/flink/flink-docs-master/docs/dev/table/sqlclient/#execute-a-set-of-sql-statements
> >>
> >> On Tue, Apr 29, 2025 at 4:03 AM Ron Liu <ron9....@gmail.com> wrote:
> >>
> >>> Hi, Ramin
> >>>
> >>> Thanks for starting this proposal.
> >>>
> >>> After glancing at the content of FLIP, I have a question, how valuable
> is
> >>> it to introduce this new syntax, if users want to EXPLAIN STATEMENT
> SET,
> >>> the EXPLAIN keyword itself has to be written,
> >>> how much does it cost to remove the EXECUTE keyword at this time? From
> >> this
> >>> point of view, I don't think it makes much sense to introduce this
> >> syntax.
> >>>
> >>> Best,
> >>> Ron
> >>>
> >>> David Radley <david_rad...@uk.ibm.com> 于2025年4月28日周一 21:51写道:
> >>>
> >>>> Hi Ramin,
> >>>> Thanks for making the changes.
> >>>> As far as I can see the EXECUTE STATEMENT SET is Flink specific; so I
> >> am
> >>>> not sure this is part of the SQL standard. So, I guess adding the
> >> explain
> >>>> syntax as an alias for the existing explain would be ok.
> >>>>
> >>>> I assume Flink decided not to use stored procedures syntax to run the
> >>>> multiple inserts – which would be what I would have expected here.
> >>>>
> >>>>     Kind regards David.
> >>>>
> >>>> From: Ramin Gharib <rgha...@confluent.io.INVALID>
> >>>> Date: Monday, 28 April 2025 at 13:41
> >>>> To: dev@flink.apache.org <dev@flink.apache.org>
> >>>> Subject: [EXTERNAL] Re: [DISCUSS] FLIP-527 Support EXPLAIN EXECUTE
> >>>> STATEMENT SET Syntax in Flink SQL
> >>>> Hello David,
> >>>>
> >>>> Many thanks for the response! I have moved the discussion to a new
> >> link.
> >>>> The FLIP number was wrong (now it is at 528). You can find the new
> >>>> link below
> >>>>
> >>>> https://lists.apache.org/thread/28llyjdks9hrj5rvpbxhd3zd7bfqwrw8
> >>>>
> >>>> I have fixed the inconsistency in the text.
> >>>>
> >>>> Thanks for raising the point about SQL standard compliance with
> EXPLAIN
> >>>> EXECUTE STATEMENT SET. I appreciate your concern.
> >>>>
> >>>> I've checked PostgreSQL, MySQL, SQL Server, and Oracle, and found that
> >>>> their EXPLAIN is designed for single queries. EXECUTE STATEMENT SET
> >>> appears
> >>>> to be specific to Flink SQL.
> >>>>
> >>>> Best,
> >>>>
> >>>> On Mon, Apr 28, 2025 at 1:57 PM David Radley <david_rad...@uk.ibm.com
> >
> >>>> wrote:
> >>>>
> >>>>> Hi Ramin,
> >>>>> Thanks for the Flip.
> >>>>>
> >>>>> In the text you say
> >>>>> EXECUTE STATEMENT SET
> >>>>> BEGIN
> >>>>>     INSERT INTO `sales` SELECT ...;
> >>>>>     INSERT INTO `products` SELECT ...;
> >>>>> END;
> >>>>>
> >>>>> Twice, I think you are intending the 2nd text to be different. Maybe
> >>>>> EXPLAIN STATEMENT SET
> >>>>>
> >>>>> I am worried that in the SQL standard EXECUTE and EXPLAIN are at the
> >>> same
> >>>>> level when SQL parsing – so it would not be compliant SQL to allow
> >>>> EXPLAIN
> >>>>> EXECUTE. Is there precedence for this in another implementation / SQL
> >>>>> reference?
> >>>>>
> >>>>> Kind regards, David.
> >>>>>
> >>>>>
> >>>>> From: Ramin Gharib <rgha...@confluent.io> on behalf of Ramin Gharib
> >>>>> <rgha...@confluent.io.INVALID>
> >>>>> Date: Monday, 28 April 2025 at 12:04
> >>>>> To: dev@flink.apache.org <dev@flink.apache.org>
> >>>>> Subject: [EXTERNAL] [DISCUSS] FLIP-527 Support EXPLAIN EXECUTE
> >>> STATEMENT
> >>>>> SET Syntax in Flink SQL
> >>>>> Hi Flink Community,
> >>>>> ​
> >>>>>
> >>>>> I want to discuss FLIP-527: Support EXPLAIN EXECUTE STATEMENT SET
> >>> Syntax
> >>>> in
> >>>>> Flink SQL.
> >>>>>
> >>>>> This FLIP proposes to extend the EXPLAIN statement in Flink SQL to
> >>>> support
> >>>>> the EXECUTE STATEMENT SET syntax. The goal is to provide users with a
> >>> way
> >>>>> to understand the execution plan of a batch of SQL statements before
> >>> they
> >>>>> are executed together. This will enhance debugging, optimization, and
> >>>>> overall understanding of how Flink processes a series of dependent
> >>>>> operations.
> >>>>> ​
> >>>>>
> >>>>> You can find the full proposal details on the Flink Wiki at:
> >>>>> ​
> >>>>>
> >>>>>
> >>>>
> >>>
> >>
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-527%3A+Support+%60EXPLAIN+EXECUTE+STATEMENT+SET%60+Syntax+in+Flink+SQL
> >>>>>
> >>>>>
> >>>>> ​I'm eager to hear your thoughts, feedback, and potential concerns
> >>>>> regarding this proposal.
> >>>>>
> >>>>> Thanks,
> >>>>>
> >>>>>
> >>>>> ​Ramin Gharib
> >>>>>
> >>>>> [image: Confluent] <https://www.confluent.io>
> >>>>>
> >>>>> *Ramin Gharib *he/him/his
> >>>>>
> >>>>> Senior Software Engineer
> >>>>>
> >>>>> *Follow us: *[image: Blog]
> >>>>> <
> >>>>>
> >>>>
> >>>
> >>
> https://www.confluent.io/blog?utm_source=footer&utm_medium=email&utm_campaign=ch.email-signature_type.community_content.blog
> >>>>>> [image:
> >>>>> Twitter] <https://twitter.com/ConfluentInc>[image: LinkedIn]
> >>>>> <https://www.linkedin.com/company/confluent/>[image: Slack]
> >>>>> <https://slackpass.io/confluentcommunity>[image: YouTube]
> >>>>> <https://youtube.com/confluent>
> >>>>>
> >>>>> [image: Try Confluent Cloud for Free]
> >>>>> <
> >>>>>
> >>>>
> >>>
> >>
> https://www.confluent.io/get-started?utm_campaign=tm.fm-apac_cd.inbound&utm_source=gmail&utm_medium=organic
> >>>>>>
> >>>>>
> >>>>> Sent with Notion Mail <https://www.notion.so/product/mail>
> >>>>>
> >>>>> Unless otherwise stated above:
> >>>>>
> >>>>> IBM United Kingdom Limited
> >>>>> Registered in England and Wales with number 741598
> >>>>> Registered office: Building C, IBM Hursley Office, Hursley Park Road,
> >>>>> Winchester, Hampshire SO21 2JN
> >>>>>
> >>>>
> >>>>
> >>>> --
> >>>>
> >>>> [image: Confluent] <https://www.confluent.io>
> >>>> Ramin Gharib he/him/his
> >>>> Senior Software Engineer
> >>>> Follow us: [image: Blog]
> >>>> <
> >>>>
> >>>
> >>
> https://www.confluent.io/blog?utm_source=footer&utm_medium=email&utm_campaign=ch.email-signature_type.community_content.blog
> >>>>> [image:
> >>>> Twitter] <https://twitter.com/ConfluentInc>[image: LinkedIn]
> >>>> <https://www.linkedin.com/company/confluent/>[image: Slack]
> >>>> <https://slackpass.io/confluentcommunity>[image: YouTube]
> >>>> <https://youtube.com/confluent>
> >>>>
> >>>> [image: Try Confluent Cloud for Free]
> >>>> <
> >>>>
> >>>
> >>
> https://www.confluent.io/get-started?utm_campaign=tm.fm-apac_cd.inbound&utm_source=gmail&utm_medium=organic
> >>>>>
> >>>>
> >>>> Unless otherwise stated above:
> >>>>
> >>>> IBM United Kingdom Limited
> >>>> Registered in England and Wales with number 741598
> >>>> Registered office: Building C, IBM Hursley Office, Hursley Park Road,
> >>>> Winchester, Hampshire SO21 2JN
> >>>>
> >>>
> >>
> >
>
>

Reply via email to