It would be grate. Only one comment: we can't cancel service or service's method execution because service grid API doesn't imply any requirement to service implementation. So if user do something like infinite cycle or blocking but non-interruptible operation it's impossible to interrupt it. Also service method invocation itself isn't cluster wide or local node specific operation. This invocations not register anywhere and can't be tracked and killed.
Unfortunately, the same is valid for some jobs in sense of infinite or non-interruptible operations. On Wed, Jan 15, 2020 at 9:30 PM Николай Ижиков <nizhi...@apache.org> wrote: > > 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? >