GitHub user kl0u opened a pull request:

    https://github.com/apache/flink/pull/1839

    Adds watermark emission to the Kafka source by allowing the user to specify 
her TimestampExtractor.

    This PR allows the user to embed her desired timestampExtractor (or 
Watermark emitter) in the Kafka source itself, and it makes the source 
responsible for synchronizing between the different partitions/topics  with 
lagging timestamps. 
    
    In more detail, if a task handles two partitions, the first with timestamps 
of 0 to 100 and the other from 1000 to 2000, if it were to emit a watermark 
with timestamp equal to the maximum timestamp seen, then as soon as an element 
from the partition with the 1000 to 2000 timestamps arrives, it would render 
all elements in the other partition as late. To avoid this, this source will 
monitor the per partition/topic max timestamps, and emit a watermark with a 
timestamp equal to the minimum across the max per partition per topic 
timestamps. The emission will be done in a periodic or a punctuates way, 
depending on the type of the timestamp extractor the user specified. 

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/kl0u/flink kafka_wm_redesign

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/1839.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1839
    
----
commit 74dbb5c81ef7793202f151a96dee2ee0bd980a36
Author: kl0u <kklou...@gmail.com>
Date:   2016-03-08T16:35:14Z

    Adds watermark emission to the Kafka source by allowing the user to specify 
her TimestampExtractor.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to