Hi, Paul.

Thanks for you feedback!

> Is operation status exposed to users or just for internal usage to
represent the job status

Only in the synchronized job submission, the operation status contains the
job status. When user chooses the synchronized job submission, it means
- user expects to wait the job finish.
- When users cancels the Operation, it should also cancel the execution of
the job.

Therefore, I think the Operation should also manage the job lifecycle in
the synchronized job submission, which means the JobStatus should be
reflected in the OperationStatus. In the async mode, the Operation comes to
the end when the GatewayService submits the jobs. In this case, we may also
introduce the interface to allow users to get the JobStatus.

> If the cluster is temporarily unavailable, e.g. jobmanager failover, what
status would be
    the operation?

Yes. I will modify the FLIP with your suggestions.

> Does the endpoint pull in the whole result set before returning it to the
client?

No. The endpoint doesn't cache anything. It just deliver the request to the
GatewayService and the GatewayService return the results in the fix-size
buffer.

Best,
Shengkai


Paul Lam <paullin3...@gmail.com> 于2022年4月21日周四 17:04写道:

> Hi Shengkai,
>
> Good to see FLIP-91 is revisited after such a long time. Big +1 for the
> proposal.
>
> I’ve been using the SQL gateway for a while, just put in my 2 cents:
>
> 1. Is operation status exposed to users or just for internal usage to
> represent the job status?
>     I’m assuming the latter, or else it might confuse users with job
> status and operation status.
>
> 2. If the cluster is temporarily unavailable, e.g. jobmanager failover,
> what status would be
>     the operation? I think PENDING should be better than ERROR.
>
> 3. WRT synchronized job submission, does the endpoint pull in the whole
> result set before
>     returning it to the client?
>
> Thanks a lot!
>
> Best,
> Paul Lam
>
> > 2022年4月21日 14:42,Shengkai Fang <fskm...@gmail.com> 写道:
> >
> > Hi, Flink developers.
> >
> > I want to start a discussion about the FLIP-91: Support Flink SQL
> > Gateway[1]. Flink SQL Gateway is a service that allows users to submit
> and
> > manage their jobs in the online environment with the pluggable endpoints.
> > The reason why we introduce the Gateway with pluggable endpoints is that
> > many users have their preferences. For example, the HiveServer2 users
> > prefer to use the gateway with HiveServer2-style API, which has numerous
> > tools. However, some filnk-native users may prefer to use the REST API.
> > Therefore, we propose the SQL Gateway with pluggable endpoint.
> >
> > In the FLIP, we also propose the REST endpoint, which has the similar
> > APIs compared to the gateway in the ververica/flink-sql-gateway[2]. At
> the
> > last, we discuss how to use the SQL Client to submit the statement to the
> > Gateway with the REST API.
> >
> > I am glad that you can give some feedback about FLIP-91.
> >
> > Best,
> > Shengkai
> >
> > [1]
> >
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-91%3A+Support+SQL+Client+Gateway
> > [2] https://github.com/ververica/flink-sql-gateway
>
>

Reply via email to