Re: Caching collected objects in .apply()

2016-12-22 Thread Matt
Just to be clear, the stream is of String elements. The first part of the pipeline (up to the first .apply) receives those strings, and returns objects of another class ("A" let's say). On Thu, Dec 22, 2016 at 6:04 PM, Matt wrote: > Hello, > > I have a window processing 10 objects at a time, and

Caching collected objects in .apply()

2016-12-22 Thread Matt
Hello, I have a window processing 10 objects at a time, and creating 1 as a result. The problem is in order to create that object I need the object from the previous window. I'm doing this: stream .keyBy(...some key...) .countWindow(10, 1) .apply(...creates an element A...) .keyBy(...sam

Re: Flink rolling upgrade support

2016-12-22 Thread Greg Hogan
Aljoscha, For the second, possible solution is there also a requirement that the data sinks handle out-of-order writes? If the new job outpaces the old job which is then terminated, the final write from the old job could have overwritten "newer" writes from the new job. Greg On Tue, Dec 20, 2016

Can I see the kafka header information in the Flink connector?

2016-12-22 Thread Ron Crocker
Looking at the Kafka 0.8 connector API, my deserializer definitely gets the message but none of the header information, and in particular, message metadata. Is there a straightforward way to do this (other than upgrading our Kafka cluster ;)). The connector code itself is a bit involved. Ron

Re: Flink rolling upgrade support

2016-12-22 Thread Ron Crocker
Hi Stephan - I agree that the savepoint-shutdown-restart model is nominally the same as the rolling restart with one notable exception - a lack of atomicity. There is a gap between invoking the savepoint command and the shutdown command. My problem isn’t fortunate enough to have idempotent oper

Efficiently splitting a stream 3 ways

2016-12-22 Thread Lawrence Wagerfield
Hi, I'd like to know which is more efficient: splitting a stream 3 ways via `split` or via `filter`? --- FILTER -- val greater = stream.filter(_.n > 0) val less = stream.filter(_.n < 0) val equal = stream.filter(_.n == 0) - - VS - --- SPLIT --- val split = stream.split(

Problem with JodaTime

2016-12-22 Thread Stephan Epping
Hi, I noticed the following Problem with a POJO I use to encapsulate Values. java.lang.NullPointerException at org.joda.time.tz.CachedDateTimeZone.getInfo(CachedDateTimeZone.java:143) at org.joda.time.tz.CachedDateTimeZone.getOffset(CachedDateTimeZone.java:103) at org.j

Re: Serializing NULLs

2016-12-22 Thread Matt
Here is the code of a Double wrapper with null support [1]. [1] https://gist.github.com/a8e8aa377957d3d51eadf36fe5c92a9e On Tue, Dec 20, 2016 at 4:26 PM, Anirudh Mallem wrote: > If you are using Avro generated classes then you cannot have your values > null. > https://cwiki.apache.org/confluenc

Re: static/dynamic lookups in flink streaming

2016-12-22 Thread Fabian Hueske
That approach should work as well. The upcoming Flink 1.2.0 release will feature a function for asynchronous operations, i.e., you can have multiple concurrent Redis requests, without losing the fault tolerance guarantees. Another alternative is to store the map in key-partitioned operator state o