ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexei Scherbakov <alexey.scherbak...@gmail.com>
Subject Re: [DISCUSSION] API to KILL any user started computation
Date Thu, 16 Jan 2020 12:28:14 GMT
Nikolaj,

Can we use system views instead of implementing something new ?

Each user operation has an unique ID.

It's possible to introduce universal SQL kill something like:

kill transaction ID

where id is taken from system view.


чт, 16 янв. 2020 г. в 14:19, Николай Ижиков <nizhikov@apache.org>:

> Hello, Alexey.
>
> I’m talking about *administrator* API.
>
> For example, the User has a cluster that is used by several applications.
> Some application starts buggy compute tasks that consume all CPU resources.
> Right now, administrator doesn’t have the ability to kill this task.
>
> This can lead to instability of the whole cluster.
>
>
> > 16 янв. 2020 г., в 13:42, Alexei Scherbakov <
> alexey.scherbakoff@gmail.com> написал(а):
> >
> > Transactions can be also rolled back using tx.close where close is
> > java.lang.AutoCloseable#close
> > It looks for me to the definition of uniform cancel API.
> >
> >
> >
> > чт, 16 янв. 2020 г. в 13:37, Alexei Scherbakov <
> alexey.scherbakoff@gmail.com
> >> :
> >
> >> Nikolaj,
> >>
> >> We already have cancellation possibilities for almost every user
> >> computation.
> >> Transactions are cancelled using tx.rollback()
> >> Queries are cancelled using query.close()
> >> Task is cancellable through ComputeTaskSession
> >>
> >> What is uniform cancel API ? Why do we need it ?
> >>
> >>
> >>
> >> ср, 15 янв. 2020 г. в 21:30, Николай Ижиков <nizhikov@apache.org>:
> >>
> >>> Hello, Igniters.
> >>>
> >>> As you may know, we put a lot of effort to improve Ignite metric and
> >>> diagnostic API.
> >>> We have created the following API:
> >>>    * Metric manager
> >>>    * System view manager
> >>> As far as I know, we would have tracing capabilities soon.
> >>>
> >>> I think it's time to take the next step.
> >>> We should provide to the administrator the API to cancel(stop, kill)
> >>> arbitrary user started computation.
> >>>
> >>> Right now we have API to do it for:
> >>>    * transactions `TransactionsMXBean#getActiveTransactions`.
> >>>    * SQL queries: `KILL QUERY` sql command and visor task -
> >>> `VisorQueryCancelTask`
> >>>
> >>> Please, note, these features are implemented via different API.
> >>>
> >>> I think we should introduce uniform Cancel API for the following
> >>> computations:
> >>>
> >>>    * service.
> >>>    * specific service method execution.
> >>>    * compute job(compute task).
> >>>    * query(scan, continuous, text).
> >>>
> >>> We should  also rework kill transaction and kill SQL queries API to
> make
> >>> them similar to each other.
> >>> I have plans to write an IEP for it and implement it.
> >>> What do you think?
> >>>
> >>>
> >>
> >> --
> >>
> >> Best regards,
> >> Alexei Scherbakov
> >>
> >
> >
> > --
> >
> > Best regards,
> > Alexei Scherbakov
>
>

-- 

Best regards,
Alexei Scherbakov

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message