Hi Jim,

It would be nice if you can take a look on 
https://github.com/apache/flink/pull/21133 and give me some feedback.

Best,
Yu Zelin

> 2022年11月12日 00:44,Jim Hughes <jhug...@confluent.io.INVALID> 写道:
> 
> Hi Shengkai,
> 
> I think there is an additional case where a proxy is between the client and
> gateway.  In that case, being able to pass headers would allow for
> additional options / features.
> 
> I see several PRs from Yu Zelin.  Is there a first one to review?
> 
> Cheers,
> 
> Jim
> 
> On Thu, Nov 10, 2022 at 9:42 PM Shengkai Fang <fskm...@gmail.com> wrote:
> 
>> Hi, Jim.
>> 
>>> how to pass additional headers when sending REST requests
>> 
>> Could you share what headers do you want to send when using SQL Client?  I
>> think there are two cases we need to consider. Please correct me if I am
>> wrong.
>> 
>> # Case 1
>> 
>> If users wants to connect to the SQL Gateway with its password, I think the
>> users should type
>> ```
>> ./sql-client.sh --user xxx --password xxx
>> ```
>> in the terminal and the OpenSessionRequest should be enough.
>> 
>> # Case 2
>> 
>> If users  wants to modify the execution config, users should type
>> ```
>> Flink SQL> SET  `<config_name>` = `<config_value>`;
>> ```
>> in the terminal. The Client can send ExecuteStatementRequest to the
>> Gateway.
>> 
>>> As you have FLIPs or PRs, feel free to let me, Jamie, and Alexey know.
>> 
>> It would be nice you can join us to finish the feature. I think the
>> modification about the SQL Gateway side is ready to review.
>> 
>> Best,
>> Shengkai
>> 
>> 
>> Jim Hughes <jhug...@confluent.io.invalid> 于2022年11月11日周五 05:19写道:
>> 
>>> Hi Yu Zelin,
>>> 
>>> I have read through your draft and it looks good.  I am new to Flink, so
>> I
>>> haven't learned about everything which needs to be done yet.
>>> 
>>> One of the considerations that I'm interested in understanding is how to
>>> pass additional headers when sending REST requests.  From looking at the
>>> code, it looks like a custom `OutboundChannelHandlerFactory` could be
>>> created to read additional configuration and set headers.  Does that make
>>> sense?
>>> 
>>> Thank you very much for sharing the proof of concept code and the
>>> document.  As you have FLIPs or PRs, feel free to let me, Jamie, and
>> Alexey
>>> know.  We'll be happy to review them.
>>> 
>>> Cheers,
>>> 
>>> Jim
>>> 
>>> On Wed, Nov 9, 2022 at 11:43 PM yu zelin <yuzelin....@gmail.com> wrote:
>>> 
>>>> Hi, all
>>>> Sorry for late response. As Shengkai mentioned, Currently I’m working
>>> with
>>>> him on SQL Client, dedicating to implement the Remote Mode of SQL
>>> Client. I
>>>> have written a draft of implementation plan and will write a FLIP about
>>> it
>>>> ASAP. If you are interested in, please take a look at the draft and
>> it’s
>>>> nice if you give me some feedback.
>>>> The doc is at:
>>>> 
>>> 
>> https://docs.google.com/document/d/14cS4VBSamMUnlM_PZuK6QKLfriUuQU51iqET5oiYy_c/edit?usp=sharing
>>>> 
>>>>> 2022年11月7日 11:19,Shengkai Fang <fskm...@gmail.com> 写道:
>>>>> 
>>>>> Hi, all. Sorry for the late reply.
>>>>> 
>>>>>> Is the gateway mode planned to be supported for SQL Client in 1.17?
>>>>>> Do you have anything you can already share so we can start with
>> your
>>>> work or just play around with it.
>>>>> 
>>>>> Yes. @yzl is working on it and he will list the implementation plan
>>>> later and share the progress. I think the change is not very large and
>> I
>>>> think it's not a big problem to finish this in the release-1.17. I will
>>>> join to develop this in the mid of November.
>>>>> 
>>>>> Best,
>>>>> Shengkai
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> Jamie Grier <jgr...@apache.org <mailto:jgr...@apache.org>>
>>>> 于2022年11月5日周六 00:48写道:
>>>>>> Hi Shengkai,
>>>>>> 
>>>>>> We're doing more and more Flink development at Confluent these days
>>> and
>>>> we're currently trying to bootstrap a prototype that relies on the SQL
>>>> Client and Gateway.  We will be using the the components in some of our
>>>> projects and would like to co-develop them with you and the rest of the
>>>> Flink community.
>>>>>> 
>>>>>> As of right now it's a pretty big blocker for our upcoming milestone
>>>> that the SQL Client has not yet been modified to talk to the SQL
>> Gateway
>>>> and we want to help with this effort ASAP!  We would be even willing to
>>>> take over the work if it's not yet started but I suspect it already is.
>>>>>> 
>>>>>> Anyway, rather than start working immediately on the SQL Client and
>>>> adding a the new Gateway mode ourselves we wanted to start a
>> conversation
>>>> with you and see where you're at with things and offer to help.
>>>>>> 
>>>>>> Do you have anything you can already share so we can start with your
>>>> work or just play around with it.  Like I said, we just want to get
>>> started
>>>> and are very able to help in this area.  We see both the SQL Client and
>>>> Gateway being very important for us and have a good team to help
>> develop
>>> it.
>>>>>> 
>>>>>> Let me know if there is a branch you can share, etc.  It would be
>> much
>>>> appreciated!
>>>>>> 
>>>>>> -Jamie Grier
>>>>>> 
>>>>>> 
>>>>>> On 2022/10/28 06:06:49 Shengkai Fang wrote:
>>>>>>> Hi.
>>>>>>> 
>>>>>>>> Is there a possibility for us to get engaged and at least
>>> introduce
>>>>>>> initial changes to support authentication/authorization?
>>>>>>> 
>>>>>>> Yes. You can write a FLIP about the design and change. We can
>>> discuss
>>>> this
>>>>>>> in the dev mail. If the FLIP passes, we can develop it together.
>>>>>>> 
>>>>>>>> Another question about persistent Gateway: did you have any
>>> specific
>>>>>>> thoughts about it or some draft design?
>>>>>>> 
>>>>>>> We don't have any detailed plan about this. But I know Livy has a
>>>> similar
>>>>>>> feature.
>>>>>>> 
>>>>>>> Best,
>>>>>>> Shengkai
>>>>>>> 
>>>>>>> 
>>>>>>> Alexey Leonov-Vendrovskiy <vendrov...@gmail.com <mailto:
>>>> vendrov...@gmail.com>> 于2022年10月27日周四 15:12写道:
>>>>>>> 
>>>>>>>> Apologies from the delayed response on my side.
>>>>>>>> 
>>>>>>>> I think the authentication module is not part of our plan in
>> 1.17
>>>> because
>>>>>>>>> of the busy work. I think we'll start the design at the end of
>>> the
>>>>>>>>> release-1.17.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Is there a possibility for us to get engaged and at least
>>> introduce
>>>>>>>> initial changes to support authentication/authorization?
>>>> Specifically,
>>>>>>>> changes in the API and in SQL Client.
>>>>>>>> 
>>>>>>>> We expect the following authentication flow:
>>>>>>>> 
>>>>>>>> On the SQL gateway we want to be able to use a delegation token.
>>>>>>>> SQL client should be able to supply an API key.
>>>>>>>> The SQL Gateway *would not *be submitting jobs on behalf of the
>>>> client.
>>>>>>>> 
>>>>>>>> Ideally it would be nice to introduce some interfaces in the SQL
>>>> Gateway
>>>>>>>> that would allow implementing custom authentication and
>>>> authorization.
>>>>>>>> 
>>>>>>>> Another question about persistent Gateway: did you have any
>>> specific
>>>>>>>> thoughts about it or some draft design?
>>>>>>>> 
>>>>>>>> Thanks,
>>>>>>>> Alexey
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On Fri, Oct 21, 2022 at 1:13 AM Shengkai Fang <
>> fskm...@gmail.com
>>>> <mailto:fskm...@gmail.com>> wrote:
>>>>>>>> 
>>>>>>>>> Sorry for the late response.
>>>>>>>>> 
>>>>>>>>> In the next version(Flink 1.17), we plan to support the SQL
>>> Client
>>>> to
>>>>>>>>> submit the statement to the Flink SQL Gateway. The FLINK-29486
>>>>>>>>> <https://issues.apache.org/jira/browse/FLINK-29486> is the
>> first
>>>> step to
>>>>>>>>> remove the usage of the `Parser` in the client side, which
>> needs
>>>> to read
>>>>>>>>> the table schema during the converting sql node to operation. I
>>>> think the authentication
>>>>>>>>> module is not part of our plan in 1.17 because of the busy
>> work.
>>> I
>>>> think
>>>>>>>>> we'll start the design at the end of the release-1.17.
>>>>>>>>> But could you share more details about the requirements of the
>>>>>>>>> authentication?
>>>>>>>>> - Do you use the kerberos or delegation token or password to do
>>> the
>>>>>>>>> authentication?
>>>>>>>>> - After the authentication, do you need the sql gateway to
>> submit
>>>> the
>>>>>>>>> job on behalf of the client?
>>>>>>>>> - ...
>>>>>>>>> 
>>>>>>>>> For detailed implementation, I think Hive and Presto are good
>>>> examples to
>>>>>>>>> dig in.  If you have some thoughts about the authentication
>>> module,
>>>>>>>>> please let me know.
>>>>>>>>> 
>>>>>>>>> Best,
>>>>>>>>> Shengkai
>>>>>>>>> 
>>>>>>>>> Alexey Leonov-Vendrovskiy <vendrov...@gmail.com <mailto:
>>>> vendrov...@gmail.com>> 于2022年10月19日周三 00:37写道:
>>>>>>>>> 
>>>>>>>>>> Thank you for the response, Yuxia!
>>>>>>>>>> 
>>>>>>>>>> Shengkai, I would like to learn more about nearest and a bit
>>> more
>>>>>>>>>> distant plans about development of the SQL Gateway and the SQL
>>>> Client.
>>>>>>>>>> Do you have a description of the work planned or maybe can
>> share
>>>> general
>>>>>>>>>> thoughts about the Authentication module, or Persistent
>> Gateway.
>>>>>>>>>> How can the authentication part be addressed on the SQL Client
>>>> side?
>>>>>>>>>> 
>>>>>>>>>> Regards,
>>>>>>>>>> -Alexey
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> On Wed, Oct 12, 2022 at 11:24 PM yuxia <
>>>> luoyu...@alumni.sjtu.edu.cn <mailto:luoyu...@alumni.sjtu.edu.cn>>
>>>>>>>>>> wrote:
>>>>>>>>>> 
>>>>>>>>>>>> In what Flink’s release the connection from SQL Client to
>> the
>>>> Gateway
>>>>>>>>>>> is
>>>>>>>>>>> expected to be added?
>>>>>>>>>>> Flink 1.17
>>>>>>>>>>> 
>>>>>>>>>>>> “Authentication module” (2) and “Persistent Gateway” (4) as
>>>>>>>>>>> possible future work. Were there any recent discussions on
>>> these
>>>>>>>>>>> subjects?
>>>>>>>>>>> No recent discussions on these subjects, but I think it'll
>> come
>>>> in
>>>>>>>>>>> Flink 1.17
>>>>>>>>>>> 
>>>>>>>>>>>> Another related topic: are there ideas around making SQL
>>>> Gateway a
>>>>>>>>>>> multi-tenant
>>>>>>>>>>> component?
>>>>>>>>>>> Yes.
>>>>>>>>>>> 
>>>>>>>>>>> Shengkaiis the maintainer of SQL Client and SQL gateway,
>> maybe
>>>> he can
>>>>>>>>>>> provide more information.
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> Best regards,
>>>>>>>>>>> Yuxia
>>>>>>>>>>> 
>>>>>>>>>>> ----- 原始邮件 -----
>>>>>>>>>>> 发件人: "Alexey Leonov-Vendrovskiy" <vendrov...@gmail.com
>>> <mailto:
>>>> vendrov...@gmail.com>>
>>>>>>>>>>> 收件人: "dev" <dev@flink.apache.org <mailto:
>> dev@flink.apache.org
>>>>> 
>>>>>>>>>>> 发送时间: 星期四, 2022年 10 月 13日 下午 12:33:08
>>>>>>>>>>> 主题: SQL Gateway and SQL Client
>>>>>>>>>>> 
>>>>>>>>>>> Hi all,
>>>>>>>>>>> 
>>>>>>>>>>> I’m Alexey from Confluent. This is my first email in this
>>>> discussion
>>>>>>>>>>> list.
>>>>>>>>>>> I’m rather new to Flink, and to local customs of
>> communication.
>>>> I want
>>>>>>>>>>> to
>>>>>>>>>>> dive deeper and hopefully get more involved over time.
>>>>>>>>>>> 
>>>>>>>>>>> Currently I have a few questions around SQL Gateway and SQL
>>>> Client.
>>>>>>>>>>> Specifically I wanted to learn what is the vision around the
>>>> nearest
>>>>>>>>>>> future
>>>>>>>>>>> of these two components.
>>>>>>>>>>> 
>>>>>>>>>>> In what Flink’s release the connection from SQL Client to the
>>>> Gateway is
>>>>>>>>>>> expected to be added? I was looking at
>>>>>>>>>>> https://issues.apache.org/jira/browse/FLINK-29486, and
>>> recently
>>>> it got
>>>>>>>>>>> renamed from “Enable SQL Client to Connect SQL Gateway in
>>> Remote
>>>> Mode”
>>>>>>>>>>> to
>>>>>>>>>>> “Introduce Client Parser to get statement type”.  I did some
>>>> search, but
>>>>>>>>>>> didn’t find a good place where the client's work in this
>>>> direction is
>>>>>>>>>>> discussed or tracked.
>>>>>>>>>>> 
>>>>>>>>>>> A couple questions about the SQL Gateway. The FLIP-91
>>>>>>>>>>> <
>>>>>>>>>>> 
>>>> 
>>> 
>> https://cwiki.apache.org/confluence/display/FLINK/FLIP-91%3A+Support+SQL+Gateway#FLIP91:SupportSQLGateway-Futurework
>>>>>>>>>>>> 
>>>>>>>>>>> mentions “Authentication module” (2) and “Persistent Gateway”
>>>> (4) as
>>>>>>>>>>> possible future work. Were there any recent discussions on
>>> these
>>>>>>>>>>> subjects?
>>>>>>>>>>> Or maybe there are some ideas how to move these directions
>>>> forward?
>>>>>>>>>>> Another
>>>>>>>>>>> related topic: are there ideas around making SQL Gateway a
>>>> multi-tenant
>>>>>>>>>>> component?
>>>>>>>>>>> 
>>>>>>>>>>> Thank you,
>>>>>>>>>>> 
>>>>>>>>>>> Alexey
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>> 
>>>> 
>>>> 
>>> 
>> 

Reply via email to