The order using regular expression like syntax: setup activate (begin window (process)* end window)* deactivate teardown
Initially, I had coded it with the idea that an operator can be activated/deactivated multiple times during the lifetime of the operator while setup and teardown will be called exactly once. So far the implementation has not necessitated use of activate/deactivate more than once during the lifetime of any operator. So activate/deactivate also happens exactly once. The time between setup and beginWindow is unpredictable but typically is larger than that between activate and beginWindow. So I recommend that if you want to acquire resources e.g. connecting to high throughput stream, do it in activate (right before the first beginWindow) instead of setup. And even case of exceptions - if setup returned successfully, teardown is called. if activate was called, deactivate is also called. in case of error - the container is killed abruptly so no such provision exists. HTH. -- Chetan On Sun, Sep 20, 2015 at 10:06 PM, Tushar Gosavi <[email protected]> wrote: > If my operator implements ActivationListener then what is the order of > following calls. > > setup, teardown, activate, deactivate > and when they are called? > > In which scenario it is preferable to use ActivationListerner instead of > using setup and teardown? > > also If my operator throws an exception during any of beginWindow, process > and endWindow method, will teardown/deactive will get call on it? > > - Tushar. >
