[
https://issues.apache.org/jira/browse/KAFKA-3735?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guozhang Wang updated KAFKA-3735:
---------------------------------
Description:
The RocksDB JNI interface {{RocksObject}} has a dispose() function which need
to be explicitly triggered after it is not reused, otherwise GC may not be able
to de-reference it off-heap and hence effective lead to memory leak. See:
https://github.com/facebook/rocksdb/issues/752#issuecomment-146511412
We need to make sure all library-controlled RocksDB objects are disposed after
usage, and also indicate users to {{close}} those out-of-control objects.
Note that RocksDB community is also going to replace the {{dispose}} API by
extending {{AutoClosable}} in the future, so this ticket may need to be
re-visited when upgrade RocksDB versions:
https://www.facebook.com/groups/rocksdb.dev/permalink/870848569680325/
was:
The RocksDB JNI interface {{RocksObject}} has a dispose() function which need
to be explicitly triggered after it is not reused, otherwise GC may not be able
to de-reference it off-heap and hence effective lead to memory leak. See:
https://github.com/facebook/rocksdb/issues/752#issuecomment-146511412
We need to make sure all library-controlled RocksDB objects are disposed after
usage, and also indicate users to {{close}} those out-of-control objects.
> RocksDB objects needs to be disposed after usage
> ------------------------------------------------
>
> Key: KAFKA-3735
> URL: https://issues.apache.org/jira/browse/KAFKA-3735
> Project: Kafka
> Issue Type: Bug
> Components: streams
> Reporter: Guozhang Wang
> Assignee: Guozhang Wang
> Labels: architecture
>
> The RocksDB JNI interface {{RocksObject}} has a dispose() function which need
> to be explicitly triggered after it is not reused, otherwise GC may not be
> able to de-reference it off-heap and hence effective lead to memory leak.
> See: https://github.com/facebook/rocksdb/issues/752#issuecomment-146511412
> We need to make sure all library-controlled RocksDB objects are disposed
> after usage, and also indicate users to {{close}} those out-of-control
> objects.
> Note that RocksDB community is also going to replace the {{dispose}} API by
> extending {{AutoClosable}} in the future, so this ticket may need to be
> re-visited when upgrade RocksDB versions:
> https://www.facebook.com/groups/rocksdb.dev/permalink/870848569680325/
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)