This is my code /DataStream<Integer> someIntegers = env.fromElements(1,2,3,4); SplitStream<Integer> s = someIntegers.split(new OutputSelector<Integer>() {
List<String> out = new ArrayList<String>(); @Override public Iterable<String> select(Integer arg0) { if( arg0 % 2 == 0){ out.add( "even" ); } else{ out.add("odd"); } return out; } }); s.select("even").flatMap(new FlatMapFunction<Integer, Tuple1<Integer>>() { @Override public void flatMap(Integer arg0, Collector<Tuple1<Integer>> arg1) throws Exception { System.out.println("---------------"+arg0); arg1.collect( new Tuple1<Integer>(arg0) ); } }).writeAsCsv("test",WriteMode.OVERWRITE,"," , "");/ When I run this code, 1. A folder called "test" is getting created 2. I get 4 files . File names are 1 ,2 3, 4 3. file 1 ---> 1; file 2 ---> 3 ; file 3 --> 4; File 4 --> Empty. These are the contents My Questions: 1. Even if I increase the count in "fromElements", I get 4 files. Why does it create 4 files always 2. The code should split the stream in to odd and even and right now am printing only the "Even" stream. So 3 should not be printed I could not make out anything from this. Some help would be nice -- View this message in context: http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/Datastream-splitter-Confusing-behaviour-tp15138.html Sent from the Apache Flink Mailing List archive. mailing list archive at Nabble.com.