flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLINK-7475) support update() in ListState
Date Thu, 04 Jan 2018 11:25:00 GMT

    [ https://issues.apache.org/jira/browse/FLINK-7475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16311216#comment-16311216
] 

ASF GitHub Bot commented on FLINK-7475:
---------------------------------------

Github user StefanRRichter commented on a diff in the pull request:

    https://github.com/apache/flink/pull/4963#discussion_r159631427
  
    --- 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 --
    
    Ok, if the outcome for both cases should be the same, wouldn't it be nicer to always return
the empty iterator and avoid `null`s if we can? This might be a small thing but safe users
from debugging some NPEs :-)


> support update() in ListState
> -----------------------------
>
>                 Key: FLINK-7475
>                 URL: https://issues.apache.org/jira/browse/FLINK-7475
>             Project: Flink
>          Issue Type: Improvement
>          Components: Core, DataStream API, State Backends, Checkpointing
>    Affects Versions: 1.4.0
>            Reporter: yf
>            Assignee: Bowen Li
>             Fix For: 1.5.0
>
>
> If I want to update the list. 
> I have to do two steps: 
> listState.clear() 
> for (Element e : myList) { 
>     listState.add(e); 
> } 
> Why not I update the state by: 
> listState.update(myList) ?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message