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)