Class RocksStatesPerKeyGroupMergeIterator
java.lang.Object
org.apache.flink.state.rocksdb.iterator.RocksStatesPerKeyGroupMergeIterator
- All Implemented Interfaces:
AutoCloseable,org.apache.flink.runtime.state.KeyValueStateIterator
public class RocksStatesPerKeyGroupMergeIterator
extends Object
implements org.apache.flink.runtime.state.KeyValueStateIterator
Iterator that merges multiple RocksDB iterators to partition all states into contiguous
key-groups. The resulting iteration sequence is ordered by (key-group, kv-state).
-
Constructor Summary
ConstructorsConstructorDescriptionRocksStatesPerKeyGroupMergeIterator(org.apache.flink.core.fs.CloseableRegistry closeableRegistry, List<org.apache.flink.api.java.tuple.Tuple2<RocksIteratorWrapper, Integer>> kvStateIterators, List<SingleStateIterator> heapPriorityQueueIterators, int keyGroupPrefixByteCount) Creates a newRocksStatesPerKeyGroupMergeIterator. -
Method Summary
-
Constructor Details
-
RocksStatesPerKeyGroupMergeIterator
public RocksStatesPerKeyGroupMergeIterator(org.apache.flink.core.fs.CloseableRegistry closeableRegistry, List<org.apache.flink.api.java.tuple.Tuple2<RocksIteratorWrapper, Integer>> kvStateIterators, List<SingleStateIterator> heapPriorityQueueIterators, int keyGroupPrefixByteCount) throws IOExceptionCreates a newRocksStatesPerKeyGroupMergeIterator. The iterator takes ownership of passed in resources, such as theReadOptions, and becomes responsible for closing them.- Throws:
IOException
-
-
Method Details
-
next
public void next()- Specified by:
nextin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
keyGroup
public int keyGroup()- Specified by:
keyGroupin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
key
public byte[] key()- Specified by:
keyin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
value
public byte[] value()- Specified by:
valuein interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
kvStateId
public int kvStateId()- Specified by:
kvStateIdin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
isNewKeyValueState
public boolean isNewKeyValueState()- Specified by:
isNewKeyValueStatein interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
isNewKeyGroup
public boolean isNewKeyGroup()- Specified by:
isNewKeyGroupin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
isValid
public boolean isValid()- Specified by:
isValidin interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceorg.apache.flink.runtime.state.KeyValueStateIterator
-