@nxtedition/rocksdb 13.3.0 → 13.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/binding.cc
CHANGED
|
@@ -917,57 +917,60 @@ napi_status InitOptions(napi_env env, T& columnOptions, const U& options) {
|
|
|
917
917
|
NAPI_STATUS_RETURN(GetProperty(env, options, "blobCompression", blobCompression));
|
|
918
918
|
columnOptions.blob_compression_type = blobCompression ? rocksdb::kZSTD : rocksdb::kNoCompression;
|
|
919
919
|
|
|
920
|
-
bool prepopulateBlobCache = false;
|
|
921
|
-
NAPI_STATUS_RETURN(GetProperty(env, options, "prepopulateBlobCache", prepopulateBlobCache));
|
|
922
|
-
columnOptions.prepopulate_blob_cache = prepopulateBlobCache ? rocksdb::PrepopulateBlobCache::kFlushOnly : rocksdb::PrepopulateBlobCache::kDisable;
|
|
923
|
-
|
|
924
920
|
rocksdb::BlockBasedTableOptions tableOptions;
|
|
925
921
|
tableOptions.decouple_partitioned_filters = true;
|
|
926
922
|
|
|
927
923
|
{
|
|
928
|
-
uint32_t cacheSize =
|
|
924
|
+
uint32_t cacheSize = 8 << 20;
|
|
929
925
|
double compressedRatio = 0.0;
|
|
930
|
-
NAPI_STATUS_RETURN(GetProperty(env, options, "
|
|
931
|
-
NAPI_STATUS_RETURN(GetProperty(env, options, "
|
|
926
|
+
NAPI_STATUS_RETURN(GetProperty(env, options, "cacheSize", cacheSize));
|
|
927
|
+
NAPI_STATUS_RETURN(GetProperty(env, options, "cacheCompressedRatio", compressedRatio));
|
|
928
|
+
NAPI_STATUS_RETURN(GetProperty(env, options, "blockCacheSize", cacheSize));
|
|
929
|
+
NAPI_STATUS_RETURN(GetProperty(env, options, "blockCacheCompressedRatio", compressedRatio));
|
|
932
930
|
|
|
933
931
|
if (cacheSize == 0) {
|
|
934
|
-
|
|
935
|
-
} else
|
|
932
|
+
tableOptions.no_block_cache = true;
|
|
933
|
+
} else if (compressedRatio > 0.0) {
|
|
936
934
|
rocksdb::TieredCacheOptions options;
|
|
937
935
|
options.total_capacity = cacheSize;
|
|
938
936
|
options.compressed_secondary_ratio = compressedRatio;
|
|
939
937
|
options.comp_cache_opts.compression_type = rocksdb::CompressionType::kZSTD;
|
|
940
|
-
|
|
938
|
+
tableOptions.block_cache = rocksdb::NewTieredCache(options);
|
|
941
939
|
} else {
|
|
942
|
-
|
|
940
|
+
tableOptions.block_cache = rocksdb::HyperClockCacheOptions(cacheSize, 0).MakeSharedCache();
|
|
943
941
|
}
|
|
942
|
+
|
|
943
|
+
bool prepopulateBlockCache = false;
|
|
944
|
+
NAPI_STATUS_RETURN(GetProperty(env, options, "prepopulateBlockCache", prepopulateBlockCache));
|
|
945
|
+
tableOptions.prepopulate_block_cache = prepopulateBlockCache
|
|
946
|
+
? rocksdb::BlockBasedTableOptions::PrepopulateBlockCache::kFlushOnly
|
|
947
|
+
: rocksdb::BlockBasedTableOptions::PrepopulateBlockCache::kDisable;
|
|
944
948
|
}
|
|
945
949
|
|
|
946
950
|
{
|
|
947
|
-
uint32_t cacheSize =
|
|
951
|
+
uint32_t cacheSize = -1;
|
|
948
952
|
double compressedRatio = 0.0;
|
|
949
|
-
NAPI_STATUS_RETURN(GetProperty(env, options, "
|
|
950
|
-
NAPI_STATUS_RETURN(GetProperty(env, options, "
|
|
951
|
-
NAPI_STATUS_RETURN(GetProperty(env, options, "blockCacheCompressedRatio", compressedRatio));
|
|
953
|
+
NAPI_STATUS_RETURN(GetProperty(env, options, "blobCacheSize", cacheSize));
|
|
954
|
+
NAPI_STATUS_RETURN(GetProperty(env, options, "blobCacheCompressedRatio", compressedRatio));
|
|
952
955
|
|
|
953
|
-
if (cacheSize ==
|
|
954
|
-
|
|
955
|
-
} else if (
|
|
956
|
+
if (cacheSize == -1) {
|
|
957
|
+
columnOptions.blob_cache = tableOptions.block_cache;
|
|
958
|
+
} else if (cacheSize == 0) {
|
|
959
|
+
columnOptions.blob_cache = nullptr;
|
|
960
|
+
} else if (compressedRatio > 0.0) {
|
|
956
961
|
rocksdb::TieredCacheOptions options;
|
|
957
962
|
options.total_capacity = cacheSize;
|
|
958
963
|
options.compressed_secondary_ratio = compressedRatio;
|
|
959
964
|
options.comp_cache_opts.compression_type = rocksdb::CompressionType::kZSTD;
|
|
960
|
-
|
|
965
|
+
columnOptions.blob_cache = rocksdb::NewTieredCache(options);
|
|
961
966
|
} else {
|
|
962
|
-
|
|
967
|
+
columnOptions.blob_cache = rocksdb::HyperClockCacheOptions(cacheSize, 0).MakeSharedCache();
|
|
963
968
|
}
|
|
964
|
-
}
|
|
965
969
|
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
: rocksdb::BlockBasedTableOptions::PrepopulateBlockCache::kDisable;
|
|
970
|
+
bool prepopulateBlobCache = false;
|
|
971
|
+
NAPI_STATUS_RETURN(GetProperty(env, options, "prepopulateBlobCache", prepopulateBlobCache));
|
|
972
|
+
columnOptions.prepopulate_blob_cache = prepopulateBlobCache ? rocksdb::PrepopulateBlobCache::kFlushOnly : rocksdb::PrepopulateBlobCache::kDisable;
|
|
973
|
+
}
|
|
971
974
|
|
|
972
975
|
std::string optimize = "";
|
|
973
976
|
NAPI_STATUS_RETURN(GetProperty(env, options, "optimize", optimize));
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|