mirror of
https://github.com/XRPLF/rippled.git
synced 2026-06-06 02:07:07 +00:00
[Java] Optimize statistics collector, improve object dependency in RocksObjects
Summary: This diff merges pull request #208. Contributor: ankgup87 [Java] Optimize statistics collector * Optimize statistics collector by collecting statistics of multiple DBs in a single thread rather than starting up a new thread for each DB. * Also, fix packaging of jnilib file on OS_X platform. * Diff review: https://reviews.facebook.net/D20265 [Java] Add documentation on interdependency of dispose call of RocksObjects * Remove transferCppRawPointersOwnershipFrom function. - This function was setting opt.filter_ and thus filter_ to be null. This way there is no one holding reference for filter object and can thus be GC'd which is not the intention. Replaced it with storeOptionsInstace which stores options instance. Options class internally holds Filter instance. Thus when Options is GC'd, filter reference will be GC'd automatically. * Added documentation explaining interdependency of Filter, Options and DB. * Diff review: https://reviews.facebook.net/D20379 Test Plan: described in their diff reviews Reviewers: haobo sdong swapnilghike zzbennett rsumbaly yhchiang Reviewed by: yhchiang
This commit is contained in:
committed by
Yueh-Hsuan Chiang
parent
2d3d63597a
commit
25682d1596
@@ -9,8 +9,8 @@ package org.rocksdb;
|
||||
* Options to control the behavior of a database. It will be used
|
||||
* during the creation of a RocksDB (i.e., RocksDB.open()).
|
||||
*
|
||||
* Note that dispose() must be called before an Options instance
|
||||
* become out-of-scope to release the allocated memory in c++.
|
||||
* If dispose() function is not called, then it will be GC'd automatically and
|
||||
* native resources will be released as part of the process.
|
||||
*/
|
||||
public class Options extends RocksObject {
|
||||
static final long DEFAULT_CACHE_SIZE = 8 << 20;
|
||||
@@ -168,8 +168,11 @@ public class Options extends RocksObject {
|
||||
/**
|
||||
* Use the specified filter policy to reduce disk reads.
|
||||
*
|
||||
* Note that the caller should not dispose the input filter as
|
||||
* Options.dispose() will dispose this filter.
|
||||
* Filter should not be disposed before options instances using this filter is
|
||||
* disposed. If dispose() function is not called, then filter object will be
|
||||
* GC'd automatically.
|
||||
*
|
||||
* Filter instance can be re-used in multiple options instances.
|
||||
*
|
||||
* @param Filter policy java instance.
|
||||
* @return the instance of the current Options.
|
||||
|
||||
Reference in New Issue
Block a user