BTW looking at past posts on this issue[1] it should have been fixed? i'm using version 1.7.2 Also the recommendation was to use a custom function, though that's exactly what im doing with the conditionalArray function[2]
Thanks! [1] http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/DataStreamCalcRule-1802-quot-grows-beyond-64-KB-when-execute-long-sql-td20832.html#a20841 [2] public class ConditionalArrayFunction extends ScalarFunction { public static final String NAME = "conditionalArray"; public String[] eval(Object... keyValues) { if (keyValues.length == 0) { return new String[]{}; } final List keyValuesList = Arrays.asList(keyValues); List<String> trueItems = Lists.newArrayList(); for (int i = 0; i < keyValuesList.size(); i = i + 2){ final String key = (String)keyValuesList.get(i); final Object value = keyValuesList.get(i + 1); if (value != null && (boolean)value) trueItems.add(key); } return trueItems.toArray(new String[0]); } } -- Sent from: http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/