Github user sihuazhou commented on a diff in the pull request:

    https://github.com/apache/flink/pull/5239#discussion_r168777737
  
    --- Diff: 
flink-contrib/flink-statebackend-rocksdb/src/main/java/org/apache/flink/contrib/streaming/state/RocksDBKeyedStateBackend.java
 ---
    @@ -266,11 +305,16 @@ public RocksDBKeyedStateBackend(
                RocksIterator iterator = db.newIterator(columnInfo.f0);
                iterator.seekToFirst();
     
    -           Iterable<K> iterable = () -> new 
RocksIteratorWrapper<>(iterator, state, keySerializer, keyGroupPrefixBytes);
    +           Iterable<K> iterable = () -> new 
RocksIteratorToJavaIteratorAdapter<>(iterator, state, keySerializer, 
keyGroupPrefixBytes);
                Stream<K> targetStream = 
StreamSupport.stream(iterable.spliterator(), false);
    --- End diff --
    
    Checked. In `HeapKeyedStateBackend` the implementation is 
    ```
        @Override
        public <N> Stream<K> getKeys(String state, N namespace) {
                if (!stateTables.containsKey(state)) {
                        return Stream.empty();
                }
                StateTable<K, N, ?> table = (StateTable<K, N, ?>) 
stateTables.get(state);
                return table.getKeys(namespace);
        }
    ```
    So I think `namespace` is useful ...


---

Reply via email to