[
https://issues.apache.org/jira/browse/FLINK-5651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nico Kruber closed FLINK-5651.
------------------------------
Resolution: Won't Fix
> state backends: forbid Iterator#remove() from the Iterable returned by
> HeapListState#get()
> ------------------------------------------------------------------------------------------
>
> Key: FLINK-5651
> URL: https://issues.apache.org/jira/browse/FLINK-5651
> Project: Flink
> Issue Type: Improvement
> Components: State Backends, Checkpointing
> Affects Versions: 1.2.0
> Reporter: Nico Kruber
> Assignee: Nico Kruber
>
> The idiom behind AppendingState#get() is to return a copy of the value behind
> or at least not to allow changes to the underlying state storage. However,
> the heap state backend returns the original list and thus is prone to changes.
> The returned Iterable offers Iterable#iterator() which in turn offers
> Iterator#remove() that would change the stored state. While we cannot
> efficiently block the user from modifying the objects in the list, we can at
> least prevent him from doing structural changes to the list by forbidding
> Iterator#remove() there.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)