Dmitry,

You are right about punctuate being data driven. We are discussing options for 
changing that, but that doesn't help you now.

Depending on what you're doing, one option would be to use the Interactive 
Query APIs to periodically query the state stores depending on your desired 
frequency 
(https://www.confluent.io/blog/unifying-stream-processing-and-interactive-queries-in-apache-kafka/
 
<https://www.confluent.io/blog/unifying-stream-processing-and-interactive-queries-in-apache-kafka/>).

Thanks
Eno

> On 22 Jan 2017, at 03:49, Dmitry Minkovsky <dminkov...@gmail.com> wrote:
> 
> I am thinking the answer will be along the lines of, say,
> http://stackoverflow.com/a/17563065/741970, but maybe I'm missing something
> :).
> 
> On Sat, Jan 21, 2017 at 10:30 PM, Dmitry Minkovsky <dminkov...@gmail.com>
> wrote:
> 
>> I understand that punctuate() is data driven. That is really cool.
>> 
>> However, I have a process in my application that needs to be wall clock
>> driven. It is basically a delayed queue on local state accumulated during
>> stream processing, and needs to run periodically (or, even better,
>> continuously). Before learning that punctuate() is data driven, I thought
>> punctuate() would be great for this purpose. Now, clearly it is not.
>> 
>> So what can I do now?
>> 
>> I was thinking I could stimulate punctuation with dummy messages, but I
>> read that all input topics must be stimulated for time to advance, which
>> seems excessive (to have to constantly be sending dummy messages to all
>> your input topics just to ensure punctuation on one processor).
>> 
>> Any suggestions?
>> 
>> 
>> Thank you,
>> Dmitry
>> 

Reply via email to