Re: When does Trigger.clear() get called?

2018-10-16 Thread Hequn Cheng
Hi Andrew, You should call it manually, as the global window does not have a natural end. Best, Hequn On Wed, Oct 17, 2018 at 2:47 AM Andrew Danks wrote: > Hi Fabian & Hequn, > > Thank you for your responses. I am just responding now as I was out of > office for the last few days > > You

Re: When does Trigger.clear() get called?

2018-10-16 Thread Andrew Danks
Hi Fabian & Hequn, Thank you for your responses. I am just responding now as I was out of office for the last few days You mentioned that clear() is called when the time exceeds the window’s end timestamp. For my application I am using a GlobalWindow on a keyed stream -- would clear() get

Re: When does Trigger.clear() get called?

2018-10-15 Thread Averell
Thank you Fabian. All my doubts are cleared now. Best regards, Averell -- Sent from: http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/

Re: When does Trigger.clear() get called?

2018-10-15 Thread Fabian Hueske
Hi, Re Q1: The main purpose of the Trigger.clean() method is to remove all custom state of the Trigger. State must be explicitly removed, otherwise the program leaks memory. Re Q3: If you are using a keyed stream, you need to manually clean up the state by calling State.clear(). If you are using

Re: When does Trigger.clear() get called?

2018-10-13 Thread Averell
Hello Hequn, Thanks for the answers. Regarding question no.2, I am now clear. Regarding question no.1, does your answer apply to those custom states as well? This concern of mine came from Flink's implementation of CountTrigger, in which a custom state is being cleared explicitly in

Re: When does Trigger.clear() get called?

2018-10-13 Thread Hequn Cheng
Hi Averell, > 1. Neither PURGE nor clear() removes the States (so the States must be explicitly cleared by the user). Both PURGE and clear() remove state. The PURGE action removes the window state, i.e. the aggregate value. The clear() removes the window meta data including state in Trigger. >

Re: When does Trigger.clear() get called?

2018-10-13 Thread Averell
Hello Fabian, So could I assume the followings? 1. Neither PURGE nor clear() removes the States (so the States must be explicitly cleared by the user). 2. When an event for a window arrives after PURGE has been called, it is still be processed, and is treated as the first event of that window.

Re: When does Trigger.clear() get called?

2018-10-12 Thread Fabian Hueske
Hi Andrew, The PURGE action of a window removes the window state (i.e., the collected events or computed aggregate) but the window meta data including the Trigger remain. The Trigger.close() method is called, when the winodw is completely (i.e., all meta data) discarded. This happens, when the

Re: When does Trigger.clear() get called?

2018-10-11 Thread Hequn Cheng
Hi Andrew, Do you use CountWindow? You can switch to TimeWindow to have a test. I'm not quite familiar with window. I checked the code and found that clear() is called only when timer is triggered, i.e, called at the end of time window. Hope this helps. Best, Hequn On Fri, Oct 12, 2018 at 6:23

When does Trigger.clear() get called?

2018-10-11 Thread Andrew Danks
Hello, I see that the clear() function is implemented for various types of Triggers in the Flink API. For example: https://github.com/apache/flink/blob/release-1.3/flink-streaming-java/src/main/java/org/apache/flink/streaming/api/windowing/triggers/ContinuousProcessingTimeTrigger.java#L87