You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Kostas Kloudas (JIRA)" <ji...@apache.org> on 2018/02/16 18:39:00 UTC

[jira] [Closed] (FLINK-8676) Memory Leak in AbstractKeyedStateBackend.applyToAllKeys() when backend is base on RocksDB

     [ https://issues.apache.org/jira/browse/FLINK-8676?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kostas Kloudas closed FLINK-8676.
---------------------------------
    Resolution: Fixed

Merged at 4500bfd7729583c6a7cb5a6fb4f2d16ba8ba8cd4.

> Memory Leak in AbstractKeyedStateBackend.applyToAllKeys() when backend is base on RocksDB
> -----------------------------------------------------------------------------------------
>
>                 Key: FLINK-8676
>                 URL: https://issues.apache.org/jira/browse/FLINK-8676
>             Project: Flink
>          Issue Type: Bug
>          Components: State Backends, Checkpointing, Streaming
>    Affects Versions: 1.5.0
>            Reporter: Sihua Zhou
>            Assignee: Sihua Zhou
>            Priority: Blocker
>             Fix For: 1.5.0
>
>
> `AbstractKeyedStateBackend.applyToAllKeys() ` uses backend's getKeys(stateName, namespace) to get all keys that belong to `namespace`. But, in `RocksDBKeyedStateBackend.getKeys()` if just return a object which wrap a `rocksdb iterator`, that is dangous, because rocksdb will ping the resources that belong to the iterator into memory untill iterator.close() is invoked, but it didn't invoked right now. This will lead to memory leak finally.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)