Tzu-Li (Gordon) Tai created FLINK-5991: ------------------------------------------
Summary: Expose Broadcast Operator State through public APIs Key: FLINK-5991 URL: https://issues.apache.org/jira/browse/FLINK-5991 Project: Flink Issue Type: New Feature Components: State Backends, Checkpointing, Streaming Reporter: Tzu-Li (Gordon) Tai Assignee: Tzu-Li (Gordon) Tai Fix For: 1.3.0 The broadcast operator state functionality was added in FLINK-5265, it just hasn't been exposed through any public APIs yet. Currently, we have 2 streaming connector features for 1.3 that are pending on broadcast state: rescalable Kinesis / Kafka consumers with shard / partition discovery (FLINK-4821 & FLINK-4022). We should consider exposing broadcast state for the 1.3 release also. This JIRA also serves the purpose to discuss how we want to expose it. To initiate the discussion, I propose: 1. For the more powerful `CheckpointedFunction`, add: {code} <S> ListState<S> getBroadcastOperatorState(ListStateDescriptor<S> stateDescriptor); <T extends Serializable> ListState<T> getBroadcastSerializableListState(String stateName); {code} 2. For a simpler `ListCheckpointed` variant, we probably should have a separate `BroadcastListCheckpointed` interface. Extending `ListCheckpointed` to let the user define either `PARTITIONABLE` or `BROADCAST` list used might also be possible, if we can rely on a contract that the value doesn't change. Or we expose a defining method (e.g. `getListStateType()`) that is called only once in the operator. -- This message was sent by Atlassian JIRA (v6.3.15#6346)