Stefan Richter created FLINK-5961:
-------------------------------------

             Summary: Queryable State is broken for HeapKeyedStateBackend
                 Key: FLINK-5961
                 URL: https://issues.apache.org/jira/browse/FLINK-5961
             Project: Flink
          Issue Type: Bug
    Affects Versions: 1.2.0
            Reporter: Stefan Richter


The current implementation of queryable state on `HeapKeyedStateBackend` 
attempts to handle concurrency by using `ConcurrentHashMap`s as datastructure.

However, the implementation has at least two issues:

1) Concurrent modifications of state objects: state can be modified 
concurrently to a query, e.g. an element being removed from a list. This can 
result in exceptions or incorrect results.

2) StateDescriptor is indicating whether a `ConcurrentHashMap` is required 
because queryable state is active. On restore, this information is unknown at 
first and the implementation always uses plain hash maps. When the state is 
then finally registered, all previously existing maps are not thread-safe.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to