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)