Github user bowenli86 commented on a diff in the pull request: https://github.com/apache/flink/pull/4963#discussion_r159565645 --- Diff: flink-core/src/main/java/org/apache/flink/api/common/state/ListState.java --- @@ -33,4 +35,14 @@ * @param <T> Type of values that this list state keeps. */ @PublicEvolving -public interface ListState<T> extends MergingState<T, Iterable<T>> {} +public interface ListState<T> extends MergingState<T, Iterable<T>> { + /** + * Updates the state of the current key for the given source namespaces into the state of + * the target namespace. + * + * @param values The target namespace where the merged state should be stored. + * + * @throws Exception The method may forward exception thrown internally (by I/O or functions). + */ + void update(List<T> values) throws Exception; --- End diff -- Let me document it. They are of the same result - return `null` when given an empty list
---