Thanks all,

As your suggestion, I'd like to do:
- FLIP-63: move "CREATE TABLE ... PARTITIONED BY" and "MSCK REPAIR TABLE"
to further discussion chapter.
- Remove hive dialect limitation for supported "INSERT OVERWRITE" and
"INSERT ... PARTITION(...)".
- Limit "CREATE TABLE ... PARTITIONED BY" to hive dialect.
Thanks everyone again.

Best,
Jingsong Lee

On Sat, Dec 14, 2019 at 2:41 AM Xuefu Z <usxu...@gmail.com> wrote:

> Thanks all for the healthy discussions. I'd just like to point out a light
> difference between standard and standard compatibility. Most of DB vendors
> meant the latter  when they claim following a sql standard. However, it
> doesn't mean they don't have any syntax beyond the standard grammar.
> Extension is very common.
>
> Therefore, I think Flink SQL can also have more freedom in extending the
> standard grammar and adopting non-standard grammars such as "INSERT
> OVERWRITE" that comes from Hive. While Hive has a lot of good cases like
> this, we are also free to reject or put for a specific dialect anything
> that's too specific or doesn't make sense in Flink. To me, "NSERT
> OVERWRITE" can be adopted, which "MSCK REPAIR TABLE" can be rejected or put
> as "Hive dailect".
>
> Lastly, if FLIP is officially accepted, I agree that we should respect and
> fix things as bugs accordingly. If there is a second thought or debate on
> anything, a vote is required to overturn it. Before that, the original FLIP
> holds.
>
> Thanks,
> Xuefu
>
>
> On Fri, Dec 13, 2019 at 1:20 AM Jingsong Li <jingsongl...@gmail.com>
> wrote:
>
> > Hi Timo,
> >
> > Thanks for your feedback.
> >
> > The reason of `The DDL can like this (With hive dialect)` is:
> > The syntax of creating partition table is controversial, so we think we
> > should put it aside for the time being to make it invisible to users.
> Since
> > we implemented this syntax in 1.9, we decided to put it under hive
> dialect.
> > (Subsequent votes will be taken to determine.)
> > MSCK means metastore check, It is listed in the document mainly for the
> > integrity of the story. Of course, it can be ignored. I fully agree that
> it
> > can be discussed slowly in the future.
> >
> > >The current problem for the CLI is that it still does not use the
> > flink-sql-parser. We can support all new syntax in Flink 1.11 once the
> CLI
> > architecture has changed there. With the current architecture (using
> simple
> > regex), I'm not sure if we can support all the grammar listed in the
> FLIP.
> >
> > You are right, we can not support any DDL grammars in FLIP. we should
> wait
> > refactor of SQL-CLI in 1.11.
> > What we can do is to remove the restriction of hiveDialect for the insert
> > (overwrite and partition) syntax. That's what we've supported, and so far
> > we haven't received any objections.
> >
> > Best,
> > Jingsong Lee
> >
> > On Fri, Dec 13, 2019 at 4:51 PM Timo Walther <twal...@apache.org> wrote:
> >
> > > Hi everyone,
> > >
> > > sorry, I was not aware that FLIP-63 already lists a lot of additional
> > > SQL grammar. It was accepted though an official voting process so I
> > > guess we can adopt the listed grammar for Flink SQL.
> > >
> > > The only thing that confuses me is the mentioning of `The DDL can like
> > > this (With hive dialect)`, for the next time we should make it more
> > > explicit what belongs to the Flink SQL dialect and what belongs to the
> > > Hive dialect. Also the not intuitive `MSCK REPAIR TABLE` seems strange
> > > to me. What does MSCK stand for? Maybe we should skip stuff like that
> > > for now.
> > >
> > > The current problem for the CLI is that it still does not use the
> > > flink-sql-parser. We can support all new syntax in Flink 1.11 once the
> > > CLI architecture has changed there. With the current architecture
> (using
> > > simple regex), I'm not sure if we can support all the grammar listed in
> > > the FLIP.
> > >
> > > Regards,
> > > Timo
> > >
> > > On 13.12.19 04:22, Rui Li wrote:
> > > > Hi Timo,
> > > >
> > > > I understand we need further discussion about syntax/dialect for
> 1.11.
> > > But
> > > > as Jark has pointed out, the current implementation violates the
> > accepted
> > > > design of FLIP-63, which IMO qualifies as a bug. Given that it's a
> bug
> > > and
> > > > has great impact on the usability of our Hive integration, do you
> think
> > > we
> > > > can fix it in 1.10?
> > > >
> > > > On Fri, Dec 13, 2019 at 12:24 AM Jingsong Li <jingsongl...@gmail.com
> >
> > > wrote:
> > > >
> > > >> Hi Timo,
> > > >>
> > > >> I am OK if you think they are not bug and they should not be
> included
> > in
> > > >> 1.10.
> > > >>
> > > >> I think they have been accepted in FLIP-63. And there is no
> objection.
> > > It
> > > >> has been more than three months since the discussion of FLIP-63.
> It's
> > > been
> > > >> six months since Flink added these two syntaxs.
> > > >>
> > > >> But I can also start discussion and vote thread for FLIP-63 again,
> to
> > > make
> > > >> sure once again that everyone is happy.
> > > >>
> > > >> Best,
> > > >> Jingsong Lee
> > > >>
> > > >> On Thu, Dec 12, 2019 at 11:35 PM Timo Walther <twal...@apache.org>
> > > wrote:
> > > >>
> > > >>> Hi Jingsong,
> > > >>>
> > > >>> I will also add my opinion here for future discussions:
> > > >>>
> > > >>> We had long discussions around SQL syntax in the past (e.g. for
> > > >>> WATERMARK or the concept of SYSTEM/TEMPORARY catalog objects) but
> in
> > > the
> > > >>> end all parties were happy and we came up with a good long-term
> > > solution
> > > >>> that is unlikely to be changed in the near future. IMHO we can
> differ
> > > >>> from the standard esp. for DDL statements (every SQL vendors has
> > custom
> > > >>> syntax there) but still we should have time to hear many opinions.
> > > >>> However, for DQL and DML statements we need to be even more
> cautious
> > > >>> because here we enter SQL standard areas.
> > > >>>
> > > >>> Happy to discuss a partion syntax for 1.11 and go with the solution
> > > that
> > > >>> Jark proposed using a config option.
> > > >>>
> > > >>> Thanks,
> > > >>> Timo
> > > >>>
> > > >>>
> > > >>> On 12.12.19 09:40, Jark Wu wrote:
> > > >>>> Hi Jingsong,
> > > >>>>
> > > >>>> Thanks for the explanation, I think I misunderstood your point at
> > the
> > > >>>> begining.
> > > >>>> As FLIP-63 proposed, INSERT OVERWRITE and INSERT PARTITION syntax
> > are
> > > >>> added
> > > >>>> to Flink's
> > > >>>> SQL syntax, but CREATE PARTITION TABLE should be limited under
> Hive
> > > >>>> dialect.
> > > >>>> However, the current implementation is opposite, INSERT OVERWRITE
> > > >>>> and INSERT PARTITION are
> > > >>>> under the dialect limitation, but CREATE PARTITION TABLE is not.
> > > >>>>
> > > >>>> So it is indeed a bug which should be fixed in 1.10.
> > > >>>>
> > > >>>> Best,
> > > >>>> Jark
> > > >>>>
> > > >>>> On Thu, 12 Dec 2019 at 16:35, Jingsong Li <jingsongl...@gmail.com
> >
> > > >>> wrote:
> > > >>>>
> > > >>>>> Hi Jark,
> > > >>>>>
> > > >>>>> Let's recall FLIP-63,
> > > >>>>> We supported these syntax in hive dialect at 1.9. All of my
> reasons
> > > >> for
> > > >>>>> launching FLIP-63 are to bring partition support to Flink itself.
> > > >>>>> Not only batch, but also we have the need to stream jobs to write
> > > >>> partition
> > > >>>>> files today, which is also one of our very important application
> > > >>> scenarios.
> > > >>>>>
> > > >>>>> The original intention of FLIP-63 is to bring all partition
> syntax
> > to
> > > >>>>> Flink, but in the end you and I have some different opinion in
> > > >> creating
> > > >>>>> partition table, so our consensus is to leave it in hive dialect,
> > > only
> > > >>> it.
> > > >>>>>
> > > >>>>> [1]
> > > >>>>>
> > > >>>>>
> > > >>>
> > > >>
> > >
> >
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-63%3A+Rework+table+partition+support
> > > >>>>>
> > > >>>>> Best,
> > > >>>>> Jingsong Lee
> > > >>>>>
> > > >>>>> On Thu, Dec 12, 2019 at 4:05 PM Jark Wu <imj...@gmail.com>
> wrote:
> > > >>>>>
> > > >>>>>> Hi jingsong,
> > > >>>>>>
> > > >>>>>> Watermark is not a standard syntax, that's why we had a FLIP and
> > > long
> > > >>>>>> discussion to add it to
> > > >>>>>> Flink's SQL syntax. I think if we want to add INSERT OVERWRITE
> and
> > > >>>>>> PARTITION syntax to
> > > >>>>>>    Flink's own syntax,  we also need a FLIP or a VOTE, and this
> > may
> > > >>> can't
> > > >>>>>> happen soon (we should
> > > >>>>>> hear more people's opinions on this).
> > > >>>>>>
> > > >>>>>> Regarding to the sql-dialect configuration, I was not saying to
> > > >> involve
> > > >>>>> the
> > > >>>>>> whole FLIP-89. I mean we can just
> > > >>>>>> start a VOTE to expose it as `table.planner.sql-dialect` and
> > include
> > > >> it
> > > >>>>> in
> > > >>>>>> 1.10. The change can be very small, by
> > > >>>>>> adding a ConfigOption and changing the implementation of
> > > >>>>>> TableConfig#getSqlDialect/setSqlDialect. I believe
> > > >>>>>> it is smaller and safer than changing the parser.
> > > >>>>>>
> > > >>>>>> Btw, I cc'ed Yu Li and Gary into the discussion, because release
> > > >>> managers
> > > >>>>>> should be aware of this.
> > > >>>>>>
> > > >>>>>> Best,
> > > >>>>>> Jark
> > > >>>>>>
> > > >>>>>>
> > > >>>>>>
> > > >>>>>> On Thu, 12 Dec 2019 at 11:47, Danny Chan <yuzhao....@gmail.com>
> > > >> wrote:
> > > >>>>>>
> > > >>>>>>> Thanks Jingsong for bring up this discussion ~
> > > >>>>>>>
> > > >>>>>>> After reviewing FLIP-63, it seems that we have made a
> conclusion
> > > for
> > > >>>>> the
> > > >>>>>>> syntax
> > > >>>>>>>
> > > >>>>>>> - INSERT OVERWRITE ...
> > > >>>>>>> - INSERT INTO … PARTITION
> > > >>>>>>>
> > > >>>>>>> Which means that they should not have the Hive dialect
> > limitation,
> > > >> so
> > > >>>>> I’m
> > > >>>>>>> inclined that the behaviors for SQL-CLI is unexpected, or a
> “bug”
> > > >> that
> > > >>>>>> need
> > > >>>>>>> to fix.
> > > >>>>>>>
> > > >>>>>>> We did not make a conclusion for the syntax:
> > > >>>>>>>
> > > >>>>>>> - CREATE TABLE … PARTITIONED BY ...
> > > >>>>>>>
> > > >>>>>>> Which means that the behavior of it is under-discussion, so it
> is
> > > >> okey
> > > >>>>> to
> > > >>>>>>> be without the HIVE dialect limitation, we do not actually have
> > any
> > > >>>>> table
> > > >>>>>>> sources/sinks that support such a DDL so for current code base,
> > > >> users
> > > >>>>>>> should not be influenced by the behaviors change.
> > > >>>>>>>
> > > >>>>>>> So I’m
> > > >>>>>>>
> > > >>>>>>> +1 to remove the hive dialect limitations for INSERT OVERWRITE
> > and
> > > >>>>> INSERT
> > > >>>>>>> PARTITION
> > > >>>>>>> +0 to add yaml dialect conf to SQL-CLI because FLIP-89 is not
> > > >> finished
> > > >>>>>>> yet, we better do this until FLIP-89 is resolved.
> > > >>>>>>>
> > > >>>>>>> Best,
> > > >>>>>>> Danny Chan
> > > >>>>>>> 在 2019年12月11日 +0800 PM5:29,Jingsong Li <jingsongl...@gmail.com
> > > >,写道:
> > > >>>>>>>> Hi Dev,
> > > >>>>>>>>
> > > >>>>>>>> After cutting out the branch of 1.10, I tried the following
> > > >> functions
> > > >>>>>> of
> > > >>>>>>>> SQL-CLI and found that it does not support:
> > > >>>>>>>> - insert overwrite
> > > >>>>>>>> - PARTITION (partcol1=val1, partcol2=val2 ...)
> > > >>>>>>>> The SQL pattern is:
> > > >>>>>>>> INSERT { INTO | OVERWRITE } TABLE tablename1 [PARTITION
> > > >>>>> (partcol1=val1,
> > > >>>>>>>> partcol2=val2 ...) select_statement1 FROM from_statement;
> > > >>>>>>>> It is a surprise to me.
> > > >>>>>>>> The reason is that we only allow these two grammars in hive
> > > >> dialect.
> > > >>>>>> And
> > > >>>>>>>> SQL-CLI does not have an interface to switch dialects.
> > > >>>>>>>>
> > > >>>>>>>> Because it directly hinders the SQL-CLI's insert syntax in
> hive
> > > >>>>>>> integration
> > > >>>>>>>> and seriously hinders the practicability of SQL-CLI.
> > > >>>>>>>> And we have introduced these two grammars in FLIP-63 [1] to
> > Flink.
> > > >>>>>>>> Here are my question:
> > > >>>>>>>> 1.Should we remove hive dialect limitation for these two
> > grammars?
> > > >>>>>>>> 2.Should we fix this in 1.10?
> > > >>>>>>>>
> > > >>>>>>>> [1]
> > > >>>>>>>>
> > > >>>>>>>
> > > >>>>>>
> > > >>>>>
> > > >>>
> > > >>
> > >
> >
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-63%3A+Rework+table+partition+support
> > > >>>>>>>>
> > > >>>>>>>> Best,
> > > >>>>>>>> Jingsong Lee
> > > >>>>>>>
> > > >>>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>> --
> > > >>>>> Best, Jingsong Lee
> > > >>>>>
> > > >>>>
> > > >>>
> > > >>>
> > > >>
> > > >> --
> > > >> Best, Jingsong Lee
> > > >>
> > > >
> > > >
> > >
> > >
> >
> > --
> > Best, Jingsong Lee
> >
>
>
> --
> Xuefu Zhang
>
> "In Honey We Trust!"
>


-- 
Best, Jingsong Lee

Reply via email to