@nxtedition/rocksdb 8.2.0 → 8.2.2

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 (321) hide show
  1. package/binding.cc +3 -3
  2. package/deps/rocksdb/rocksdb/CMakeLists.txt +16 -52
  3. package/deps/rocksdb/rocksdb/Makefile +10 -5
  4. package/deps/rocksdb/rocksdb/TARGETS +8 -345
  5. package/deps/rocksdb/rocksdb/cache/cache_test.cc +92 -0
  6. package/deps/rocksdb/rocksdb/cache/clock_cache.cc +32 -32
  7. package/deps/rocksdb/rocksdb/cache/clock_cache.h +12 -9
  8. package/deps/rocksdb/rocksdb/cache/compressed_secondary_cache.cc +6 -43
  9. package/deps/rocksdb/rocksdb/cache/compressed_secondary_cache.h +3 -13
  10. package/deps/rocksdb/rocksdb/cache/compressed_secondary_cache_test.cc +8 -5
  11. package/deps/rocksdb/rocksdb/cache/lru_cache.cc +21 -47
  12. package/deps/rocksdb/rocksdb/cache/lru_cache.h +3 -8
  13. package/deps/rocksdb/rocksdb/cache/lru_cache_test.cc +2 -1
  14. package/deps/rocksdb/rocksdb/cache/secondary_cache_adapter.cc +1 -2
  15. package/deps/rocksdb/rocksdb/cache/sharded_cache.cc +44 -7
  16. package/deps/rocksdb/rocksdb/cache/sharded_cache.h +13 -14
  17. package/deps/rocksdb/rocksdb/db/blob/blob_contents.h +1 -1
  18. package/deps/rocksdb/rocksdb/db/blob/blob_file_builder.cc +1 -0
  19. package/deps/rocksdb/rocksdb/db/blob/blob_file_cache.cc +2 -2
  20. package/deps/rocksdb/rocksdb/db/blob/blob_file_cache.h +2 -1
  21. package/deps/rocksdb/rocksdb/db/blob/blob_file_cache_test.cc +17 -8
  22. package/deps/rocksdb/rocksdb/db/blob/blob_file_reader.cc +40 -21
  23. package/deps/rocksdb/rocksdb/db/blob/blob_file_reader.h +5 -1
  24. package/deps/rocksdb/rocksdb/db/blob/blob_file_reader_test.cc +41 -42
  25. package/deps/rocksdb/rocksdb/db/blob/blob_log_sequential_reader.cc +1 -1
  26. package/deps/rocksdb/rocksdb/db/blob/blob_log_writer.cc +1 -1
  27. package/deps/rocksdb/rocksdb/db/blob/blob_source.cc +5 -4
  28. package/deps/rocksdb/rocksdb/db/blob/blob_source.h +2 -2
  29. package/deps/rocksdb/rocksdb/db/blob/blob_source_test.cc +5 -3
  30. package/deps/rocksdb/rocksdb/db/builder.cc +7 -6
  31. package/deps/rocksdb/rocksdb/db/builder.h +2 -2
  32. package/deps/rocksdb/rocksdb/db/c.cc +76 -5
  33. package/deps/rocksdb/rocksdb/db/c_test.c +141 -0
  34. package/deps/rocksdb/rocksdb/db/column_family.cc +32 -0
  35. package/deps/rocksdb/rocksdb/db/compact_files_test.cc +3 -2
  36. package/deps/rocksdb/rocksdb/db/compaction/compaction.cc +5 -0
  37. package/deps/rocksdb/rocksdb/db/compaction/compaction.h +8 -5
  38. package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.cc +12 -10
  39. package/deps/rocksdb/rocksdb/db/compaction/compaction_job.cc +21 -17
  40. package/deps/rocksdb/rocksdb/db/compaction/compaction_job_stats_test.cc +2 -2
  41. package/deps/rocksdb/rocksdb/db/compaction/compaction_job_test.cc +8 -7
  42. package/deps/rocksdb/rocksdb/db/compaction/compaction_outputs.cc +3 -1
  43. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.cc +1 -1
  44. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.cc +77 -50
  45. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.h +4 -5
  46. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.cc +55 -8
  47. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_test.cc +142 -56
  48. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.cc +1 -1
  49. package/deps/rocksdb/rocksdb/db/compaction/compaction_service_test.cc +1 -2
  50. package/deps/rocksdb/rocksdb/db/compaction/tiered_compaction_test.cc +21 -20
  51. package/deps/rocksdb/rocksdb/db/convenience.cc +8 -6
  52. package/deps/rocksdb/rocksdb/db/corruption_test.cc +5 -4
  53. package/deps/rocksdb/rocksdb/db/db_block_cache_test.cc +6 -3
  54. package/deps/rocksdb/rocksdb/db/db_bloom_filter_test.cc +260 -220
  55. package/deps/rocksdb/rocksdb/db/db_clip_test.cc +142 -0
  56. package/deps/rocksdb/rocksdb/db/db_compaction_filter_test.cc +1 -1
  57. package/deps/rocksdb/rocksdb/db/db_compaction_test.cc +333 -27
  58. package/deps/rocksdb/rocksdb/db/db_impl/compacted_db_impl.cc +5 -0
  59. package/deps/rocksdb/rocksdb/db/db_impl/compacted_db_impl.h +7 -0
  60. package/deps/rocksdb/rocksdb/db/db_impl/db_impl.cc +189 -27
  61. package/deps/rocksdb/rocksdb/db/db_impl/db_impl.h +23 -10
  62. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_compaction_flush.cc +134 -90
  63. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_debug.cc +2 -2
  64. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_experimental.cc +5 -3
  65. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_files.cc +5 -1
  66. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_open.cc +124 -16
  67. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_readonly.cc +10 -0
  68. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_readonly.h +7 -0
  69. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_secondary.cc +15 -0
  70. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_write.cc +11 -5
  71. package/deps/rocksdb/rocksdb/db/db_iter.cc +7 -8
  72. package/deps/rocksdb/rocksdb/db/db_iterator_test.cc +54 -3
  73. package/deps/rocksdb/rocksdb/db/db_merge_operator_test.cc +42 -0
  74. package/deps/rocksdb/rocksdb/db/db_options_test.cc +116 -1
  75. package/deps/rocksdb/rocksdb/db/db_properties_test.cc +3 -2
  76. package/deps/rocksdb/rocksdb/db/db_rate_limiter_test.cc +3 -2
  77. package/deps/rocksdb/rocksdb/db/db_sst_test.cc +9 -8
  78. package/deps/rocksdb/rocksdb/db/db_statistics_test.cc +142 -63
  79. package/deps/rocksdb/rocksdb/db/db_test.cc +28 -7
  80. package/deps/rocksdb/rocksdb/db/db_test2.cc +71 -131
  81. package/deps/rocksdb/rocksdb/db/db_test_util.cc +18 -0
  82. package/deps/rocksdb/rocksdb/db/db_test_util.h +6 -0
  83. package/deps/rocksdb/rocksdb/db/db_universal_compaction_test.cc +10 -10
  84. package/deps/rocksdb/rocksdb/db/db_wal_test.cc +25 -0
  85. package/deps/rocksdb/rocksdb/db/db_with_timestamp_basic_test.cc +88 -0
  86. package/deps/rocksdb/rocksdb/db/db_write_buffer_manager_test.cc +67 -0
  87. package/deps/rocksdb/rocksdb/db/db_write_test.cc +5 -0
  88. package/deps/rocksdb/rocksdb/db/error_handler_fs_test.cc +4 -4
  89. package/deps/rocksdb/rocksdb/db/experimental.cc +4 -2
  90. package/deps/rocksdb/rocksdb/db/external_sst_file_basic_test.cc +86 -1
  91. package/deps/rocksdb/rocksdb/db/external_sst_file_ingestion_job.cc +15 -2
  92. package/deps/rocksdb/rocksdb/db/external_sst_file_test.cc +1 -2
  93. package/deps/rocksdb/rocksdb/db/flush_job.cc +21 -14
  94. package/deps/rocksdb/rocksdb/db/forward_iterator.cc +14 -7
  95. package/deps/rocksdb/rocksdb/db/import_column_family_job.cc +31 -8
  96. package/deps/rocksdb/rocksdb/db/import_column_family_test.cc +21 -19
  97. package/deps/rocksdb/rocksdb/db/internal_stats.cc +42 -12
  98. package/deps/rocksdb/rocksdb/db/internal_stats.h +1 -0
  99. package/deps/rocksdb/rocksdb/db/kv_checksum.h +92 -6
  100. package/deps/rocksdb/rocksdb/db/listener_test.cc +2 -2
  101. package/deps/rocksdb/rocksdb/db/log_format.h +8 -4
  102. package/deps/rocksdb/rocksdb/db/log_reader.cc +129 -51
  103. package/deps/rocksdb/rocksdb/db/log_reader.h +16 -0
  104. package/deps/rocksdb/rocksdb/db/log_test.cc +125 -4
  105. package/deps/rocksdb/rocksdb/db/log_writer.cc +32 -2
  106. package/deps/rocksdb/rocksdb/db/log_writer.h +16 -0
  107. package/deps/rocksdb/rocksdb/db/memtable.cc +17 -46
  108. package/deps/rocksdb/rocksdb/db/memtable.h +1 -1
  109. package/deps/rocksdb/rocksdb/db/memtable_list.cc +8 -4
  110. package/deps/rocksdb/rocksdb/db/merge_helper.cc +1 -1
  111. package/deps/rocksdb/rocksdb/db/perf_context_test.cc +2 -1
  112. package/deps/rocksdb/rocksdb/db/plain_table_db_test.cc +5 -4
  113. package/deps/rocksdb/rocksdb/db/repair.cc +38 -11
  114. package/deps/rocksdb/rocksdb/db/seqno_time_test.cc +3 -3
  115. package/deps/rocksdb/rocksdb/db/table_cache.cc +68 -51
  116. package/deps/rocksdb/rocksdb/db/table_cache.h +20 -10
  117. package/deps/rocksdb/rocksdb/db/table_cache_sync_and_async.h +2 -1
  118. package/deps/rocksdb/rocksdb/db/table_properties_collector_test.cc +6 -3
  119. package/deps/rocksdb/rocksdb/db/version_builder.cc +9 -5
  120. package/deps/rocksdb/rocksdb/db/version_builder.h +2 -1
  121. package/deps/rocksdb/rocksdb/db/version_builder_test.cc +140 -120
  122. package/deps/rocksdb/rocksdb/db/version_edit.cc +14 -0
  123. package/deps/rocksdb/rocksdb/db/version_edit.h +12 -4
  124. package/deps/rocksdb/rocksdb/db/version_edit_handler.cc +21 -13
  125. package/deps/rocksdb/rocksdb/db/version_edit_handler.h +26 -16
  126. package/deps/rocksdb/rocksdb/db/version_edit_test.cc +9 -9
  127. package/deps/rocksdb/rocksdb/db/version_set.cc +292 -96
  128. package/deps/rocksdb/rocksdb/db/version_set.h +53 -28
  129. package/deps/rocksdb/rocksdb/db/version_set_sync_and_async.h +1 -0
  130. package/deps/rocksdb/rocksdb/db/version_set_test.cc +62 -22
  131. package/deps/rocksdb/rocksdb/db/version_util.h +5 -4
  132. package/deps/rocksdb/rocksdb/db/write_batch.cc +3 -1
  133. package/deps/rocksdb/rocksdb/db_stress_tool/CMakeLists.txt +1 -0
  134. package/deps/rocksdb/rocksdb/db_stress_tool/batched_ops_stress.cc +119 -27
  135. package/deps/rocksdb/rocksdb/db_stress_tool/cf_consistency_stress.cc +123 -0
  136. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_common.h +4 -0
  137. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_driver.cc +7 -2
  138. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_env_wrapper.h +34 -0
  139. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_gflags.cc +13 -0
  140. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_shared_state.h +43 -33
  141. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.cc +29 -17
  142. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.h +5 -0
  143. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_tool.cc +6 -1
  144. package/deps/rocksdb/rocksdb/db_stress_tool/expected_state.cc +85 -50
  145. package/deps/rocksdb/rocksdb/db_stress_tool/expected_state.h +96 -54
  146. package/deps/rocksdb/rocksdb/db_stress_tool/expected_value.cc +122 -0
  147. package/deps/rocksdb/rocksdb/db_stress_tool/expected_value.h +206 -0
  148. package/deps/rocksdb/rocksdb/db_stress_tool/multi_ops_txns_stress.cc +9 -1
  149. package/deps/rocksdb/rocksdb/db_stress_tool/multi_ops_txns_stress.h +9 -3
  150. package/deps/rocksdb/rocksdb/db_stress_tool/no_batched_ops_stress.cc +322 -92
  151. package/deps/rocksdb/rocksdb/env/env_posix.cc +12 -8
  152. package/deps/rocksdb/rocksdb/env/env_test.cc +31 -0
  153. package/deps/rocksdb/rocksdb/env/mock_env.cc +1 -1
  154. package/deps/rocksdb/rocksdb/env/unique_id_gen.h +14 -0
  155. package/deps/rocksdb/rocksdb/file/file_prefetch_buffer.cc +1 -1
  156. package/deps/rocksdb/rocksdb/file/file_prefetch_buffer.h +5 -1
  157. package/deps/rocksdb/rocksdb/file/file_util.cc +3 -3
  158. package/deps/rocksdb/rocksdb/file/file_util.h +2 -0
  159. package/deps/rocksdb/rocksdb/file/prefetch_test.cc +89 -0
  160. package/deps/rocksdb/rocksdb/file/random_access_file_reader.cc +22 -7
  161. package/deps/rocksdb/rocksdb/file/random_access_file_reader.h +3 -2
  162. package/deps/rocksdb/rocksdb/file/readahead_raf.cc +1 -1
  163. package/deps/rocksdb/rocksdb/file/sequence_file_reader.cc +1 -1
  164. package/deps/rocksdb/rocksdb/file/writable_file_writer.cc +1 -1
  165. package/deps/rocksdb/rocksdb/include/rocksdb/advanced_cache.h +3 -0
  166. package/deps/rocksdb/rocksdb/include/rocksdb/advanced_options.h +154 -74
  167. package/deps/rocksdb/rocksdb/include/rocksdb/c.h +27 -7
  168. package/deps/rocksdb/rocksdb/include/rocksdb/cache.h +107 -28
  169. package/deps/rocksdb/rocksdb/include/rocksdb/db.h +19 -0
  170. package/deps/rocksdb/rocksdb/include/rocksdb/env.h +8 -0
  171. package/deps/rocksdb/rocksdb/include/rocksdb/file_system.h +2 -0
  172. package/deps/rocksdb/rocksdb/include/rocksdb/memory_allocator.h +7 -1
  173. package/deps/rocksdb/rocksdb/include/rocksdb/options.h +137 -152
  174. package/deps/rocksdb/rocksdb/include/rocksdb/perf_context.h +61 -26
  175. package/deps/rocksdb/rocksdb/include/rocksdb/secondary_cache.h +30 -26
  176. package/deps/rocksdb/rocksdb/include/rocksdb/sst_file_writer.h +33 -16
  177. package/deps/rocksdb/rocksdb/include/rocksdb/statistics.h +87 -8
  178. package/deps/rocksdb/rocksdb/include/rocksdb/table.h +1 -1
  179. package/deps/rocksdb/rocksdb/include/rocksdb/table_properties.h +5 -0
  180. package/deps/rocksdb/rocksdb/include/rocksdb/thread_status.h +1 -0
  181. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/options_util.h +1 -0
  182. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/stackable_db.h +7 -0
  183. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction.h +0 -1
  184. package/deps/rocksdb/rocksdb/include/rocksdb/version.h +2 -2
  185. package/deps/rocksdb/rocksdb/include/rocksdb/write_buffer_manager.h +9 -2
  186. package/deps/rocksdb/rocksdb/logging/env_logger.h +2 -0
  187. package/deps/rocksdb/rocksdb/memory/jemalloc_nodump_allocator.cc +78 -42
  188. package/deps/rocksdb/rocksdb/memory/jemalloc_nodump_allocator.h +14 -9
  189. package/deps/rocksdb/rocksdb/memtable/inlineskiplist_test.cc +1 -0
  190. package/deps/rocksdb/rocksdb/memtable/skiplist_test.cc +1 -0
  191. package/deps/rocksdb/rocksdb/memtable/write_buffer_manager.cc +4 -9
  192. package/deps/rocksdb/rocksdb/microbench/db_basic_bench.cc +19 -11
  193. package/deps/rocksdb/rocksdb/monitoring/instrumented_mutex.h +1 -1
  194. package/deps/rocksdb/rocksdb/monitoring/perf_context.cc +211 -555
  195. package/deps/rocksdb/rocksdb/monitoring/perf_step_timer.h +1 -1
  196. package/deps/rocksdb/rocksdb/monitoring/statistics.cc +36 -2
  197. package/deps/rocksdb/rocksdb/monitoring/thread_status_updater.cc +17 -7
  198. package/deps/rocksdb/rocksdb/monitoring/thread_status_updater.h +10 -7
  199. package/deps/rocksdb/rocksdb/monitoring/thread_status_util.cc +19 -18
  200. package/deps/rocksdb/rocksdb/monitoring/thread_status_util.h +10 -2
  201. package/deps/rocksdb/rocksdb/monitoring/thread_status_util_debug.cc +14 -0
  202. package/deps/rocksdb/rocksdb/options/cf_options.cc +35 -2
  203. package/deps/rocksdb/rocksdb/options/cf_options.h +5 -0
  204. package/deps/rocksdb/rocksdb/options/customizable_test.cc +1 -1
  205. package/deps/rocksdb/rocksdb/options/options.cc +12 -53
  206. package/deps/rocksdb/rocksdb/options/options_helper.cc +4 -0
  207. package/deps/rocksdb/rocksdb/options/options_parser.cc +11 -0
  208. package/deps/rocksdb/rocksdb/options/options_settable_test.cc +32 -4
  209. package/deps/rocksdb/rocksdb/options/options_test.cc +89 -5
  210. package/deps/rocksdb/rocksdb/port/lang.h +27 -0
  211. package/deps/rocksdb/rocksdb/port/stack_trace.cc +67 -24
  212. package/deps/rocksdb/rocksdb/src.mk +2 -0
  213. package/deps/rocksdb/rocksdb/table/block_based/binary_search_index_reader.cc +2 -3
  214. package/deps/rocksdb/rocksdb/table/block_based/block.cc +195 -35
  215. package/deps/rocksdb/rocksdb/table/block_based/block.h +197 -24
  216. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_builder.cc +71 -51
  217. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_builder.h +7 -1
  218. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_factory.cc +4 -6
  219. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_factory.h +3 -0
  220. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_iterator.cc +43 -2
  221. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_iterator.h +36 -6
  222. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.cc +266 -166
  223. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.h +44 -14
  224. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_impl.h +1 -1
  225. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_sync_and_async.h +63 -56
  226. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_test.cc +8 -2
  227. package/deps/rocksdb/rocksdb/table/block_based/block_builder.h +4 -2
  228. package/deps/rocksdb/rocksdb/table/block_based/block_cache.cc +10 -0
  229. package/deps/rocksdb/rocksdb/table/block_based/block_cache.h +14 -2
  230. package/deps/rocksdb/rocksdb/table/block_based/block_test.cc +918 -2
  231. package/deps/rocksdb/rocksdb/table/block_based/data_block_hash_index_test.cc +3 -2
  232. package/deps/rocksdb/rocksdb/table/block_based/filter_block.h +10 -9
  233. package/deps/rocksdb/rocksdb/table/block_based/filter_block_reader_common.cc +6 -8
  234. package/deps/rocksdb/rocksdb/table/block_based/filter_block_reader_common.h +2 -2
  235. package/deps/rocksdb/rocksdb/table/block_based/flush_block_policy.cc +1 -1
  236. package/deps/rocksdb/rocksdb/table/block_based/full_filter_block.cc +18 -23
  237. package/deps/rocksdb/rocksdb/table/block_based/full_filter_block.h +8 -8
  238. package/deps/rocksdb/rocksdb/table/block_based/full_filter_block_test.cc +16 -32
  239. package/deps/rocksdb/rocksdb/table/block_based/hash_index_reader.cc +7 -8
  240. package/deps/rocksdb/rocksdb/table/block_based/index_reader_common.cc +4 -5
  241. package/deps/rocksdb/rocksdb/table/block_based/index_reader_common.h +3 -3
  242. package/deps/rocksdb/rocksdb/table/block_based/partitioned_filter_block.cc +46 -53
  243. package/deps/rocksdb/rocksdb/table/block_based/partitioned_filter_block.h +12 -12
  244. package/deps/rocksdb/rocksdb/table/block_based/partitioned_filter_block_test.cc +7 -9
  245. package/deps/rocksdb/rocksdb/table/block_based/partitioned_index_reader.cc +26 -23
  246. package/deps/rocksdb/rocksdb/table/block_based/partitioned_index_reader.h +2 -1
  247. package/deps/rocksdb/rocksdb/table/block_based/reader_common.h +3 -0
  248. package/deps/rocksdb/rocksdb/table/block_based/uncompression_dict_reader.cc +4 -2
  249. package/deps/rocksdb/rocksdb/table/block_based/uncompression_dict_reader.h +3 -2
  250. package/deps/rocksdb/rocksdb/table/block_fetcher.cc +7 -1
  251. package/deps/rocksdb/rocksdb/table/block_fetcher.h +1 -1
  252. package/deps/rocksdb/rocksdb/table/block_fetcher_test.cc +2 -1
  253. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder_test.cc +3 -2
  254. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader.cc +5 -2
  255. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader.h +4 -2
  256. package/deps/rocksdb/rocksdb/table/format.cc +4 -4
  257. package/deps/rocksdb/rocksdb/table/format.h +1 -1
  258. package/deps/rocksdb/rocksdb/table/get_context.cc +1 -1
  259. package/deps/rocksdb/rocksdb/table/meta_blocks.cc +33 -22
  260. package/deps/rocksdb/rocksdb/table/meta_blocks.h +4 -0
  261. package/deps/rocksdb/rocksdb/table/mock_table.cc +4 -2
  262. package/deps/rocksdb/rocksdb/table/persistent_cache_helper.h +1 -1
  263. package/deps/rocksdb/rocksdb/table/persistent_cache_options.h +1 -1
  264. package/deps/rocksdb/rocksdb/table/plain/plain_table_reader.cc +18 -10
  265. package/deps/rocksdb/rocksdb/table/plain/plain_table_reader.h +4 -3
  266. package/deps/rocksdb/rocksdb/table/sst_file_dumper.cc +10 -7
  267. package/deps/rocksdb/rocksdb/table/sst_file_reader.cc +4 -2
  268. package/deps/rocksdb/rocksdb/table/sst_file_writer.cc +11 -0
  269. package/deps/rocksdb/rocksdb/table/table_builder.h +14 -5
  270. package/deps/rocksdb/rocksdb/table/table_properties.cc +2 -0
  271. package/deps/rocksdb/rocksdb/table/table_reader.h +6 -3
  272. package/deps/rocksdb/rocksdb/table/table_reader_bench.cc +1 -1
  273. package/deps/rocksdb/rocksdb/table/table_test.cc +291 -34
  274. package/deps/rocksdb/rocksdb/test_util/secondary_cache_test_util.h +3 -1
  275. package/deps/rocksdb/rocksdb/test_util/testharness.h +5 -0
  276. package/deps/rocksdb/rocksdb/test_util/testutil.cc +2 -2
  277. package/deps/rocksdb/rocksdb/tools/db_bench_tool.cc +33 -17
  278. package/deps/rocksdb/rocksdb/tools/ldb_cmd.cc +3 -1
  279. package/deps/rocksdb/rocksdb/util/bloom_impl.h +2 -2
  280. package/deps/rocksdb/rocksdb/util/compression.h +1 -1
  281. package/deps/rocksdb/rocksdb/util/crc32c.cc +24 -83
  282. package/deps/rocksdb/rocksdb/util/crc32c_arm64.cc +7 -9
  283. package/deps/rocksdb/rocksdb/util/file_checksum_helper.cc +4 -1
  284. package/deps/rocksdb/rocksdb/util/filter_bench.cc +1 -1
  285. package/deps/rocksdb/rocksdb/util/gflags_compat.h +9 -10
  286. package/deps/rocksdb/rocksdb/util/math.h +12 -7
  287. package/deps/rocksdb/rocksdb/util/rate_limiter.cc +16 -18
  288. package/deps/rocksdb/rocksdb/util/rate_limiter_test.cc +46 -2
  289. package/deps/rocksdb/rocksdb/util/ribbon_test.cc +6 -6
  290. package/deps/rocksdb/rocksdb/util/slice_transform_test.cc +12 -7
  291. package/deps/rocksdb/rocksdb/util/stop_watch.h +31 -13
  292. package/deps/rocksdb/rocksdb/util/thread_list_test.cc +2 -0
  293. package/deps/rocksdb/rocksdb/util/thread_operation.h +2 -1
  294. package/deps/rocksdb/rocksdb/util/udt_util.h +77 -0
  295. package/deps/rocksdb/rocksdb/utilities/agg_merge/agg_merge.cc +2 -2
  296. package/deps/rocksdb/rocksdb/utilities/agg_merge/agg_merge_test.cc +1 -1
  297. package/deps/rocksdb/rocksdb/utilities/agg_merge/test_agg_merge.cc +1 -1
  298. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine.cc +1 -1
  299. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_test.cc +1 -1
  300. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_compaction_filter.h +1 -1
  301. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_impl.cc +11 -1
  302. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_test.cc +34 -1
  303. package/deps/rocksdb/rocksdb/utilities/options/options_util_test.cc +15 -0
  304. package/deps/rocksdb/rocksdb/utilities/simulator_cache/sim_cache.cc +1 -1
  305. package/deps/rocksdb/rocksdb/utilities/transactions/pessimistic_transaction.cc +5 -1
  306. package/deps/rocksdb/rocksdb/utilities/transactions/transaction_base.cc +29 -1
  307. package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.cc +0 -1
  308. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_transaction_test.cc +0 -1
  309. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn.cc +6 -1
  310. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn_db.cc +10 -0
  311. package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_txn.cc +6 -1
  312. package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_txn_db.cc +5 -0
  313. package/deps/rocksdb/rocksdb/utilities/ttl/db_ttl_impl.cc +5 -0
  314. package/package.json +1 -1
  315. package/prebuilds/darwin-arm64/node.napi.node +0 -0
  316. package/prebuilds/linux-x64/node.napi.node +0 -0
  317. /package/deps/rocksdb/rocksdb/memory/{memory_allocator.h → memory_allocator_impl.h} +0 -0
  318. /package/deps/rocksdb/rocksdb/monitoring/{statistics.h → statistics_impl.h} +0 -0
  319. /package/deps/rocksdb/rocksdb/table/block_based/{flush_block_policy.h → flush_block_policy_impl.h} +0 -0
  320. /package/deps/rocksdb/rocksdb/util/{rate_limiter.h → rate_limiter_impl.h} +0 -0
  321. /package/deps/rocksdb/rocksdb/utilities/agg_merge/{agg_merge.h → agg_merge_impl.h} +0 -0
@@ -238,6 +238,12 @@ bool VersionEdit::EncodeTo(std::string* dst) const {
238
238
  f.compensated_range_deletion_size);
239
239
  PutLengthPrefixedSlice(dst, Slice(compensated_range_deletion_size));
240
240
  }
241
+ if (f.tail_size) {
242
+ PutVarint32(dst, NewFileCustomTag::kTailSize);
243
+ std::string varint_tail_size;
244
+ PutVarint64(&varint_tail_size, f.tail_size);
245
+ PutLengthPrefixedSlice(dst, Slice(varint_tail_size));
246
+ }
241
247
 
242
248
  TEST_SYNC_POINT_CALLBACK("VersionEdit::EncodeTo:NewFile4:CustomizeFields",
243
249
  dst);
@@ -416,6 +422,11 @@ const char* VersionEdit::DecodeNewFile4From(Slice* input) {
416
422
  return "Invalid compensated range deletion size";
417
423
  }
418
424
  break;
425
+ case kTailSize:
426
+ if (!GetVarint64(&field, &f.tail_size)) {
427
+ return "invalid tail start offset";
428
+ }
429
+ break;
419
430
  default:
420
431
  if ((custom_tag & kCustomTagNonSafeIgnoreMask) != 0) {
421
432
  // Should not proceed if cannot understand it
@@ -851,6 +862,8 @@ std::string VersionEdit::DebugString(bool hex_key) const {
851
862
  InternalUniqueIdToExternal(&id);
852
863
  r.append(UniqueIdToHumanString(EncodeUniqueIdBytes(&id)));
853
864
  }
865
+ r.append(" tail size:");
866
+ AppendNumberTo(&r, f.tail_size);
854
867
  }
855
868
 
856
869
  for (const auto& blob_file_addition : blob_file_additions_) {
@@ -966,6 +979,7 @@ std::string VersionEdit::DebugJSON(int edit_num, bool hex_key) const {
966
979
  // permanent
967
980
  jw << "Temperature" << static_cast<int>(f.temperature);
968
981
  }
982
+ jw << "TailSize" << f.tail_size;
969
983
  jw.EndArrayedObject();
970
984
  }
971
985
 
@@ -90,6 +90,7 @@ enum NewFileCustomTag : uint32_t {
90
90
  kUniqueId = 12,
91
91
  kEpochNumber = 13,
92
92
  kCompensatedRangeDeletionSize = 14,
93
+ kTailSize = 15,
93
94
 
94
95
  // If this bit for the custom tag is set, opening DB should fail if
95
96
  // we don't know this field.
@@ -238,6 +239,10 @@ struct FileMetaData {
238
239
  // SST unique id
239
240
  UniqueId64x2 unique_id{};
240
241
 
242
+ // Size of the "tail" part of a SST file
243
+ // "Tail" refers to all blocks after data blocks till the end of the SST file
244
+ uint64_t tail_size = 0;
245
+
241
246
  FileMetaData() = default;
242
247
 
243
248
  FileMetaData(uint64_t file, uint32_t file_path_id, uint64_t file_size,
@@ -249,7 +254,8 @@ struct FileMetaData {
249
254
  uint64_t _epoch_number, const std::string& _file_checksum,
250
255
  const std::string& _file_checksum_func_name,
251
256
  UniqueId64x2 _unique_id,
252
- const uint64_t _compensated_range_deletion_size)
257
+ const uint64_t _compensated_range_deletion_size,
258
+ uint64_t _tail_size)
253
259
  : fd(file, file_path_id, file_size, smallest_seq, largest_seq),
254
260
  smallest(smallest_key),
255
261
  largest(largest_key),
@@ -262,7 +268,8 @@ struct FileMetaData {
262
268
  epoch_number(_epoch_number),
263
269
  file_checksum(_file_checksum),
264
270
  file_checksum_func_name(_file_checksum_func_name),
265
- unique_id(std::move(_unique_id)) {
271
+ unique_id(std::move(_unique_id)),
272
+ tail_size(_tail_size) {
266
273
  TEST_SYNC_POINT_CALLBACK("FileMetaData::FileMetaData", this);
267
274
  }
268
275
 
@@ -446,7 +453,8 @@ class VersionEdit {
446
453
  uint64_t epoch_number, const std::string& file_checksum,
447
454
  const std::string& file_checksum_func_name,
448
455
  const UniqueId64x2& unique_id,
449
- const uint64_t compensated_range_deletion_size) {
456
+ const uint64_t compensated_range_deletion_size,
457
+ uint64_t tail_size) {
450
458
  assert(smallest_seqno <= largest_seqno);
451
459
  new_files_.emplace_back(
452
460
  level,
@@ -455,7 +463,7 @@ class VersionEdit {
455
463
  temperature, oldest_blob_file_number, oldest_ancester_time,
456
464
  file_creation_time, epoch_number, file_checksum,
457
465
  file_checksum_func_name, unique_id,
458
- compensated_range_deletion_size));
466
+ compensated_range_deletion_size, tail_size));
459
467
  if (!HasLastSequence() || largest_seqno > GetLastSequence()) {
460
468
  SetLastSequence(largest_seqno);
461
469
  }
@@ -155,8 +155,9 @@ VersionEditHandler::VersionEditHandler(
155
155
  bool read_only, std::vector<ColumnFamilyDescriptor> column_families,
156
156
  VersionSet* version_set, bool track_missing_files,
157
157
  bool no_error_if_files_missing, const std::shared_ptr<IOTracer>& io_tracer,
158
- bool skip_load_table_files, EpochNumberRequirement epoch_number_requirement)
159
- : VersionEditHandlerBase(),
158
+ const ReadOptions& read_options, bool skip_load_table_files,
159
+ EpochNumberRequirement epoch_number_requirement)
160
+ : VersionEditHandlerBase(read_options),
160
161
  read_only_(read_only),
161
162
  column_families_(std::move(column_families)),
162
163
  version_set_(version_set),
@@ -480,7 +481,8 @@ void VersionEditHandler::CheckIterationResult(const log::Reader& reader,
480
481
 
481
482
  ColumnFamilyData* VersionEditHandler::CreateCfAndInit(
482
483
  const ColumnFamilyOptions& cf_options, const VersionEdit& edit) {
483
- ColumnFamilyData* cfd = version_set_->CreateColumnFamily(cf_options, &edit);
484
+ ColumnFamilyData* cfd =
485
+ version_set_->CreateColumnFamily(cf_options, read_options_, &edit);
484
486
  assert(cfd != nullptr);
485
487
  cfd->set_initialized();
486
488
  assert(builders_.find(edit.column_family_) == builders_.end());
@@ -537,7 +539,7 @@ Status VersionEditHandler::MaybeCreateVersion(const VersionEdit& /*edit*/,
537
539
  if (s.ok()) {
538
540
  // Install new version
539
541
  v->PrepareAppend(
540
- *cfd->GetLatestMutableCFOptions(),
542
+ *cfd->GetLatestMutableCFOptions(), read_options_,
541
543
  !(version_set_->db_options_->skip_stats_update_on_db_open));
542
544
  version_set_->AppendVersion(cfd, v);
543
545
  } else {
@@ -564,12 +566,13 @@ Status VersionEditHandler::LoadTables(ColumnFamilyData* cfd,
564
566
  assert(builder_iter->second != nullptr);
565
567
  VersionBuilder* builder = builder_iter->second->version_builder();
566
568
  assert(builder);
569
+ const MutableCFOptions* moptions = cfd->GetLatestMutableCFOptions();
567
570
  Status s = builder->LoadTableHandlers(
568
571
  cfd->internal_stats(),
569
572
  version_set_->db_options_->max_file_opening_threads,
570
573
  prefetch_index_and_filter_in_cache, is_initial_load,
571
- cfd->GetLatestMutableCFOptions()->prefix_extractor,
572
- MaxFileSizeForL0MetaPin(*cfd->GetLatestMutableCFOptions()));
574
+ moptions->prefix_extractor, MaxFileSizeForL0MetaPin(*moptions),
575
+ read_options_, moptions->block_protection_bytes_per_key);
573
576
  if ((s.IsPathNotFound() || s.IsCorruption()) && no_error_if_files_missing_) {
574
577
  s = Status::OK();
575
578
  }
@@ -647,11 +650,12 @@ Status VersionEditHandler::ExtractInfoFromVersionEdit(ColumnFamilyData* cfd,
647
650
  VersionEditHandlerPointInTime::VersionEditHandlerPointInTime(
648
651
  bool read_only, std::vector<ColumnFamilyDescriptor> column_families,
649
652
  VersionSet* version_set, const std::shared_ptr<IOTracer>& io_tracer,
653
+ const ReadOptions& read_options,
650
654
  EpochNumberRequirement epoch_number_requirement)
651
655
  : VersionEditHandler(read_only, column_families, version_set,
652
656
  /*track_missing_files=*/true,
653
657
  /*no_error_if_files_missing=*/true, io_tracer,
654
- epoch_number_requirement) {}
658
+ read_options, epoch_number_requirement) {}
655
659
 
656
660
  VersionEditHandlerPointInTime::~VersionEditHandlerPointInTime() {
657
661
  for (const auto& elem : versions_) {
@@ -808,15 +812,16 @@ Status VersionEditHandlerPointInTime::MaybeCreateVersion(
808
812
  assert(builder);
809
813
  }
810
814
 
815
+ const MutableCFOptions* cf_opts_ptr = cfd->GetLatestMutableCFOptions();
811
816
  auto* version = new Version(cfd, version_set_, version_set_->file_options_,
812
- *cfd->GetLatestMutableCFOptions(), io_tracer_,
817
+ *cf_opts_ptr, io_tracer_,
813
818
  version_set_->current_version_number_++,
814
819
  epoch_number_requirement_);
815
820
  s = builder->LoadTableHandlers(
816
821
  cfd->internal_stats(),
817
822
  version_set_->db_options_->max_file_opening_threads, false, true,
818
- cfd->GetLatestMutableCFOptions()->prefix_extractor,
819
- MaxFileSizeForL0MetaPin(*cfd->GetLatestMutableCFOptions()));
823
+ cf_opts_ptr->prefix_extractor, MaxFileSizeForL0MetaPin(*cf_opts_ptr),
824
+ read_options_, cf_opts_ptr->block_protection_bytes_per_key);
820
825
  if (!s.ok()) {
821
826
  delete version;
822
827
  if (s.IsCorruption()) {
@@ -827,7 +832,7 @@ Status VersionEditHandlerPointInTime::MaybeCreateVersion(
827
832
  s = builder->SaveTo(version->storage_info());
828
833
  if (s.ok()) {
829
834
  version->PrepareAppend(
830
- *cfd->GetLatestMutableCFOptions(),
835
+ *cfd->GetLatestMutableCFOptions(), read_options_,
831
836
  !version_set_->db_options_->skip_stats_update_on_db_open);
832
837
  auto v_iter = versions_.find(cfd->GetID());
833
838
  if (v_iter != versions_.end()) {
@@ -847,7 +852,8 @@ Status VersionEditHandlerPointInTime::VerifyFile(ColumnFamilyData* cfd,
847
852
  const std::string& fpath,
848
853
  int level,
849
854
  const FileMetaData& fmeta) {
850
- return version_set_->VerifyFileMetadata(cfd, fpath, level, fmeta);
855
+ return version_set_->VerifyFileMetadata(read_options_, cfd, fpath, level,
856
+ fmeta);
851
857
  }
852
858
 
853
859
  Status VersionEditHandlerPointInTime::VerifyBlobFile(
@@ -856,7 +862,9 @@ Status VersionEditHandlerPointInTime::VerifyBlobFile(
856
862
  BlobSource* blob_source = cfd->blob_source();
857
863
  assert(blob_source);
858
864
  CacheHandleGuard<BlobFileReader> blob_file_reader;
859
- Status s = blob_source->GetBlobFileReader(blob_file_num, &blob_file_reader);
865
+
866
+ Status s = blob_source->GetBlobFileReader(read_options_, blob_file_num,
867
+ &blob_file_reader);
860
868
  if (!s.ok()) {
861
869
  return s;
862
870
  }
@@ -19,8 +19,9 @@ struct FileMetaData;
19
19
 
20
20
  class VersionEditHandlerBase {
21
21
  public:
22
- explicit VersionEditHandlerBase()
23
- : max_manifest_read_size_(std::numeric_limits<uint64_t>::max()) {}
22
+ explicit VersionEditHandlerBase(const ReadOptions& read_options)
23
+ : read_options_(read_options),
24
+ max_manifest_read_size_(std::numeric_limits<uint64_t>::max()) {}
24
25
 
25
26
  virtual ~VersionEditHandlerBase() {}
26
27
 
@@ -31,8 +32,9 @@ class VersionEditHandlerBase {
31
32
  AtomicGroupReadBuffer& GetReadBuffer() { return read_buffer_; }
32
33
 
33
34
  protected:
34
- explicit VersionEditHandlerBase(uint64_t max_read_size)
35
- : max_manifest_read_size_(max_read_size) {}
35
+ explicit VersionEditHandlerBase(const ReadOptions& read_options,
36
+ uint64_t max_read_size)
37
+ : read_options_(read_options), max_manifest_read_size_(max_read_size) {}
36
38
  virtual Status Initialize() { return Status::OK(); }
37
39
 
38
40
  virtual Status ApplyVersionEdit(VersionEdit& edit,
@@ -45,6 +47,8 @@ class VersionEditHandlerBase {
45
47
 
46
48
  Status status_;
47
49
 
50
+ const ReadOptions& read_options_;
51
+
48
52
  private:
49
53
  AtomicGroupReadBuffer read_buffer_;
50
54
  const uint64_t max_manifest_read_size_;
@@ -52,7 +56,8 @@ class VersionEditHandlerBase {
52
56
 
53
57
  class ListColumnFamiliesHandler : public VersionEditHandlerBase {
54
58
  public:
55
- ListColumnFamiliesHandler() : VersionEditHandlerBase() {}
59
+ explicit ListColumnFamiliesHandler(const ReadOptions& read_options)
60
+ : VersionEditHandlerBase(read_options) {}
56
61
 
57
62
  ~ListColumnFamiliesHandler() override {}
58
63
 
@@ -72,9 +77,9 @@ class ListColumnFamiliesHandler : public VersionEditHandlerBase {
72
77
 
73
78
  class FileChecksumRetriever : public VersionEditHandlerBase {
74
79
  public:
75
- FileChecksumRetriever(uint64_t max_read_size,
80
+ FileChecksumRetriever(const ReadOptions& read_options, uint64_t max_read_size,
76
81
  FileChecksumList& file_checksum_list)
77
- : VersionEditHandlerBase(max_read_size),
82
+ : VersionEditHandlerBase(read_options, max_read_size),
78
83
  file_checksum_list_(file_checksum_list) {}
79
84
 
80
85
  ~FileChecksumRetriever() override {}
@@ -111,12 +116,13 @@ class VersionEditHandler : public VersionEditHandlerBase {
111
116
  VersionSet* version_set, bool track_missing_files,
112
117
  bool no_error_if_files_missing,
113
118
  const std::shared_ptr<IOTracer>& io_tracer,
119
+ const ReadOptions& read_options,
114
120
  EpochNumberRequirement epoch_number_requirement =
115
121
  EpochNumberRequirement::kMustPresent)
116
- : VersionEditHandler(read_only, column_families, version_set,
117
- track_missing_files, no_error_if_files_missing,
118
- io_tracer, /*skip_load_table_files=*/false,
119
- epoch_number_requirement) {}
122
+ : VersionEditHandler(
123
+ read_only, column_families, version_set, track_missing_files,
124
+ no_error_if_files_missing, io_tracer, read_options,
125
+ /*skip_load_table_files=*/false, epoch_number_requirement) {}
120
126
 
121
127
  ~VersionEditHandler() override {}
122
128
 
@@ -137,7 +143,8 @@ class VersionEditHandler : public VersionEditHandlerBase {
137
143
  bool read_only, std::vector<ColumnFamilyDescriptor> column_families,
138
144
  VersionSet* version_set, bool track_missing_files,
139
145
  bool no_error_if_files_missing,
140
- const std::shared_ptr<IOTracer>& io_tracer, bool skip_load_table_files,
146
+ const std::shared_ptr<IOTracer>& io_tracer,
147
+ const ReadOptions& read_options, bool skip_load_table_files,
141
148
  EpochNumberRequirement epoch_number_requirement =
142
149
  EpochNumberRequirement::kMustPresent);
143
150
 
@@ -212,6 +219,7 @@ class VersionEditHandlerPointInTime : public VersionEditHandler {
212
219
  VersionEditHandlerPointInTime(
213
220
  bool read_only, std::vector<ColumnFamilyDescriptor> column_families,
214
221
  VersionSet* version_set, const std::shared_ptr<IOTracer>& io_tracer,
222
+ const ReadOptions& read_options,
215
223
  EpochNumberRequirement epoch_number_requirement =
216
224
  EpochNumberRequirement::kMustPresent);
217
225
  ~VersionEditHandlerPointInTime() override;
@@ -238,10 +246,11 @@ class ManifestTailer : public VersionEditHandlerPointInTime {
238
246
  explicit ManifestTailer(std::vector<ColumnFamilyDescriptor> column_families,
239
247
  VersionSet* version_set,
240
248
  const std::shared_ptr<IOTracer>& io_tracer,
249
+ const ReadOptions& read_options,
241
250
  EpochNumberRequirement epoch_number_requirement =
242
251
  EpochNumberRequirement::kMustPresent)
243
252
  : VersionEditHandlerPointInTime(/*read_only=*/false, column_families,
244
- version_set, io_tracer,
253
+ version_set, io_tracer, read_options,
245
254
  epoch_number_requirement),
246
255
  mode_(Mode::kRecovery) {}
247
256
 
@@ -281,12 +290,13 @@ class DumpManifestHandler : public VersionEditHandler {
281
290
  public:
282
291
  DumpManifestHandler(std::vector<ColumnFamilyDescriptor> column_families,
283
292
  VersionSet* version_set,
284
- const std::shared_ptr<IOTracer>& io_tracer, bool verbose,
285
- bool hex, bool json)
293
+ const std::shared_ptr<IOTracer>& io_tracer,
294
+ const ReadOptions& read_options, bool verbose, bool hex,
295
+ bool json)
286
296
  : VersionEditHandler(
287
297
  /*read_only=*/true, column_families, version_set,
288
298
  /*track_missing_files=*/false,
289
- /*no_error_if_files_missing=*/false, io_tracer,
299
+ /*no_error_if_files_missing=*/false, io_tracer, read_options,
290
300
  /*skip_load_table_files=*/true),
291
301
  verbose_(verbose),
292
302
  hex_(hex),
@@ -45,7 +45,7 @@ TEST_F(VersionEditTest, EncodeDecode) {
45
45
  kBig + 500 + i, kBig + 600 + i, false, Temperature::kUnknown,
46
46
  kInvalidBlobFileNumber, 888, 678,
47
47
  kBig + 300 + i /* epoch_number */, "234", "crc32c",
48
- kNullUniqueId64x2, 0);
48
+ kNullUniqueId64x2, 0, 0);
49
49
  edit.DeleteFile(4, kBig + 700 + i);
50
50
  }
51
51
 
@@ -65,24 +65,24 @@ TEST_F(VersionEditTest, EncodeDecodeNewFile4) {
65
65
  kBig + 600, true, Temperature::kUnknown, kInvalidBlobFileNumber,
66
66
  kUnknownOldestAncesterTime, kUnknownFileCreationTime,
67
67
  300 /* epoch_number */, kUnknownFileChecksum,
68
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
68
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0, 0);
69
69
  edit.AddFile(4, 301, 3, 100, InternalKey("foo", kBig + 501, kTypeValue),
70
70
  InternalKey("zoo", kBig + 601, kTypeDeletion), kBig + 501,
71
71
  kBig + 601, false, Temperature::kUnknown, kInvalidBlobFileNumber,
72
72
  kUnknownOldestAncesterTime, kUnknownFileCreationTime,
73
73
  301 /* epoch_number */, kUnknownFileChecksum,
74
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
74
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0, 0);
75
75
  edit.AddFile(5, 302, 0, 100, InternalKey("foo", kBig + 502, kTypeValue),
76
76
  InternalKey("zoo", kBig + 602, kTypeDeletion), kBig + 502,
77
77
  kBig + 602, true, Temperature::kUnknown, kInvalidBlobFileNumber,
78
78
  666, 888, 302 /* epoch_number */, kUnknownFileChecksum,
79
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
79
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0, 0);
80
80
  edit.AddFile(5, 303, 0, 100, InternalKey("foo", kBig + 503, kTypeBlobIndex),
81
81
  InternalKey("zoo", kBig + 603, kTypeBlobIndex), kBig + 503,
82
82
  kBig + 603, true, Temperature::kUnknown, 1001,
83
83
  kUnknownOldestAncesterTime, kUnknownFileCreationTime,
84
84
  303 /* epoch_number */, kUnknownFileChecksum,
85
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
85
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0, 0);
86
86
 
87
87
  edit.DeleteFile(4, 700);
88
88
 
@@ -123,12 +123,12 @@ TEST_F(VersionEditTest, ForwardCompatibleNewFile4) {
123
123
  kBig + 600, true, Temperature::kUnknown, kInvalidBlobFileNumber,
124
124
  kUnknownOldestAncesterTime, kUnknownFileCreationTime,
125
125
  300 /* epoch_number */, kUnknownFileChecksum,
126
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
126
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0, 0);
127
127
  edit.AddFile(4, 301, 3, 100, InternalKey("foo", kBig + 501, kTypeValue),
128
128
  InternalKey("zoo", kBig + 601, kTypeDeletion), kBig + 501,
129
129
  kBig + 601, false, Temperature::kUnknown, kInvalidBlobFileNumber,
130
130
  686, 868, 301 /* epoch_number */, "234", "crc32c",
131
- kNullUniqueId64x2, 0);
131
+ kNullUniqueId64x2, 0, 0);
132
132
  edit.DeleteFile(4, 700);
133
133
 
134
134
  edit.SetComparatorName("foo");
@@ -177,7 +177,7 @@ TEST_F(VersionEditTest, NewFile4NotSupportedField) {
177
177
  kBig + 600, true, Temperature::kUnknown, kInvalidBlobFileNumber,
178
178
  kUnknownOldestAncesterTime, kUnknownFileCreationTime,
179
179
  300 /* epoch_number */, kUnknownFileChecksum,
180
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
180
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0, 0);
181
181
 
182
182
  edit.SetComparatorName("foo");
183
183
  edit.SetLogNumber(kBig + 100);
@@ -208,7 +208,7 @@ TEST_F(VersionEditTest, EncodeEmptyFile) {
208
208
  Temperature::kUnknown, kInvalidBlobFileNumber,
209
209
  kUnknownOldestAncesterTime, kUnknownFileCreationTime,
210
210
  1 /*epoch_number*/, kUnknownFileChecksum,
211
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
211
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0, 0);
212
212
  std::string buffer;
213
213
  ASSERT_TRUE(!edit.EncodeTo(&buffer));
214
214
  }