@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 = 0;
924
+ uint32_t cacheSize = 8 << 20;
929
925
  double compressedRatio = 0.0;
930
- NAPI_STATUS_RETURN(GetProperty(env, options, "blobCacheSize", cacheSize));
931
- NAPI_STATUS_RETURN(GetProperty(env, options, "blobCacheCompressedRatio", compressedRatio));
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
- // Do nothing..
935
- } else if (compressedRatio > 0.0) {
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
- columnOptions.blob_cache = rocksdb::NewTieredCache(options);
938
+ tableOptions.block_cache = rocksdb::NewTieredCache(options);
941
939
  } else {
942
- columnOptions.blob_cache = rocksdb::HyperClockCacheOptions(cacheSize, 0).MakeSharedCache();
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 = 8 << 20;
951
+ uint32_t cacheSize = -1;
948
952
  double compressedRatio = 0.0;
949
- NAPI_STATUS_RETURN(GetProperty(env, options, "cacheSize", cacheSize));
950
- NAPI_STATUS_RETURN(GetProperty(env, options, "blockCacheSize", cacheSize));
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 == 0) {
954
- tableOptions.no_block_cache = true;
955
- } else if (compressedRatio > 0.0) {
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
- tableOptions.block_cache = rocksdb::NewTieredCache(options);
965
+ columnOptions.blob_cache = rocksdb::NewTieredCache(options);
961
966
  } else {
962
- tableOptions.block_cache = rocksdb::HyperClockCacheOptions(cacheSize, 0).MakeSharedCache();
967
+ columnOptions.blob_cache = rocksdb::HyperClockCacheOptions(cacheSize, 0).MakeSharedCache();
963
968
  }
964
- }
965
969
 
966
- bool prepopulateBlockCache = false;
967
- NAPI_STATUS_RETURN(GetProperty(env, options, "prepopulateBlockCache", prepopulateBlockCache));
968
- tableOptions.prepopulate_block_cache = prepopulateBlockCache
969
- ? rocksdb::BlockBasedTableOptions::PrepopulateBlockCache::kFlushOnly
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nxtedition/rocksdb",
3
- "version": "13.3.0",
3
+ "version": "13.3.1",
4
4
  "description": "A low-level Node.js RocksDB binding",
5
5
  "license": "MIT",
6
6
  "main": "index.js",