| 
					
	
	
	
	
				 | 
				
					
	
	
		Hi Wojciech, 
 
 I posted an answer on StackOverflow. 
 
 Best, Fabian
  Am Do., 24. Okt. 2019 um 13:03 Uhr schrieb Wojciech Indyk < [hidden email]>: Hi! I use Flink 1.8.0 with Kafka 2.2.1. I need to guarantee of correct order of events by event timestamp. I generate periodic watermarks every 1s. I use FlinkKafkaConsumer with AscendingTimestampExtractor.
  The code  (and the same question) is here:  https://stackoverflow.com/questions/58539379/guarantee-of-event-time-order-in-flinkkafkaconsumer
 
 I realized, that for unordered events, that came in the same ms or a few ms later, the order is not corrected by Flink. What I found in the docs: "the watermark triggers computation of all windows where the maximum timestamp (which is end-timestamp - 1) is smaller than the new watermark", so I added a step of timeWindowAll with size of 100ms and inside that window I sort messages by  the event timestamp. It works, but I find this solution ugly and it looks like a workaround. I am also concerned about per-partition watermarks of KafkaSource. Ideally I would like to put the guarantee of order in the KafkaSource and keep it for each kafka partition, like per-partition watermarks. Is it possible to do so? What is the current best solution for guarantee the event-time order of events in Flink? 
 
 -- Kind regards/ Pozdrawiam, Wojciech Indyk  
  
	
	
	
	 
				 |