Tzu-Li (Gordon) Tai created FLINK-15945:
-------------------------------------------
Summary: Remove MULTIPLEX_FLINK_STATE config from Stateful Functions
Key: FLINK-15945
URL:
https://issues.apache.org/jira/browse/FLINK-15945 Project: Flink
Issue Type: Improvement
Components: Stateful Functions
Affects Versions: statefun-1.1
Reporter: Tzu-Li (Gordon) Tai
Assignee: Tzu-Li (Gordon) Tai
Currently, Stateful Functions support a {{MULTIPLEX_FLINK_STATE}} configuration that, when enabled, multiplexes registered state of all function types as a single {{MapState}}.
This is mostly to allow feasible use of the RocksDB state backend with Stateful Functions, since without multiplexing state, each {{PersistedValue}} of a single function type would require a separate column family in RocksDB and need 64mb of memstore.
As of now, Stateful Functions allow enabling or disabling multiplex state, regardless of the state backend being used. This actually does not make sense, considering that:
* If the heap backend is used, there is no reason to multiplex state. Also taking into account that there are problems that exist for multiplexing state such as lack of support for state schema evolution.
* If RocksDB backend is used, it is highly encouraged to multiplex state, anyways.
Therefore, we propose to remove the {{MULTIPLEX_FLINK_STATE}} configuration and simply tie the behaviour of multiplexing state to the state backend being used, i.e. multiplex only when RocksDB state backend is used.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)