@nxtedition/rocksdb 7.1.30 → 7.1.32

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.
Files changed (381) hide show
  1. package/deps/rocksdb/rocksdb/CMakeLists.txt +2 -2
  2. package/deps/rocksdb/rocksdb/cache/cache_test.cc +15 -23
  3. package/deps/rocksdb/rocksdb/cache/fast_lru_cache.h +0 -1
  4. package/deps/rocksdb/rocksdb/cache/lru_cache.cc +4 -5
  5. package/deps/rocksdb/rocksdb/cache/lru_cache.h +3 -1
  6. package/deps/rocksdb/rocksdb/crash_test.mk +1 -1
  7. package/deps/rocksdb/rocksdb/db/blob/blob_log_format.h +15 -0
  8. package/deps/rocksdb/rocksdb/db/blob/db_blob_basic_test.cc +1 -1
  9. package/deps/rocksdb/rocksdb/db/column_family.cc +4 -1
  10. package/deps/rocksdb/rocksdb/db/compaction/compaction.cc +78 -6
  11. package/deps/rocksdb/rocksdb/db/compaction/compaction.h +32 -6
  12. package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.cc +8 -8
  13. package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator_test.cc +3 -2
  14. package/deps/rocksdb/rocksdb/db/compaction/compaction_job.cc +47 -8
  15. package/deps/rocksdb/rocksdb/db/compaction/compaction_job.h +3 -3
  16. package/deps/rocksdb/rocksdb/db/compaction/compaction_job_stats_test.cc +105 -166
  17. package/deps/rocksdb/rocksdb/db/compaction/compaction_job_test.cc +3 -4
  18. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.cc +46 -15
  19. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.h +47 -26
  20. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.cc +17 -10
  21. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.h +11 -5
  22. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.cc +12 -6
  23. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.h +1 -2
  24. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_test.cc +337 -103
  25. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.cc +43 -5
  26. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.h +1 -2
  27. package/deps/rocksdb/rocksdb/db/compaction/tiered_compaction_test.cc +524 -1
  28. package/deps/rocksdb/rocksdb/db/db_compaction_test.cc +164 -0
  29. package/deps/rocksdb/rocksdb/db/db_impl/compacted_db_impl.cc +6 -6
  30. package/deps/rocksdb/rocksdb/db/db_impl/compacted_db_impl.h +1 -0
  31. package/deps/rocksdb/rocksdb/db/db_impl/db_impl.cc +5 -7
  32. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_compaction_flush.cc +11 -1
  33. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_open.cc +4 -4
  34. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_readonly.h +1 -0
  35. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_secondary.cc +2 -3
  36. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_secondary.h +1 -1
  37. package/deps/rocksdb/rocksdb/db/db_test2.cc +1 -1
  38. package/deps/rocksdb/rocksdb/db/memtable.cc +16 -23
  39. package/deps/rocksdb/rocksdb/db/merge_helper.cc +30 -0
  40. package/deps/rocksdb/rocksdb/db/merge_helper.h +9 -0
  41. package/deps/rocksdb/rocksdb/db/range_del_aggregator_bench.cc +29 -9
  42. package/deps/rocksdb/rocksdb/db/range_tombstone_fragmenter.cc +10 -7
  43. package/deps/rocksdb/rocksdb/db/range_tombstone_fragmenter.h +12 -8
  44. package/deps/rocksdb/rocksdb/db/version_set.cc +11 -6
  45. package/deps/rocksdb/rocksdb/db/wide/db_wide_basic_test.cc +142 -0
  46. package/deps/rocksdb/rocksdb/db_stress_tool/batched_ops_stress.cc +59 -53
  47. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_common.h +3 -2
  48. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_gflags.cc +4 -0
  49. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_shared_state.h +1 -3
  50. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.cc +7 -4
  51. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.h +0 -2
  52. package/deps/rocksdb/rocksdb/env/env.cc +16 -19
  53. package/deps/rocksdb/rocksdb/env/env_basic_test.cc +1 -1
  54. package/deps/rocksdb/rocksdb/env/env_chroot.cc +20 -20
  55. package/deps/rocksdb/rocksdb/env/env_encryption.cc +62 -60
  56. package/deps/rocksdb/rocksdb/env/env_encryption_ctr.h +1 -1
  57. package/deps/rocksdb/rocksdb/env/env_test.cc +179 -176
  58. package/deps/rocksdb/rocksdb/env/file_system.cc +3 -4
  59. package/deps/rocksdb/rocksdb/env/io_posix.cc +3 -2
  60. package/deps/rocksdb/rocksdb/env/io_posix.h +1 -2
  61. package/deps/rocksdb/rocksdb/env/mock_env.h +1 -0
  62. package/deps/rocksdb/rocksdb/env/mock_env_test.cc +4 -4
  63. package/deps/rocksdb/rocksdb/file/delete_scheduler.cc +6 -5
  64. package/deps/rocksdb/rocksdb/file/delete_scheduler.h +2 -5
  65. package/deps/rocksdb/rocksdb/file/delete_scheduler_test.cc +6 -7
  66. package/deps/rocksdb/rocksdb/file/file_util.cc +1 -1
  67. package/deps/rocksdb/rocksdb/file/filename.cc +16 -17
  68. package/deps/rocksdb/rocksdb/file/filename.h +4 -5
  69. package/deps/rocksdb/rocksdb/file/prefetch_test.cc +492 -496
  70. package/deps/rocksdb/rocksdb/file/random_access_file_reader.cc +1 -1
  71. package/deps/rocksdb/rocksdb/file/random_access_file_reader_test.cc +1 -3
  72. package/deps/rocksdb/rocksdb/file/read_write_util.cc +1 -0
  73. package/deps/rocksdb/rocksdb/file/read_write_util.h +1 -0
  74. package/deps/rocksdb/rocksdb/file/sst_file_manager_impl.cc +6 -8
  75. package/deps/rocksdb/rocksdb/file/sst_file_manager_impl.h +1 -2
  76. package/deps/rocksdb/rocksdb/include/rocksdb/advanced_options.h +4 -4
  77. package/deps/rocksdb/rocksdb/include/rocksdb/block_cache_trace_writer.h +4 -4
  78. package/deps/rocksdb/rocksdb/include/rocksdb/c.h +166 -167
  79. package/deps/rocksdb/rocksdb/include/rocksdb/compaction_job_stats.h +1 -0
  80. package/deps/rocksdb/rocksdb/include/rocksdb/db.h +0 -1
  81. package/deps/rocksdb/rocksdb/include/rocksdb/file_system.h +12 -12
  82. package/deps/rocksdb/rocksdb/include/rocksdb/io_status.h +2 -0
  83. package/deps/rocksdb/rocksdb/include/rocksdb/iostats_context.h +1 -0
  84. package/deps/rocksdb/rocksdb/include/rocksdb/ldb_tool.h +1 -0
  85. package/deps/rocksdb/rocksdb/include/rocksdb/perf_context.h +2 -1
  86. package/deps/rocksdb/rocksdb/include/rocksdb/perf_level.h +1 -0
  87. package/deps/rocksdb/rocksdb/include/rocksdb/persistent_cache.h +1 -0
  88. package/deps/rocksdb/rocksdb/include/rocksdb/sst_file_reader.h +0 -4
  89. package/deps/rocksdb/rocksdb/include/rocksdb/sst_file_writer.h +3 -3
  90. package/deps/rocksdb/rocksdb/include/rocksdb/system_clock.h +1 -1
  91. package/deps/rocksdb/rocksdb/include/rocksdb/transaction_log.h +1 -0
  92. package/deps/rocksdb/rocksdb/include/rocksdb/types.h +1 -0
  93. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h +1 -0
  94. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/env_mirror.h +1 -0
  95. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/option_change_migration.h +1 -0
  96. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/options_type.h +4 -4
  97. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/sim_cache.h +2 -0
  98. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/stackable_db.h +4 -4
  99. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction.h +1 -1
  100. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction_db.h +2 -2
  101. package/deps/rocksdb/rocksdb/include/rocksdb/version.h +1 -1
  102. package/deps/rocksdb/rocksdb/logging/auto_roll_logger.cc +3 -3
  103. package/deps/rocksdb/rocksdb/logging/auto_roll_logger.h +3 -7
  104. package/deps/rocksdb/rocksdb/logging/auto_roll_logger_test.cc +20 -23
  105. package/deps/rocksdb/rocksdb/logging/env_logger_test.cc +1 -0
  106. package/deps/rocksdb/rocksdb/logging/event_logger.cc +1 -3
  107. package/deps/rocksdb/rocksdb/logging/event_logger.h +4 -5
  108. package/deps/rocksdb/rocksdb/logging/event_logger_test.cc +2 -1
  109. package/deps/rocksdb/rocksdb/logging/log_buffer.cc +2 -3
  110. package/deps/rocksdb/rocksdb/logging/log_buffer.h +3 -2
  111. package/deps/rocksdb/rocksdb/logging/logging.h +3 -3
  112. package/deps/rocksdb/rocksdb/memory/allocator.h +1 -0
  113. package/deps/rocksdb/rocksdb/memory/arena_test.cc +1 -1
  114. package/deps/rocksdb/rocksdb/memory/concurrent_arena.cc +2 -0
  115. package/deps/rocksdb/rocksdb/memory/concurrent_arena.h +1 -0
  116. package/deps/rocksdb/rocksdb/memtable/alloc_tracker.cc +1 -0
  117. package/deps/rocksdb/rocksdb/memtable/hash_linklist_rep.cc +17 -20
  118. package/deps/rocksdb/rocksdb/memtable/hash_skiplist_rep.cc +13 -15
  119. package/deps/rocksdb/rocksdb/memtable/inlineskiplist.h +11 -10
  120. package/deps/rocksdb/rocksdb/memtable/inlineskiplist_test.cc +3 -3
  121. package/deps/rocksdb/rocksdb/memtable/memtablerep_bench.cc +2 -2
  122. package/deps/rocksdb/rocksdb/memtable/skiplist.h +30 -28
  123. package/deps/rocksdb/rocksdb/memtable/skiplist_test.cc +4 -6
  124. package/deps/rocksdb/rocksdb/memtable/skiplistrep.cc +73 -70
  125. package/deps/rocksdb/rocksdb/memtable/stl_wrappers.h +1 -1
  126. package/deps/rocksdb/rocksdb/memtable/vectorrep.cc +21 -23
  127. package/deps/rocksdb/rocksdb/memtable/write_buffer_manager_test.cc +1 -0
  128. package/deps/rocksdb/rocksdb/monitoring/histogram.cc +24 -38
  129. package/deps/rocksdb/rocksdb/monitoring/histogram.h +10 -17
  130. package/deps/rocksdb/rocksdb/monitoring/histogram_test.cc +19 -19
  131. package/deps/rocksdb/rocksdb/monitoring/histogram_windowing.cc +22 -30
  132. package/deps/rocksdb/rocksdb/monitoring/histogram_windowing.h +4 -6
  133. package/deps/rocksdb/rocksdb/monitoring/in_memory_stats_history.cc +1 -0
  134. package/deps/rocksdb/rocksdb/monitoring/instrumented_mutex.h +4 -12
  135. package/deps/rocksdb/rocksdb/monitoring/iostats_context.cc +2 -3
  136. package/deps/rocksdb/rocksdb/monitoring/iostats_context_test.cc +1 -0
  137. package/deps/rocksdb/rocksdb/monitoring/perf_context.cc +12 -14
  138. package/deps/rocksdb/rocksdb/monitoring/perf_level.cc +2 -3
  139. package/deps/rocksdb/rocksdb/monitoring/perf_level_imp.h +1 -1
  140. package/deps/rocksdb/rocksdb/monitoring/perf_step_timer.h +1 -3
  141. package/deps/rocksdb/rocksdb/monitoring/persistent_stats_history.cc +1 -0
  142. package/deps/rocksdb/rocksdb/monitoring/statistics.cc +1 -1
  143. package/deps/rocksdb/rocksdb/monitoring/statistics.h +7 -7
  144. package/deps/rocksdb/rocksdb/monitoring/thread_status_updater.h +12 -22
  145. package/deps/rocksdb/rocksdb/monitoring/thread_status_util.h +7 -10
  146. package/deps/rocksdb/rocksdb/monitoring/thread_status_util_debug.cc +2 -2
  147. package/deps/rocksdb/rocksdb/port/lang.h +3 -1
  148. package/deps/rocksdb/rocksdb/port/likely.h +2 -2
  149. package/deps/rocksdb/rocksdb/port/mmap.h +2 -2
  150. package/deps/rocksdb/rocksdb/port/port_dirent.h +2 -2
  151. package/deps/rocksdb/rocksdb/port/port_posix.cc +32 -27
  152. package/deps/rocksdb/rocksdb/port/port_posix.h +31 -30
  153. package/deps/rocksdb/rocksdb/port/stack_trace.cc +1 -1
  154. package/deps/rocksdb/rocksdb/port/sys_time.h +1 -1
  155. package/deps/rocksdb/rocksdb/port/win/io_win.h +6 -7
  156. package/deps/rocksdb/rocksdb/port/win/port_win.h +12 -20
  157. package/deps/rocksdb/rocksdb/port/win/win_jemalloc.cc +5 -4
  158. package/deps/rocksdb/rocksdb/port/win/win_logger.cc +3 -5
  159. package/deps/rocksdb/rocksdb/port/win/win_logger.h +3 -4
  160. package/deps/rocksdb/rocksdb/port/win/win_thread.cc +30 -49
  161. package/deps/rocksdb/rocksdb/port/win/win_thread.h +5 -5
  162. package/deps/rocksdb/rocksdb/port/win/xpress_win.cc +51 -62
  163. package/deps/rocksdb/rocksdb/port/win/xpress_win.h +2 -2
  164. package/deps/rocksdb/rocksdb/table/adaptive/adaptive_table_factory.cc +4 -3
  165. package/deps/rocksdb/rocksdb/table/adaptive/adaptive_table_factory.h +1 -0
  166. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_builder.cc +2 -2
  167. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_factory.cc +2 -1
  168. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_iterator.h +0 -1
  169. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.cc +3 -4
  170. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.h +1 -1
  171. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_impl.h +0 -1
  172. package/deps/rocksdb/rocksdb/table/block_based/block_builder.cc +2 -0
  173. package/deps/rocksdb/rocksdb/table/block_based/block_builder.h +2 -1
  174. package/deps/rocksdb/rocksdb/table/block_based/cachable_entry.h +28 -30
  175. package/deps/rocksdb/rocksdb/table/block_based/data_block_hash_index.cc +2 -1
  176. package/deps/rocksdb/rocksdb/table/block_based/data_block_hash_index_test.cc +3 -3
  177. package/deps/rocksdb/rocksdb/table/block_based/filter_block.h +3 -3
  178. package/deps/rocksdb/rocksdb/table/block_based/filter_block_reader_common.cc +1 -0
  179. package/deps/rocksdb/rocksdb/table/block_based/filter_policy.cc +4 -5
  180. package/deps/rocksdb/rocksdb/table/block_based/flush_block_policy.cc +1 -3
  181. package/deps/rocksdb/rocksdb/table/block_based/full_filter_block.cc +1 -2
  182. package/deps/rocksdb/rocksdb/table/block_based/full_filter_block.h +1 -0
  183. package/deps/rocksdb/rocksdb/table/block_based/full_filter_block_test.cc +0 -1
  184. package/deps/rocksdb/rocksdb/table/block_based/index_builder.h +1 -1
  185. package/deps/rocksdb/rocksdb/table/block_based/index_reader_common.h +0 -1
  186. package/deps/rocksdb/rocksdb/table/block_based/partitioned_filter_block_test.cc +7 -6
  187. package/deps/rocksdb/rocksdb/table/block_based/partitioned_index_iterator.h +0 -1
  188. package/deps/rocksdb/rocksdb/table/block_based/uncompression_dict_reader.h +1 -0
  189. package/deps/rocksdb/rocksdb/table/block_fetcher.cc +5 -6
  190. package/deps/rocksdb/rocksdb/table/block_fetcher.h +2 -2
  191. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder.cc +90 -80
  192. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder.h +5 -4
  193. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder_test.cc +63 -69
  194. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_factory.h +2 -1
  195. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader.cc +58 -57
  196. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader.h +3 -3
  197. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader_test.cc +35 -30
  198. package/deps/rocksdb/rocksdb/table/get_context.cc +16 -10
  199. package/deps/rocksdb/rocksdb/table/iter_heap.h +2 -0
  200. package/deps/rocksdb/rocksdb/table/iterator.cc +1 -1
  201. package/deps/rocksdb/rocksdb/table/iterator_wrapper.h +1 -3
  202. package/deps/rocksdb/rocksdb/table/merging_iterator.cc +31 -16
  203. package/deps/rocksdb/rocksdb/table/meta_blocks.cc +6 -6
  204. package/deps/rocksdb/rocksdb/table/multiget_context.h +5 -6
  205. package/deps/rocksdb/rocksdb/table/persistent_cache_helper.cc +1 -0
  206. package/deps/rocksdb/rocksdb/table/plain/plain_table_bloom.cc +1 -1
  207. package/deps/rocksdb/rocksdb/table/plain/plain_table_builder.cc +7 -10
  208. package/deps/rocksdb/rocksdb/table/plain/plain_table_builder.h +3 -1
  209. package/deps/rocksdb/rocksdb/table/plain/plain_table_factory.h +2 -2
  210. package/deps/rocksdb/rocksdb/table/plain/plain_table_index.cc +4 -3
  211. package/deps/rocksdb/rocksdb/table/plain/plain_table_index.h +2 -2
  212. package/deps/rocksdb/rocksdb/table/plain/plain_table_key_coding.cc +1 -0
  213. package/deps/rocksdb/rocksdb/table/plain/plain_table_reader.cc +10 -21
  214. package/deps/rocksdb/rocksdb/table/plain/plain_table_reader.h +14 -12
  215. package/deps/rocksdb/rocksdb/table/scoped_arena_iterator.h +2 -5
  216. package/deps/rocksdb/rocksdb/table/sst_file_dumper.cc +2 -3
  217. package/deps/rocksdb/rocksdb/table/sst_file_reader.cc +0 -6
  218. package/deps/rocksdb/rocksdb/table/sst_file_reader_test.cc +0 -33
  219. package/deps/rocksdb/rocksdb/table/sst_file_writer.cc +3 -6
  220. package/deps/rocksdb/rocksdb/table/table_properties.cc +24 -37
  221. package/deps/rocksdb/rocksdb/table/table_reader.h +3 -2
  222. package/deps/rocksdb/rocksdb/table/table_reader_bench.cc +9 -8
  223. package/deps/rocksdb/rocksdb/table/table_test.cc +77 -82
  224. package/deps/rocksdb/rocksdb/table/two_level_iterator.cc +1 -0
  225. package/deps/rocksdb/rocksdb/table/two_level_iterator.h +1 -1
  226. package/deps/rocksdb/rocksdb/test_util/sync_point.cc +8 -18
  227. package/deps/rocksdb/rocksdb/test_util/sync_point.h +2 -2
  228. package/deps/rocksdb/rocksdb/test_util/sync_point_impl.cc +4 -3
  229. package/deps/rocksdb/rocksdb/test_util/sync_point_impl.h +13 -18
  230. package/deps/rocksdb/rocksdb/test_util/testharness.cc +1 -2
  231. package/deps/rocksdb/rocksdb/test_util/testutil.h +6 -7
  232. package/deps/rocksdb/rocksdb/test_util/transaction_test_util.cc +3 -4
  233. package/deps/rocksdb/rocksdb/test_util/transaction_test_util.h +1 -1
  234. package/deps/rocksdb/rocksdb/tools/blob_dump.cc +1 -0
  235. package/deps/rocksdb/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.cc +11 -7
  236. package/deps/rocksdb/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.h +3 -2
  237. package/deps/rocksdb/rocksdb/tools/db_bench_tool.cc +296 -314
  238. package/deps/rocksdb/rocksdb/tools/db_sanity_test.cc +6 -6
  239. package/deps/rocksdb/rocksdb/tools/dump/db_dump_tool.cc +2 -1
  240. package/deps/rocksdb/rocksdb/tools/ldb_cmd.cc +57 -64
  241. package/deps/rocksdb/rocksdb/tools/ldb_cmd_impl.h +6 -5
  242. package/deps/rocksdb/rocksdb/tools/ldb_cmd_test.cc +2 -2
  243. package/deps/rocksdb/rocksdb/tools/ldb_tool.cc +1 -0
  244. package/deps/rocksdb/rocksdb/tools/reduce_levels_test.cc +2 -2
  245. package/deps/rocksdb/rocksdb/tools/simulated_hybrid_file_system.cc +1 -2
  246. package/deps/rocksdb/rocksdb/tools/sst_dump_tool.cc +10 -10
  247. package/deps/rocksdb/rocksdb/tools/trace_analyzer_test.cc +1 -1
  248. package/deps/rocksdb/rocksdb/tools/write_stress.cc +6 -3
  249. package/deps/rocksdb/rocksdb/util/aligned_buffer.h +12 -31
  250. package/deps/rocksdb/rocksdb/util/autovector.h +3 -6
  251. package/deps/rocksdb/rocksdb/util/autovector_test.cc +12 -12
  252. package/deps/rocksdb/rocksdb/util/bloom_test.cc +8 -12
  253. package/deps/rocksdb/rocksdb/util/coding.cc +1 -0
  254. package/deps/rocksdb/rocksdb/util/coding.h +17 -15
  255. package/deps/rocksdb/rocksdb/util/coding_test.cc +14 -15
  256. package/deps/rocksdb/rocksdb/util/comparator.cc +4 -4
  257. package/deps/rocksdb/rocksdb/util/compression.h +6 -3
  258. package/deps/rocksdb/rocksdb/util/compression_context_cache.cc +2 -2
  259. package/deps/rocksdb/rocksdb/util/concurrent_task_limiter_impl.cc +5 -8
  260. package/deps/rocksdb/rocksdb/util/concurrent_task_limiter_impl.h +1 -1
  261. package/deps/rocksdb/rocksdb/util/crc32c.cc +202 -297
  262. package/deps/rocksdb/rocksdb/util/crc32c.h +2 -3
  263. package/deps/rocksdb/rocksdb/util/crc32c_arm64.h +2 -0
  264. package/deps/rocksdb/rocksdb/util/crc32c_test.cc +39 -54
  265. package/deps/rocksdb/rocksdb/util/defer.h +2 -1
  266. package/deps/rocksdb/rocksdb/util/defer_test.cc +2 -1
  267. package/deps/rocksdb/rocksdb/util/duplicate_detector.h +2 -1
  268. package/deps/rocksdb/rocksdb/util/dynamic_bloom.cc +1 -1
  269. package/deps/rocksdb/rocksdb/util/dynamic_bloom.h +3 -3
  270. package/deps/rocksdb/rocksdb/util/dynamic_bloom_test.cc +1 -1
  271. package/deps/rocksdb/rocksdb/util/filelock_test.cc +24 -29
  272. package/deps/rocksdb/rocksdb/util/filter_bench.cc +4 -4
  273. package/deps/rocksdb/rocksdb/util/hash_test.cc +2 -2
  274. package/deps/rocksdb/rocksdb/util/heap.h +5 -4
  275. package/deps/rocksdb/rocksdb/util/heap_test.cc +15 -25
  276. package/deps/rocksdb/rocksdb/util/kv_map.h +1 -1
  277. package/deps/rocksdb/rocksdb/util/murmurhash.cc +7 -2
  278. package/deps/rocksdb/rocksdb/util/murmurhash.h +4 -3
  279. package/deps/rocksdb/rocksdb/util/mutexlock.h +5 -11
  280. package/deps/rocksdb/rocksdb/util/random.cc +1 -0
  281. package/deps/rocksdb/rocksdb/util/random.h +2 -4
  282. package/deps/rocksdb/rocksdb/util/random_test.cc +2 -1
  283. package/deps/rocksdb/rocksdb/util/ribbon_test.cc +4 -3
  284. package/deps/rocksdb/rocksdb/util/slice.cc +1 -1
  285. package/deps/rocksdb/rocksdb/util/slice_test.cc +1 -2
  286. package/deps/rocksdb/rocksdb/util/status.cc +2 -0
  287. package/deps/rocksdb/rocksdb/util/string_util.cc +2 -0
  288. package/deps/rocksdb/rocksdb/util/thread_list_test.cc +64 -76
  289. package/deps/rocksdb/rocksdb/util/thread_local.cc +18 -32
  290. package/deps/rocksdb/rocksdb/util/thread_local.h +2 -3
  291. package/deps/rocksdb/rocksdb/util/thread_operation.h +34 -43
  292. package/deps/rocksdb/rocksdb/util/threadpool_imp.cc +54 -73
  293. package/deps/rocksdb/rocksdb/util/threadpool_imp.h +18 -18
  294. package/deps/rocksdb/rocksdb/util/timer.h +4 -9
  295. package/deps/rocksdb/rocksdb/util/timer_queue.h +1 -0
  296. package/deps/rocksdb/rocksdb/util/timer_queue_test.cc +1 -0
  297. package/deps/rocksdb/rocksdb/util/xxhash.cc +1 -2
  298. package/deps/rocksdb/rocksdb/util/xxhash.h +7 -4
  299. package/deps/rocksdb/rocksdb/util/xxph3.h +3 -1
  300. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine.cc +16 -24
  301. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_impl.h +1 -1
  302. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_test.cc +106 -104
  303. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db.h +3 -4
  304. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_impl.cc +6 -6
  305. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_impl.h +1 -2
  306. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_test.cc +3 -4
  307. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_dump_tool.cc +3 -1
  308. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_file.cc +11 -15
  309. package/deps/rocksdb/rocksdb/utilities/cache_dump_load_impl.cc +1 -2
  310. package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_compaction_filter.cc +3 -3
  311. package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_compaction_filter.h +12 -12
  312. package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_format_test.cc +56 -55
  313. package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_functional_test.cc +91 -74
  314. package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_row_merge_test.cc +17 -34
  315. package/deps/rocksdb/rocksdb/utilities/cassandra/cassandra_serialize_test.cc +21 -45
  316. package/deps/rocksdb/rocksdb/utilities/cassandra/format.cc +74 -97
  317. package/deps/rocksdb/rocksdb/utilities/cassandra/format.h +17 -18
  318. package/deps/rocksdb/rocksdb/utilities/cassandra/merge_operator.cc +3 -4
  319. package/deps/rocksdb/rocksdb/utilities/cassandra/merge_operator.h +19 -19
  320. package/deps/rocksdb/rocksdb/utilities/cassandra/serialize.h +19 -18
  321. package/deps/rocksdb/rocksdb/utilities/cassandra/test_utils.cc +7 -10
  322. package/deps/rocksdb/rocksdb/utilities/cassandra/test_utils.h +3 -4
  323. package/deps/rocksdb/rocksdb/utilities/checkpoint/checkpoint_impl.h +2 -2
  324. package/deps/rocksdb/rocksdb/utilities/checkpoint/checkpoint_test.cc +10 -15
  325. package/deps/rocksdb/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.cc +2 -1
  326. package/deps/rocksdb/rocksdb/utilities/convenience/info_log_finder.cc +1 -0
  327. package/deps/rocksdb/rocksdb/utilities/env_mirror_test.cc +5 -3
  328. package/deps/rocksdb/rocksdb/utilities/env_timed_test.cc +1 -2
  329. package/deps/rocksdb/rocksdb/utilities/fault_injection_env.h +4 -5
  330. package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.cc +5 -7
  331. package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.h +9 -13
  332. package/deps/rocksdb/rocksdb/utilities/leveldb_options/leveldb_options.cc +1 -0
  333. package/deps/rocksdb/rocksdb/utilities/merge_operators/bytesxor.cc +7 -9
  334. package/deps/rocksdb/rocksdb/utilities/merge_operators/bytesxor.h +4 -5
  335. package/deps/rocksdb/rocksdb/utilities/merge_operators/put.cc +4 -3
  336. package/deps/rocksdb/rocksdb/utilities/merge_operators/sortlist.cc +1 -1
  337. package/deps/rocksdb/rocksdb/utilities/merge_operators/string_append/stringappend.cc +3 -3
  338. package/deps/rocksdb/rocksdb/utilities/merge_operators/string_append/stringappend.h +2 -4
  339. package/deps/rocksdb/rocksdb/utilities/merge_operators/string_append/stringappend2.h +2 -2
  340. package/deps/rocksdb/rocksdb/utilities/merge_operators/string_append/stringappend_test.cc +39 -50
  341. package/deps/rocksdb/rocksdb/utilities/merge_operators/uint64add.cc +2 -2
  342. package/deps/rocksdb/rocksdb/utilities/merge_operators.h +4 -3
  343. package/deps/rocksdb/rocksdb/utilities/options/options_util.cc +2 -2
  344. package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier.cc +5 -7
  345. package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier.h +5 -4
  346. package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc +1 -2
  347. package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_file.h +3 -6
  348. package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_file_buffer.h +1 -1
  349. package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.cc +2 -2
  350. package/deps/rocksdb/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.h +0 -1
  351. package/deps/rocksdb/rocksdb/utilities/persistent_cache/hash_table.h +1 -0
  352. package/deps/rocksdb/rocksdb/utilities/persistent_cache/hash_table_test.cc +3 -1
  353. package/deps/rocksdb/rocksdb/utilities/persistent_cache/persistent_cache_bench.cc +1 -1
  354. package/deps/rocksdb/rocksdb/utilities/persistent_cache/persistent_cache_test.cc +18 -13
  355. package/deps/rocksdb/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.h +1 -3
  356. package/deps/rocksdb/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector_test.cc +15 -14
  357. package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_manager.cc +14 -12
  358. package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_manager.h +2 -2
  359. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_locking_test.cc +4 -7
  360. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/locktree.cc +1 -2
  361. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_time.h +1 -1
  362. package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction.h +1 -1
  363. package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction_db_impl.h +1 -1
  364. package/deps/rocksdb/rocksdb/utilities/transactions/optimistic_transaction_test.cc +3 -2
  365. package/deps/rocksdb/rocksdb/utilities/transactions/transaction_base.cc +1 -2
  366. package/deps/rocksdb/rocksdb/utilities/transactions/transaction_base.h +3 -2
  367. package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.cc +5 -5
  368. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_transaction_test.cc +3 -4
  369. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn.cc +2 -2
  370. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn_db.cc +5 -4
  371. package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_transaction_test.cc +1 -1
  372. package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_txn_db.cc +1 -0
  373. package/deps/rocksdb/rocksdb/utilities/ttl/db_ttl_impl.cc +3 -4
  374. package/deps/rocksdb/rocksdb/utilities/ttl/db_ttl_impl.h +2 -6
  375. package/deps/rocksdb/rocksdb/utilities/ttl/ttl_test.cc +80 -79
  376. package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index.cc +3 -3
  377. package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_test.cc +9 -17
  378. package/package.json +1 -1
  379. package/prebuilds/darwin-arm64/node.napi.node +0 -0
  380. package/prebuilds/darwin-x64/node.napi.node +0 -0
  381. package/prebuilds/linux-x64/node.napi.node +0 -0
@@ -10,6 +10,7 @@
10
10
  #pragma once
11
11
  #include <stddef.h>
12
12
  #include <stdint.h>
13
+
13
14
  #include <string>
14
15
 
15
16
  #include "rocksdb/rocksdb_namespace.h"
@@ -31,9 +32,7 @@ extern uint32_t Extend(uint32_t init_crc, const char* data, size_t n);
31
32
  extern uint32_t Crc32cCombine(uint32_t crc1, uint32_t crc2, size_t crc2len);
32
33
 
33
34
  // Return the crc32c of data[0,n-1]
34
- inline uint32_t Value(const char* data, size_t n) {
35
- return Extend(0, data, n);
36
- }
35
+ inline uint32_t Value(const char* data, size_t n) { return Extend(0, data, n); }
37
36
 
38
37
  static const uint32_t kMaskDelta = 0xa282ead8ul;
39
38
 
@@ -18,6 +18,7 @@
18
18
  #define crc32c_u16(crc, v) __crc32ch(crc, v)
19
19
  #define crc32c_u32(crc, v) __crc32cw(crc, v)
20
20
  #define crc32c_u64(crc, v) __crc32cd(crc, v)
21
+ // clang-format off
21
22
  #define PREF4X64L1(buffer, PREF_OFFSET, ITR) \
22
23
  __asm__("PRFM PLDL1KEEP, [%x[v],%[c]]" ::[v] "r"(buffer), \
23
24
  [c] "I"((PREF_OFFSET) + ((ITR) + 0) * 64)); \
@@ -27,6 +28,7 @@
27
28
  [c] "I"((PREF_OFFSET) + ((ITR) + 2) * 64)); \
28
29
  __asm__("PRFM PLDL1KEEP, [%x[v],%[c]]" ::[v] "r"(buffer), \
29
30
  [c] "I"((PREF_OFFSET) + ((ITR) + 3) * 64));
31
+ // clang-format on
30
32
 
31
33
  #define PREF1KL1(buffer, PREF_OFFSET) \
32
34
  PREF4X64L1(buffer, (PREF_OFFSET), 0) \
@@ -15,8 +15,7 @@
15
15
  namespace ROCKSDB_NAMESPACE {
16
16
  namespace crc32c {
17
17
 
18
- class CRC { };
19
-
18
+ class CRC {};
20
19
 
21
20
  // Tests for 3-way crc32c algorithm. We need these tests because it uses
22
21
  // different lookup tables than the original Fast_CRC32
@@ -31,42 +30,41 @@ struct ExpectedResult {
31
30
 
32
31
  ExpectedResult expectedResults[] = {
33
32
  // Zero-byte input
34
- { 0, 0, ~0U },
33
+ {0, 0, ~0U},
35
34
  // Small aligned inputs to test special cases in SIMD implementations
36
- { 8, 1, 1543413366 },
37
- { 8, 2, 523493126 },
38
- { 8, 3, 1560427360 },
39
- { 8, 4, 3422504776 },
40
- { 8, 5, 447841138 },
41
- { 8, 6, 3910050499 },
42
- { 8, 7, 3346241981 },
35
+ {8, 1, 1543413366},
36
+ {8, 2, 523493126},
37
+ {8, 3, 1560427360},
38
+ {8, 4, 3422504776},
39
+ {8, 5, 447841138},
40
+ {8, 6, 3910050499},
41
+ {8, 7, 3346241981},
43
42
  // Small unaligned inputs
44
- { 9, 1, 3855826643 },
45
- { 10, 2, 560880875 },
46
- { 11, 3, 1479707779 },
47
- { 12, 4, 2237687071 },
48
- { 13, 5, 4063855784 },
49
- { 14, 6, 2553454047 },
50
- { 15, 7, 1349220140 },
43
+ {9, 1, 3855826643},
44
+ {10, 2, 560880875},
45
+ {11, 3, 1479707779},
46
+ {12, 4, 2237687071},
47
+ {13, 5, 4063855784},
48
+ {14, 6, 2553454047},
49
+ {15, 7, 1349220140},
51
50
  // Larger inputs to test leftover chunks at the end of aligned blocks
52
- { 8, 8, 627613930 },
53
- { 8, 9, 2105929409 },
54
- { 8, 10, 2447068514 },
55
- { 8, 11, 863807079 },
56
- { 8, 12, 292050879 },
57
- { 8, 13, 1411837737 },
58
- { 8, 14, 2614515001 },
59
- { 8, 15, 3579076296 },
60
- { 8, 16, 2897079161 },
61
- { 8, 17, 675168386 },
51
+ {8, 8, 627613930},
52
+ {8, 9, 2105929409},
53
+ {8, 10, 2447068514},
54
+ {8, 11, 863807079},
55
+ {8, 12, 292050879},
56
+ {8, 13, 1411837737},
57
+ {8, 14, 2614515001},
58
+ {8, 15, 3579076296},
59
+ {8, 16, 2897079161},
60
+ {8, 17, 675168386},
62
61
  // // Much larger inputs
63
- { 0, BUFFER_SIZE, 2096790750 },
64
- { 1, BUFFER_SIZE / 2, 3854797577 },
62
+ {0, BUFFER_SIZE, 2096790750},
63
+ {1, BUFFER_SIZE / 2, 3854797577},
65
64
 
66
65
  };
67
66
 
68
67
  TEST(CRC, StandardResults) {
69
-
70
68
  // Original Fast_CRC32 tests.
71
69
  // From rfc3720 section B.4.
72
70
  char buf[32];
@@ -88,18 +86,10 @@ TEST(CRC, StandardResults) {
88
86
  ASSERT_EQ(0x113fdb5cU, Value(buf, sizeof(buf)));
89
87
 
90
88
  unsigned char data[48] = {
91
- 0x01, 0xc0, 0x00, 0x00,
92
- 0x00, 0x00, 0x00, 0x00,
93
- 0x00, 0x00, 0x00, 0x00,
94
- 0x00, 0x00, 0x00, 0x00,
95
- 0x14, 0x00, 0x00, 0x00,
96
- 0x00, 0x00, 0x04, 0x00,
97
- 0x00, 0x00, 0x00, 0x14,
98
- 0x00, 0x00, 0x00, 0x18,
99
- 0x28, 0x00, 0x00, 0x00,
100
- 0x00, 0x00, 0x00, 0x00,
101
- 0x02, 0x00, 0x00, 0x00,
102
- 0x00, 0x00, 0x00, 0x00,
89
+ 0x01, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
90
+ 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
91
+ 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x18, 0x28, 0x00, 0x00, 0x00,
92
+ 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
103
93
  };
104
94
  ASSERT_EQ(0xd9963a56, Value(reinterpret_cast<char*>(data), sizeof(data)));
105
95
 
@@ -114,21 +104,17 @@ TEST(CRC, StandardResults) {
114
104
  for (auto expected : expectedResults) {
115
105
  size_t partialLength = expected.length / 2;
116
106
  uint32_t partialChecksum = Value(buffer + expected.offset, partialLength);
117
- uint32_t result = Extend(partialChecksum,
118
- buffer + expected.offset + partialLength,
119
- expected.length - partialLength);
107
+ uint32_t result =
108
+ Extend(partialChecksum, buffer + expected.offset + partialLength,
109
+ expected.length - partialLength);
120
110
  EXPECT_EQ(~expected.crc32c, result);
121
111
  }
122
-
123
112
  }
124
113
 
125
- TEST(CRC, Values) {
126
- ASSERT_NE(Value("a", 1), Value("foo", 3));
127
- }
114
+ TEST(CRC, Values) { ASSERT_NE(Value("a", 1), Value("foo", 3)); }
128
115
 
129
116
  TEST(CRC, Extend) {
130
- ASSERT_EQ(Value("hello world", 11),
131
- Extend(Value("hello ", 6), "world", 5));
117
+ ASSERT_EQ(Value("hello world", 11), Extend(Value("hello ", 6), "world", 5));
132
118
  }
133
119
 
134
120
  TEST(CRC, Mask) {
@@ -189,15 +175,14 @@ TEST(CRC, Crc32cCombineBigSizeTest) {
189
175
 
190
176
  // copied from folly
191
177
  const uint64_t FNV_64_HASH_START = 14695981039346656037ULL;
192
- inline uint64_t fnv64_buf(const void* buf,
193
- size_t n,
178
+ inline uint64_t fnv64_buf(const void* buf, size_t n,
194
179
  uint64_t hash = FNV_64_HASH_START) {
195
180
  // forcing signed char, since other platforms can use unsigned
196
181
  const signed char* char_buf = reinterpret_cast<const signed char*>(buf);
197
182
 
198
183
  for (size_t i = 0; i < n; ++i) {
199
184
  hash += (hash << 1) + (hash << 4) + (hash << 5) + (hash << 7) +
200
- (hash << 8) + (hash << 40);
185
+ (hash << 8) + (hash << 40);
201
186
  hash ^= char_buf[i];
202
187
  }
203
188
  return hash;
@@ -37,7 +37,8 @@ namespace ROCKSDB_NAMESPACE {
37
37
  // but sometimes, this might lead to nested blocks of "if (s.ok()) {...}".
38
38
  //
39
39
  // With the help of Defer, you can centralize the cleanup logic inside the
40
- // lambda passed to Defer, and you can return immediately on failure when necessary.
40
+ // lambda passed to Defer, and you can return immediately on failure when
41
+ // necessary.
41
42
  class Defer final {
42
43
  public:
43
44
  explicit Defer(std::function<void()>&& fn) : fn_(std::move(fn)) {}
@@ -3,10 +3,11 @@
3
3
  // COPYING file in the root directory) and Apache 2.0 License
4
4
  // (found in the LICENSE.Apache file in the root directory).
5
5
 
6
+ #include "util/defer.h"
7
+
6
8
  #include "port/port.h"
7
9
  #include "port/stack_trace.h"
8
10
  #include "test_util/testharness.h"
9
- #include "util/defer.h"
10
11
 
11
12
  namespace ROCKSDB_NAMESPACE {
12
13
 
@@ -54,7 +54,8 @@ class DuplicateDetector {
54
54
  db_->immutable_db_options().info_log,
55
55
  "Recovering an entry from the dropped column family %" PRIu32
56
56
  ". WAL must must have been emptied before dropping the column "
57
- "family", cf);
57
+ "family",
58
+ cf);
58
59
  #ifndef ROCKSDB_LITE
59
60
  throw std::runtime_error(
60
61
  "Recovering an entry from a dropped column family. "
@@ -23,7 +23,7 @@ uint32_t roundUpToPow2(uint32_t x) {
23
23
  }
24
24
  return rv;
25
25
  }
26
- }
26
+ } // namespace
27
27
 
28
28
  DynamicBloom::DynamicBloom(Allocator* allocator, uint32_t total_bits,
29
29
  uint32_t num_probes, size_t huge_page_tlb_size,
@@ -6,15 +6,15 @@
6
6
  #pragma once
7
7
 
8
8
  #include <array>
9
+ #include <atomic>
10
+ #include <memory>
9
11
  #include <string>
12
+
10
13
  #include "port/port.h"
11
14
  #include "rocksdb/slice.h"
12
15
  #include "table/multiget_context.h"
13
16
  #include "util/hash.h"
14
17
 
15
- #include <atomic>
16
- #include <memory>
17
-
18
18
  namespace ROCKSDB_NAMESPACE {
19
19
 
20
20
  class Slice;
@@ -314,7 +314,7 @@ TEST_F(DynamicBloomTest, concurrent_with_perf) {
314
314
 
315
315
  } // namespace ROCKSDB_NAMESPACE
316
316
 
317
- int main(int argc, char** argv) {
317
+ int main(int argc, char **argv) {
318
318
  ROCKSDB_NAMESPACE::port::InstallStackTraceHandler();
319
319
  ::testing::InitGoogleTest(&argc, argv);
320
320
  ParseCommandLineFlags(&argc, &argv, true);
@@ -3,15 +3,16 @@
3
3
  // COPYING file in the root directory) and Apache 2.0 License
4
4
  // (found in the LICENSE.Apache file in the root directory).
5
5
  //
6
- #include "rocksdb/status.h"
7
- #include "rocksdb/env.h"
8
-
9
6
  #include <fcntl.h>
7
+
8
+ #include "rocksdb/env.h"
9
+ #include "rocksdb/status.h"
10
10
  #ifdef __FreeBSD__
11
11
  #include <sys/types.h>
12
12
  #include <sys/wait.h>
13
13
  #endif
14
14
  #include <vector>
15
+
15
16
  #include "test_util/testharness.h"
16
17
  #include "util/coding.h"
17
18
  #include "util/string_util.h"
@@ -32,23 +33,19 @@ class LockTest : public testing::Test {
32
33
 
33
34
  ~LockTest() override {}
34
35
 
35
- Status LockFile(FileLock** db_lock) {
36
- return env_->LockFile(file_, db_lock);
37
- }
36
+ Status LockFile(FileLock** db_lock) { return env_->LockFile(file_, db_lock); }
38
37
 
39
- Status UnlockFile(FileLock* db_lock) {
40
- return env_->UnlockFile(db_lock);
41
- }
38
+ Status UnlockFile(FileLock* db_lock) { return env_->UnlockFile(db_lock); }
42
39
 
43
- bool AssertFileIsLocked(){
44
- return CheckFileLock( /* lock_expected = */ true);
40
+ bool AssertFileIsLocked() {
41
+ return CheckFileLock(/* lock_expected = */ true);
45
42
  }
46
43
 
47
- bool AssertFileIsNotLocked(){
48
- return CheckFileLock( /* lock_expected = */ false);
44
+ bool AssertFileIsNotLocked() {
45
+ return CheckFileLock(/* lock_expected = */ false);
49
46
  }
50
47
 
51
- bool CheckFileLock(bool lock_expected){
48
+ bool CheckFileLock(bool lock_expected) {
52
49
  // We need to fork to check the fcntl lock as we need
53
50
  // to open and close the file from a different process
54
51
  // to avoid either releasing the lock on close, or not
@@ -63,13 +60,13 @@ class LockTest : public testing::Test {
63
60
  #else
64
61
 
65
62
  pid_t pid = fork();
66
- if ( 0 == pid ) {
63
+ if (0 == pid) {
67
64
  // child process
68
65
  int exit_val = EXIT_FAILURE;
69
66
  int fd = open(file_.c_str(), O_RDWR | O_CREAT, 0644);
70
67
  if (fd < 0) {
71
68
  // could not open file, could not check if it was locked
72
- fprintf( stderr, "Open on on file %s failed.\n",file_.c_str());
69
+ fprintf(stderr, "Open on on file %s failed.\n", file_.c_str());
73
70
  exit(exit_val);
74
71
  }
75
72
 
@@ -78,23 +75,24 @@ class LockTest : public testing::Test {
78
75
  f.l_type = (F_WRLCK);
79
76
  f.l_whence = SEEK_SET;
80
77
  f.l_start = 0;
81
- f.l_len = 0; // Lock/unlock entire file
78
+ f.l_len = 0; // Lock/unlock entire file
82
79
  int value = fcntl(fd, F_SETLK, &f);
83
- if( value == -1 ){
84
- if( lock_expected ){
80
+ if (value == -1) {
81
+ if (lock_expected) {
85
82
  exit_val = EXIT_SUCCESS;
86
83
  }
87
84
  } else {
88
- if( ! lock_expected ){
85
+ if (!lock_expected) {
89
86
  exit_val = EXIT_SUCCESS;
90
87
  }
91
88
  }
92
- close(fd); // lock is released for child process
89
+ close(fd); // lock is released for child process
93
90
  exit(exit_val);
94
91
  } else if (pid > 0) {
95
92
  // parent process
96
93
  int status;
97
- while (-1 == waitpid(pid, &status, 0));
94
+ while (-1 == waitpid(pid, &status, 0))
95
+ ;
98
96
  if (!WIFEXITED(status) || WEXITSTATUS(status) != 0) {
99
97
  // child process exited with non success status
100
98
  return false;
@@ -102,15 +100,13 @@ class LockTest : public testing::Test {
102
100
  return true;
103
101
  }
104
102
  } else {
105
- fprintf( stderr, "Fork failed\n" );
103
+ fprintf(stderr, "Fork failed\n");
106
104
  return false;
107
105
  }
108
106
  return false;
109
107
 
110
108
  #endif
111
-
112
109
  }
113
-
114
110
  };
115
111
  LockTest* LockTest::current_;
116
112
 
@@ -122,7 +118,7 @@ TEST_F(LockTest, LockBySameThread) {
122
118
  ASSERT_OK(LockFile(&lock1));
123
119
 
124
120
  // check the file is locked
125
- ASSERT_TRUE( AssertFileIsLocked() );
121
+ ASSERT_TRUE(AssertFileIsLocked());
126
122
 
127
123
  // re-acquire the lock on the same file. This should fail.
128
124
  Status s = LockFile(&lock2);
@@ -134,14 +130,13 @@ TEST_F(LockTest, LockBySameThread) {
134
130
  #endif
135
131
 
136
132
  // check the file is locked
137
- ASSERT_TRUE( AssertFileIsLocked() );
133
+ ASSERT_TRUE(AssertFileIsLocked());
138
134
 
139
135
  // release the lock
140
136
  ASSERT_OK(UnlockFile(lock1));
141
137
 
142
138
  // check the file is not locked
143
- ASSERT_TRUE( AssertFileIsNotLocked() );
144
-
139
+ ASSERT_TRUE(AssertFileIsNotLocked());
145
140
  }
146
141
 
147
142
  } // namespace ROCKSDB_NAMESPACE
@@ -195,7 +195,7 @@ struct KeyMaker {
195
195
  len += FastRange32(
196
196
  (val_num >> FLAGS_vary_key_size_log2_interval) * 1234567891, 5);
197
197
  }
198
- char * data = buf_.get() + start;
198
+ char *data = buf_.get() + start;
199
199
  // Populate key data such that all data makes it into a key of at
200
200
  // least 8 bytes. We also don't want all the within-filter key
201
201
  // variance confined to a contiguous 32 bits, because then a 32 bit
@@ -378,9 +378,9 @@ void FilterBench::Go() {
378
378
  FLAGS_average_keys_per_filter);
379
379
  const uint32_t variance_offset = variance_range / 2;
380
380
 
381
- const std::vector<TestMode> &testModes =
382
- FLAGS_best_case ? bestCaseTestModes
383
- : FLAGS_quick ? quickTestModes : allTestModes;
381
+ const std::vector<TestMode> &testModes = FLAGS_best_case ? bestCaseTestModes
382
+ : FLAGS_quick ? quickTestModes
383
+ : allTestModes;
384
384
 
385
385
  m_queries_ = FLAGS_m_queries;
386
386
  double working_mem_size_mb = FLAGS_working_mem_size_mb;
@@ -547,7 +547,7 @@ TEST(FastRangeGenericTest, Values) {
547
547
  uint16_t{6234});
548
548
  // Not recommended for typical use because for example this could fail on
549
549
  // some platforms and pass on others:
550
- //EXPECT_EQ(FastRangeGeneric(static_cast<unsigned long>(0x80000000),
550
+ // EXPECT_EQ(FastRangeGeneric(static_cast<unsigned long>(0x80000000),
551
551
  // uint16_t{12468}),
552
552
  // uint16_t{6234});
553
553
  }
@@ -843,7 +843,7 @@ TEST(MathTest, CodingGeneric) {
843
843
  EXPECT_EQ(std::string("_12"), std::string(out));
844
844
  }
845
845
 
846
- int main(int argc, char** argv) {
846
+ int main(int argc, char **argv) {
847
847
  fprintf(stderr, "NPHash64 id: %x\n",
848
848
  static_cast<int>(ROCKSDB_NAMESPACE::GetSliceNPHash64("RocksDB")));
849
849
  ROCKSDB_NAMESPACE::port::InstallStackTraceHandler();
@@ -8,6 +8,7 @@
8
8
  #include <algorithm>
9
9
  #include <cstdint>
10
10
  #include <functional>
11
+
11
12
  #include "port/port.h"
12
13
  #include "util/autovector.h"
13
14
 
@@ -37,11 +38,11 @@ namespace ROCKSDB_NAMESPACE {
37
38
  // std::priority_queue: the comparison operator is expected to provide the
38
39
  // less-than relation, but top() will return the maximum.
39
40
 
40
- template<typename T, typename Compare = std::less<T>>
41
+ template <typename T, typename Compare = std::less<T>>
41
42
  class BinaryHeap {
42
43
  public:
43
- BinaryHeap() { }
44
- explicit BinaryHeap(Compare cmp) : cmp_(std::move(cmp)) { }
44
+ BinaryHeap() {}
45
+ explicit BinaryHeap(Compare cmp) : cmp_(std::move(cmp)) {}
45
46
 
46
47
  void push(const T& value) {
47
48
  data_.push_back(value);
@@ -86,7 +87,7 @@ class BinaryHeap {
86
87
  }
87
88
  }
88
89
 
89
- void swap(BinaryHeap &other) {
90
+ void swap(BinaryHeap& other) {
90
91
  std::swap(cmp_, other.cmp_);
91
92
  data_.swap(other.data_);
92
93
  std::swap(root_cmp_cache_, other.root_cmp_cache_);
@@ -31,8 +31,7 @@ namespace ROCKSDB_NAMESPACE {
31
31
  using HeapTestValue = uint64_t;
32
32
  using Params = std::tuple<size_t, HeapTestValue, int64_t>;
33
33
 
34
- class HeapTest : public ::testing::TestWithParam<Params> {
35
- };
34
+ class HeapTest : public ::testing::TestWithParam<Params> {};
36
35
 
37
36
  TEST_P(HeapTest, Test) {
38
37
  // This test performs the same pseudorandom sequence of operations on a
@@ -54,15 +53,14 @@ TEST_P(HeapTest, Test) {
54
53
  std::mt19937 rng(static_cast<unsigned int>(RNG_SEED));
55
54
  std::uniform_int_distribution<HeapTestValue> value_dist(0, MAX_VALUE);
56
55
  int ndrains = 0;
57
- bool draining = false; // hit max size, draining until we empty the heap
56
+ bool draining = false; // hit max size, draining until we empty the heap
58
57
  size_t size = 0;
59
58
  for (int64_t i = 0; i < FLAGS_iters; ++i) {
60
59
  if (size == 0) {
61
60
  draining = false;
62
61
  }
63
62
 
64
- if (!draining &&
65
- (size == 0 || std::bernoulli_distribution(0.4)(rng))) {
63
+ if (!draining && (size == 0 || std::bernoulli_distribution(0.4)(rng))) {
66
64
  // insert
67
65
  HeapTestValue val = value_dist(rng);
68
66
  heap.push(val);
@@ -104,30 +102,22 @@ TEST_P(HeapTest, Test) {
104
102
  }
105
103
 
106
104
  // Basic test, MAX_VALUE = 3*MAX_HEAP_SIZE (occasional duplicates)
107
- INSTANTIATE_TEST_CASE_P(
108
- Basic, HeapTest,
109
- ::testing::Values(Params(1000, 3000, 0x1b575cf05b708945))
110
- );
105
+ INSTANTIATE_TEST_CASE_P(Basic, HeapTest,
106
+ ::testing::Values(Params(1000, 3000,
107
+ 0x1b575cf05b708945)));
111
108
  // Mid-size heap with small values (many duplicates)
112
- INSTANTIATE_TEST_CASE_P(
113
- SmallValues, HeapTest,
114
- ::testing::Values(Params(100, 10, 0x5ae213f7bd5dccd0))
115
- );
109
+ INSTANTIATE_TEST_CASE_P(SmallValues, HeapTest,
110
+ ::testing::Values(Params(100, 10, 0x5ae213f7bd5dccd0)));
116
111
  // Small heap, large value range (no duplicates)
117
- INSTANTIATE_TEST_CASE_P(
118
- SmallHeap, HeapTest,
119
- ::testing::Values(Params(10, ULLONG_MAX, 0x3e1fa8f4d01707cf))
120
- );
112
+ INSTANTIATE_TEST_CASE_P(SmallHeap, HeapTest,
113
+ ::testing::Values(Params(10, ULLONG_MAX,
114
+ 0x3e1fa8f4d01707cf)));
121
115
  // Two-element heap
122
- INSTANTIATE_TEST_CASE_P(
123
- TwoElementHeap, HeapTest,
124
- ::testing::Values(Params(2, 5, 0x4b5e13ea988c6abc))
125
- );
116
+ INSTANTIATE_TEST_CASE_P(TwoElementHeap, HeapTest,
117
+ ::testing::Values(Params(2, 5, 0x4b5e13ea988c6abc)));
126
118
  // One-element heap
127
- INSTANTIATE_TEST_CASE_P(
128
- OneElementHeap, HeapTest,
129
- ::testing::Values(Params(1, 3, 0x176a1019ab0b612e))
130
- );
119
+ INSTANTIATE_TEST_CASE_P(OneElementHeap, HeapTest,
120
+ ::testing::Values(Params(1, 3, 0x176a1019ab0b612e)));
131
121
 
132
122
  } // namespace ROCKSDB_NAMESPACE
133
123
 
@@ -29,5 +29,5 @@ struct LessOfComparator {
29
29
  };
30
30
 
31
31
  using KVMap = std::map<std::string, std::string, LessOfComparator>;
32
- }
32
+ } // namespace stl_wrappers
33
33
  } // namespace ROCKSDB_NAMESPACE
@@ -10,6 +10,7 @@
10
10
  is under the MIT license.
11
11
  */
12
12
  #include "murmurhash.h"
13
+
13
14
  #include "port/lang.h"
14
15
 
15
16
  #if defined(__x86_64__)
@@ -28,6 +29,7 @@ __attribute__((__no_sanitize__("alignment")))
28
29
  __attribute__((__no_sanitize_undefined__))
29
30
  #endif
30
31
  #endif
32
+ // clang-format off
31
33
  uint64_t MurmurHash64A ( const void * key, int len, unsigned int seed )
32
34
  {
33
35
  const uint64_t m = 0xc6a4a7935bd1e995;
@@ -70,6 +72,7 @@ uint64_t MurmurHash64A ( const void * key, int len, unsigned int seed )
70
72
 
71
73
  return h;
72
74
  }
75
+ // clang-format on
73
76
 
74
77
  #elif defined(__i386__)
75
78
 
@@ -85,7 +88,7 @@ uint64_t MurmurHash64A ( const void * key, int len, unsigned int seed )
85
88
  // 1. It will not work incrementally.
86
89
  // 2. It will not produce the same results on little-endian and big-endian
87
90
  // machines.
88
-
91
+ // clang-format off
89
92
  unsigned int MurmurHash2 ( const void * key, int len, unsigned int seed )
90
93
  {
91
94
  // 'm' and 'r' are mixing constants generated offline.
@@ -136,6 +139,7 @@ unsigned int MurmurHash2 ( const void * key, int len, unsigned int seed )
136
139
 
137
140
  return h;
138
141
  }
142
+ // clang-format on
139
143
 
140
144
  #else
141
145
 
@@ -143,7 +147,7 @@ unsigned int MurmurHash2 ( const void * key, int len, unsigned int seed )
143
147
  //
144
148
  // Same as MurmurHash2, but endian- and alignment-neutral.
145
149
  // Half the speed though, alas.
146
-
150
+ // clang-format off
147
151
  unsigned int MurmurHashNeutral2 ( const void * key, int len, unsigned int seed )
148
152
  {
149
153
  const unsigned int m = 0x5bd1e995;
@@ -187,5 +191,6 @@ unsigned int MurmurHashNeutral2 ( const void * key, int len, unsigned int seed )
187
191
 
188
192
  return h;
189
193
  }
194
+ // clang-format on
190
195
 
191
196
  #endif
@@ -11,23 +11,24 @@
11
11
  */
12
12
  #pragma once
13
13
  #include <stdint.h>
14
+
14
15
  #include "rocksdb/slice.h"
15
16
 
16
17
  #if defined(__x86_64__)
17
18
  #define MURMUR_HASH MurmurHash64A
18
- uint64_t MurmurHash64A ( const void * key, int len, unsigned int seed );
19
+ uint64_t MurmurHash64A(const void* key, int len, unsigned int seed);
19
20
  #define MurmurHash MurmurHash64A
20
21
  using murmur_t = uint64_t;
21
22
 
22
23
  #elif defined(__i386__)
23
24
  #define MURMUR_HASH MurmurHash2
24
- unsigned int MurmurHash2 ( const void * key, int len, unsigned int seed );
25
+ unsigned int MurmurHash2(const void* key, int len, unsigned int seed);
25
26
  #define MurmurHash MurmurHash2
26
27
  using murmur_t = unsigned int;
27
28
 
28
29
  #else
29
30
  #define MURMUR_HASH MurmurHashNeutral2
30
- unsigned int MurmurHashNeutral2 ( const void * key, int len, unsigned int seed );
31
+ unsigned int MurmurHashNeutral2(const void* key, int len, unsigned int seed);
31
32
  #define MurmurHash MurmurHashNeutral2
32
33
  using murmur_t = unsigned int;
33
34
  #endif