[
https://issues.apache.org/jira/browse/FLINK-9036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16407996#comment-16407996
]
ASF GitHub Bot commented on FLINK-9036:
---------------------------------------
Github user sihuazhou commented on a diff in the pull request:
https://github.com/apache/flink/pull/5735#discussion_r176099489
--- Diff:
flink-core/src/main/java/org/apache/flink/api/common/state/FoldingStateDescriptor.java
---
@@ -55,7 +55,7 @@
* @param typeClass The type of the values in the state.
*/
public FoldingStateDescriptor(String name, ACC initialValue,
FoldFunction<T, ACC> foldFunction, Class<ACC> typeClass) {
- super(name, typeClass, initialValue);
+ super(name, typeClass, DefaultValueFactory.create(typeClass,
requireNonNull(initialValue)));
this.foldFunction = requireNonNull(foldFunction);
--- End diff --
I think use `Preconditions. checkNotNull()` instead of `requireNonNull()`
here is more consistence with the previous commit: `Make State Descriptors
consistently use Preconditions…`.
> Add default value via suppliers
> -------------------------------
>
> Key: FLINK-9036
> URL: https://issues.apache.org/jira/browse/FLINK-9036
> Project: Flink
> Issue Type: Improvement
> Components: State Backends, Checkpointing
> Reporter: Stephan Ewen
> Assignee: Stephan Ewen
> Priority: Major
> Fix For: 1.6.0
>
>
> Earlier versions had a default value in {{ValueState}}. We dropped that,
> because the value would have to be duplicated on each access, to be safe
> against side effects when using mutable types.
> For convenience, we should re-add the feature, but using a supplier/factory
> function to create the default value on access.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)