@nxtedition/rocksdb 6.0.1 → 7.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (490) hide show
  1. package/BUILDING.md +12 -4
  2. package/binding.cc +421 -40
  3. package/deps/rocksdb/build_version.cc +4 -10
  4. package/deps/rocksdb/rocksdb/CMakeLists.txt +26 -3
  5. package/deps/rocksdb/rocksdb/Makefile +73 -91
  6. package/deps/rocksdb/rocksdb/TARGETS +27 -2
  7. package/deps/rocksdb/rocksdb/cache/cache_test.cc +29 -17
  8. package/deps/rocksdb/rocksdb/cache/fast_lru_cache.cc +511 -0
  9. package/deps/rocksdb/rocksdb/cache/fast_lru_cache.h +299 -0
  10. package/deps/rocksdb/rocksdb/cache/lru_cache.cc +3 -0
  11. package/deps/rocksdb/rocksdb/cache/lru_cache.h +7 -0
  12. package/deps/rocksdb/rocksdb/cmake/modules/CxxFlags.cmake +7 -0
  13. package/deps/rocksdb/rocksdb/cmake/modules/FindJeMalloc.cmake +29 -0
  14. package/deps/rocksdb/rocksdb/cmake/modules/FindNUMA.cmake +29 -0
  15. package/deps/rocksdb/rocksdb/cmake/modules/FindSnappy.cmake +29 -0
  16. package/deps/rocksdb/rocksdb/cmake/modules/FindTBB.cmake +33 -0
  17. package/deps/rocksdb/rocksdb/cmake/modules/Findgflags.cmake +29 -0
  18. package/deps/rocksdb/rocksdb/cmake/modules/Findlz4.cmake +29 -0
  19. package/deps/rocksdb/rocksdb/cmake/modules/Finduring.cmake +26 -0
  20. package/deps/rocksdb/rocksdb/cmake/modules/Findzstd.cmake +29 -0
  21. package/deps/rocksdb/rocksdb/cmake/modules/ReadVersion.cmake +10 -0
  22. package/deps/rocksdb/rocksdb/common.mk +30 -0
  23. package/deps/rocksdb/rocksdb/crash_test.mk +3 -3
  24. package/deps/rocksdb/rocksdb/db/arena_wrapped_db_iter.cc +1 -1
  25. package/deps/rocksdb/rocksdb/db/blob/blob_index.h +3 -3
  26. package/deps/rocksdb/rocksdb/db/blob/db_blob_index_test.cc +7 -7
  27. package/deps/rocksdb/rocksdb/db/builder.cc +22 -7
  28. package/deps/rocksdb/rocksdb/db/c.cc +71 -0
  29. package/deps/rocksdb/rocksdb/db/c_test.c +28 -2
  30. package/deps/rocksdb/rocksdb/db/column_family.cc +12 -5
  31. package/deps/rocksdb/rocksdb/db/column_family_test.cc +23 -22
  32. package/deps/rocksdb/rocksdb/db/compact_files_test.cc +11 -11
  33. package/deps/rocksdb/rocksdb/db/compaction/compaction.cc +2 -2
  34. package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.cc +36 -10
  35. package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.h +4 -1
  36. package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator_test.cc +3 -2
  37. package/deps/rocksdb/rocksdb/db/compaction/compaction_job.cc +54 -16
  38. package/deps/rocksdb/rocksdb/db/compaction/compaction_job.h +14 -2
  39. package/deps/rocksdb/rocksdb/db/compaction/compaction_job_stats_test.cc +3 -3
  40. package/deps/rocksdb/rocksdb/db/compaction/compaction_job_test.cc +85 -18
  41. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.cc +7 -7
  42. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.cc +1 -1
  43. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_test.cc +23 -22
  44. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.cc +1 -1
  45. package/deps/rocksdb/rocksdb/db/compaction/compaction_service_test.cc +151 -32
  46. package/deps/rocksdb/rocksdb/db/comparator_db_test.cc +1 -1
  47. package/deps/rocksdb/rocksdb/db/convenience.cc +8 -6
  48. package/deps/rocksdb/rocksdb/db/corruption_test.cc +209 -38
  49. package/deps/rocksdb/rocksdb/db/cuckoo_table_db_test.cc +2 -2
  50. package/deps/rocksdb/rocksdb/db/db_basic_test.cc +404 -32
  51. package/deps/rocksdb/rocksdb/db/db_block_cache_test.cc +28 -25
  52. package/deps/rocksdb/rocksdb/db/db_bloom_filter_test.cc +85 -138
  53. package/deps/rocksdb/rocksdb/db/db_compaction_filter_test.cc +68 -3
  54. package/deps/rocksdb/rocksdb/db/db_compaction_test.cc +38 -13
  55. package/deps/rocksdb/rocksdb/db/db_filesnapshot.cc +1 -1
  56. package/deps/rocksdb/rocksdb/db/db_flush_test.cc +1 -1
  57. package/deps/rocksdb/rocksdb/db/db_impl/db_impl.cc +11 -20
  58. package/deps/rocksdb/rocksdb/db/db_impl/db_impl.h +15 -1
  59. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_compaction_flush.cc +12 -9
  60. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_debug.cc +5 -4
  61. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_experimental.cc +1 -1
  62. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_files.cc +2 -2
  63. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_open.cc +42 -10
  64. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_readonly.cc +54 -23
  65. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_readonly.h +3 -0
  66. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_secondary.cc +14 -4
  67. package/deps/rocksdb/rocksdb/db/db_info_dumper.cc +26 -18
  68. package/deps/rocksdb/rocksdb/db/db_iter_stress_test.cc +8 -7
  69. package/deps/rocksdb/rocksdb/db/db_iter_test.cc +8 -8
  70. package/deps/rocksdb/rocksdb/db/db_iterator_test.cc +6 -3
  71. package/deps/rocksdb/rocksdb/db/db_kv_checksum_test.cc +2 -2
  72. package/deps/rocksdb/rocksdb/db/db_log_iter_test.cc +6 -6
  73. package/deps/rocksdb/rocksdb/db/db_memtable_test.cc +2 -2
  74. package/deps/rocksdb/rocksdb/db/db_options_test.cc +28 -12
  75. package/deps/rocksdb/rocksdb/db/db_properties_test.cc +16 -15
  76. package/deps/rocksdb/rocksdb/db/db_range_del_test.cc +6 -4
  77. package/deps/rocksdb/rocksdb/db/db_readonly_with_timestamp_test.cc +331 -0
  78. package/deps/rocksdb/rocksdb/db/db_secondary_test.cc +11 -6
  79. package/deps/rocksdb/rocksdb/db/db_sst_test.cc +68 -7
  80. package/deps/rocksdb/rocksdb/db/db_table_properties_test.cc +6 -5
  81. package/deps/rocksdb/rocksdb/db/db_test.cc +60 -42
  82. package/deps/rocksdb/rocksdb/db/db_test2.cc +244 -111
  83. package/deps/rocksdb/rocksdb/db/db_test_util.cc +101 -19
  84. package/deps/rocksdb/rocksdb/db/db_test_util.h +52 -2
  85. package/deps/rocksdb/rocksdb/db/db_universal_compaction_test.cc +1 -1
  86. package/deps/rocksdb/rocksdb/db/db_wal_test.cc +7 -7
  87. package/deps/rocksdb/rocksdb/db/db_with_timestamp_basic_test.cc +5 -175
  88. package/deps/rocksdb/rocksdb/db/db_with_timestamp_test_util.cc +96 -0
  89. package/deps/rocksdb/rocksdb/db/db_with_timestamp_test_util.h +126 -0
  90. package/deps/rocksdb/rocksdb/db/db_write_test.cc +6 -6
  91. package/deps/rocksdb/rocksdb/db/dbformat.h +2 -1
  92. package/deps/rocksdb/rocksdb/db/deletefile_test.cc +1 -1
  93. package/deps/rocksdb/rocksdb/db/error_handler_fs_test.cc +8 -8
  94. package/deps/rocksdb/rocksdb/db/experimental.cc +1 -1
  95. package/deps/rocksdb/rocksdb/db/external_sst_file_basic_test.cc +91 -12
  96. package/deps/rocksdb/rocksdb/db/external_sst_file_ingestion_job.cc +16 -2
  97. package/deps/rocksdb/rocksdb/db/external_sst_file_ingestion_job.h +2 -0
  98. package/deps/rocksdb/rocksdb/db/external_sst_file_test.cc +7 -7
  99. package/deps/rocksdb/rocksdb/db/file_indexer.h +1 -4
  100. package/deps/rocksdb/rocksdb/db/flush_job.cc +28 -15
  101. package/deps/rocksdb/rocksdb/db/flush_job.h +4 -0
  102. package/deps/rocksdb/rocksdb/db/flush_job_test.cc +98 -30
  103. package/deps/rocksdb/rocksdb/db/forward_iterator.cc +1 -1
  104. package/deps/rocksdb/rocksdb/db/import_column_family_job.cc +14 -1
  105. package/deps/rocksdb/rocksdb/db/import_column_family_test.cc +6 -0
  106. package/deps/rocksdb/rocksdb/db/internal_stats.cc +12 -12
  107. package/deps/rocksdb/rocksdb/db/listener_test.cc +4 -3
  108. package/deps/rocksdb/rocksdb/db/memtable.cc +2 -2
  109. package/deps/rocksdb/rocksdb/db/memtable_list.h +1 -1
  110. package/deps/rocksdb/rocksdb/db/memtable_list_test.cc +37 -25
  111. package/deps/rocksdb/rocksdb/db/obsolete_files_test.cc +1 -1
  112. package/deps/rocksdb/rocksdb/db/perf_context_test.cc +18 -18
  113. package/deps/rocksdb/rocksdb/db/plain_table_db_test.cc +6 -6
  114. package/deps/rocksdb/rocksdb/db/prefix_test.cc +1 -1
  115. package/deps/rocksdb/rocksdb/db/repair.cc +13 -2
  116. package/deps/rocksdb/rocksdb/db/repair_test.cc +37 -15
  117. package/deps/rocksdb/rocksdb/db/snapshot_checker.h +1 -2
  118. package/deps/rocksdb/rocksdb/db/snapshot_impl.h +3 -1
  119. package/deps/rocksdb/rocksdb/db/table_cache.cc +20 -130
  120. package/deps/rocksdb/rocksdb/db/table_cache.h +3 -2
  121. package/deps/rocksdb/rocksdb/db/table_cache_sync_and_async.h +140 -0
  122. package/deps/rocksdb/rocksdb/db/version_builder.cc +1 -1
  123. package/deps/rocksdb/rocksdb/db/version_builder_test.cc +133 -133
  124. package/deps/rocksdb/rocksdb/db/version_edit.cc +22 -2
  125. package/deps/rocksdb/rocksdb/db/version_edit.h +13 -4
  126. package/deps/rocksdb/rocksdb/db/version_edit_test.cc +14 -14
  127. package/deps/rocksdb/rocksdb/db/version_set.cc +207 -214
  128. package/deps/rocksdb/rocksdb/db/version_set.h +14 -3
  129. package/deps/rocksdb/rocksdb/db/version_set_sync_and_async.h +154 -0
  130. package/deps/rocksdb/rocksdb/db/version_set_test.cc +10 -9
  131. package/deps/rocksdb/rocksdb/db/wal_edit.h +2 -1
  132. package/deps/rocksdb/rocksdb/db/wal_manager.cc +2 -3
  133. package/deps/rocksdb/rocksdb/db/wal_manager_test.cc +1 -1
  134. package/deps/rocksdb/rocksdb/db/write_batch.cc +178 -30
  135. package/deps/rocksdb/rocksdb/db/write_batch_test.cc +6 -6
  136. package/deps/rocksdb/rocksdb/db/write_controller.h +1 -1
  137. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_common.cc +0 -2
  138. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_common.h +9 -6
  139. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_compaction_filter.h +2 -1
  140. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_driver.cc +4 -3
  141. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_gflags.cc +44 -6
  142. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_listener.cc +4 -1
  143. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_shared_state.cc +0 -10
  144. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_shared_state.h +45 -42
  145. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.cc +374 -275
  146. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.h +53 -3
  147. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_tool.cc +0 -12
  148. package/deps/rocksdb/rocksdb/db_stress_tool/expected_state.cc +13 -11
  149. package/deps/rocksdb/rocksdb/db_stress_tool/multi_ops_txns_stress.cc +276 -109
  150. package/deps/rocksdb/rocksdb/db_stress_tool/multi_ops_txns_stress.h +63 -0
  151. package/deps/rocksdb/rocksdb/db_stress_tool/no_batched_ops_stress.cc +45 -54
  152. package/deps/rocksdb/rocksdb/env/composite_env.cc +87 -14
  153. package/deps/rocksdb/rocksdb/env/env.cc +0 -60
  154. package/deps/rocksdb/rocksdb/env/env_encryption.cc +9 -0
  155. package/deps/rocksdb/rocksdb/env/env_encryption_ctr.h +1 -1
  156. package/deps/rocksdb/rocksdb/env/env_posix.cc +6 -5
  157. package/deps/rocksdb/rocksdb/env/env_test.cc +18 -5
  158. package/deps/rocksdb/rocksdb/env/fs_posix.cc +17 -12
  159. package/deps/rocksdb/rocksdb/env/io_posix.cc +39 -37
  160. package/deps/rocksdb/rocksdb/file/delete_scheduler_test.cc +9 -9
  161. package/deps/rocksdb/rocksdb/file/file_prefetch_buffer.cc +159 -65
  162. package/deps/rocksdb/rocksdb/file/file_prefetch_buffer.h +44 -22
  163. package/deps/rocksdb/rocksdb/file/file_util.h +2 -0
  164. package/deps/rocksdb/rocksdb/file/prefetch_test.cc +142 -17
  165. package/deps/rocksdb/rocksdb/file/random_access_file_reader.h +5 -2
  166. package/deps/rocksdb/rocksdb/file/sequence_file_reader.cc +7 -0
  167. package/deps/rocksdb/rocksdb/file/writable_file_writer.cc +60 -40
  168. package/deps/rocksdb/rocksdb/file/writable_file_writer.h +1 -0
  169. package/deps/rocksdb/rocksdb/include/rocksdb/advanced_options.h +23 -5
  170. package/deps/rocksdb/rocksdb/include/rocksdb/c.h +49 -1
  171. package/deps/rocksdb/rocksdb/include/rocksdb/cache.h +5 -5
  172. package/deps/rocksdb/rocksdb/include/rocksdb/cleanable.h +59 -2
  173. package/deps/rocksdb/rocksdb/include/rocksdb/compaction_filter.h +1 -0
  174. package/deps/rocksdb/rocksdb/include/rocksdb/convenience.h +2 -1
  175. package/deps/rocksdb/rocksdb/include/rocksdb/db.h +46 -44
  176. package/deps/rocksdb/rocksdb/include/rocksdb/env.h +1 -1
  177. package/deps/rocksdb/rocksdb/include/rocksdb/file_system.h +2 -0
  178. package/deps/rocksdb/rocksdb/include/rocksdb/iostats_context.h +2 -4
  179. package/deps/rocksdb/rocksdb/include/rocksdb/memtablerep.h +3 -0
  180. package/deps/rocksdb/rocksdb/include/rocksdb/options.h +45 -3
  181. package/deps/rocksdb/rocksdb/include/rocksdb/perf_context.h +2 -0
  182. package/deps/rocksdb/rocksdb/include/rocksdb/snapshot.h +4 -1
  183. package/deps/rocksdb/rocksdb/include/rocksdb/statistics.h +3 -0
  184. package/deps/rocksdb/rocksdb/include/rocksdb/table.h +91 -40
  185. package/deps/rocksdb/rocksdb/include/rocksdb/thread_status.h +1 -2
  186. package/deps/rocksdb/rocksdb/include/rocksdb/unique_id.h +22 -13
  187. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/customizable_util.h +9 -0
  188. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/ldb_cmd.h +4 -0
  189. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/object_registry.h +25 -0
  190. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/options_type.h +378 -103
  191. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/transaction_db.h +14 -0
  192. package/deps/rocksdb/rocksdb/include/rocksdb/version.h +2 -2
  193. package/deps/rocksdb/rocksdb/include/rocksdb/write_batch.h +18 -4
  194. package/deps/rocksdb/rocksdb/memory/arena.h +1 -1
  195. package/deps/rocksdb/rocksdb/memory/concurrent_arena.cc +1 -5
  196. package/deps/rocksdb/rocksdb/memory/concurrent_arena.h +1 -5
  197. package/deps/rocksdb/rocksdb/memory/jemalloc_nodump_allocator.cc +6 -8
  198. package/deps/rocksdb/rocksdb/memtable/skiplistrep.cc +1 -1
  199. package/deps/rocksdb/rocksdb/memtable/write_buffer_manager.cc +1 -1
  200. package/deps/rocksdb/rocksdb/memtable/write_buffer_manager_test.cc +5 -3
  201. package/deps/rocksdb/rocksdb/microbench/db_basic_bench.cc +266 -45
  202. package/deps/rocksdb/rocksdb/monitoring/histogram.cc +2 -1
  203. package/deps/rocksdb/rocksdb/monitoring/iostats_context.cc +1 -4
  204. package/deps/rocksdb/rocksdb/monitoring/iostats_context_imp.h +4 -4
  205. package/deps/rocksdb/rocksdb/monitoring/perf_context.cc +7 -8
  206. package/deps/rocksdb/rocksdb/monitoring/perf_context_imp.h +2 -2
  207. package/deps/rocksdb/rocksdb/monitoring/perf_level.cc +1 -5
  208. package/deps/rocksdb/rocksdb/monitoring/perf_level_imp.h +1 -5
  209. package/deps/rocksdb/rocksdb/monitoring/persistent_stats_history.cc +2 -2
  210. package/deps/rocksdb/rocksdb/monitoring/statistics.cc +1 -1
  211. package/deps/rocksdb/rocksdb/monitoring/thread_status_updater.cc +2 -1
  212. package/deps/rocksdb/rocksdb/monitoring/thread_status_updater.h +1 -1
  213. package/deps/rocksdb/rocksdb/monitoring/thread_status_util.cc +3 -3
  214. package/deps/rocksdb/rocksdb/monitoring/thread_status_util.h +2 -2
  215. package/deps/rocksdb/rocksdb/options/cf_options.cc +47 -38
  216. package/deps/rocksdb/rocksdb/options/configurable.cc +9 -27
  217. package/deps/rocksdb/rocksdb/options/configurable_test.cc +1 -1
  218. package/deps/rocksdb/rocksdb/options/customizable.cc +3 -1
  219. package/deps/rocksdb/rocksdb/options/customizable_test.cc +379 -318
  220. package/deps/rocksdb/rocksdb/options/db_options.cc +46 -17
  221. package/deps/rocksdb/rocksdb/options/db_options.h +2 -0
  222. package/deps/rocksdb/rocksdb/options/options.cc +7 -0
  223. package/deps/rocksdb/rocksdb/options/options_helper.cc +86 -39
  224. package/deps/rocksdb/rocksdb/options/options_parser.cc +10 -10
  225. package/deps/rocksdb/rocksdb/options/options_settable_test.cc +12 -7
  226. package/deps/rocksdb/rocksdb/options/options_test.cc +222 -68
  227. package/deps/rocksdb/rocksdb/port/port_posix.h +0 -15
  228. package/deps/rocksdb/rocksdb/port/win/env_win.cc +5 -4
  229. package/deps/rocksdb/rocksdb/port/win/env_win.h +2 -2
  230. package/deps/rocksdb/rocksdb/port/win/port_win.h +0 -31
  231. package/deps/rocksdb/rocksdb/rocksdb.pc.in +11 -0
  232. package/deps/rocksdb/rocksdb/src.mk +6 -1
  233. package/deps/rocksdb/rocksdb/table/block_based/binary_search_index_reader.cc +2 -1
  234. package/deps/rocksdb/rocksdb/table/block_based/block.cc +4 -2
  235. package/deps/rocksdb/rocksdb/table/block_based/block.h +21 -25
  236. package/deps/rocksdb/rocksdb/table/block_based/block_based_filter_block.cc +3 -4
  237. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_builder.cc +23 -8
  238. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_factory.cc +52 -15
  239. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_iterator.cc +81 -7
  240. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_iterator.h +8 -2
  241. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.cc +94 -726
  242. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.h +21 -15
  243. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_impl.h +9 -3
  244. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_sync_and_async.h +754 -0
  245. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_test.cc +44 -73
  246. package/deps/rocksdb/rocksdb/table/block_based/block_prefetcher.cc +15 -5
  247. package/deps/rocksdb/rocksdb/table/block_based/block_prefetcher.h +2 -1
  248. package/deps/rocksdb/rocksdb/table/block_based/filter_block.h +2 -11
  249. package/deps/rocksdb/rocksdb/table/block_based/filter_block_reader_common.cc +59 -1
  250. package/deps/rocksdb/rocksdb/table/block_based/filter_block_reader_common.h +18 -0
  251. package/deps/rocksdb/rocksdb/table/block_based/filter_policy.cc +33 -17
  252. package/deps/rocksdb/rocksdb/table/block_based/full_filter_block.cc +0 -61
  253. package/deps/rocksdb/rocksdb/table/block_based/full_filter_block.h +0 -13
  254. package/deps/rocksdb/rocksdb/table/block_based/hash_index_reader.cc +2 -1
  255. package/deps/rocksdb/rocksdb/table/block_based/index_builder.h +2 -2
  256. package/deps/rocksdb/rocksdb/table/block_based/index_reader_common.cc +3 -2
  257. package/deps/rocksdb/rocksdb/table/block_based/index_reader_common.h +2 -1
  258. package/deps/rocksdb/rocksdb/table/block_based/partitioned_filter_block.cc +3 -2
  259. package/deps/rocksdb/rocksdb/table/block_based/partitioned_index_iterator.cc +4 -3
  260. package/deps/rocksdb/rocksdb/table/block_based/partitioned_index_reader.cc +8 -4
  261. package/deps/rocksdb/rocksdb/table/block_based/reader_common.cc +4 -4
  262. package/deps/rocksdb/rocksdb/table/block_based/uncompression_dict_reader.cc +2 -1
  263. package/deps/rocksdb/rocksdb/table/block_fetcher.cc +65 -7
  264. package/deps/rocksdb/rocksdb/table/block_fetcher.h +2 -0
  265. package/deps/rocksdb/rocksdb/table/cleanable_test.cc +113 -0
  266. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder.cc +1 -1
  267. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_builder.h +1 -1
  268. package/deps/rocksdb/rocksdb/table/cuckoo/cuckoo_table_reader_test.cc +1 -1
  269. package/deps/rocksdb/rocksdb/table/format.cc +22 -20
  270. package/deps/rocksdb/rocksdb/table/iterator.cc +1 -81
  271. package/deps/rocksdb/rocksdb/table/merging_iterator.cc +39 -0
  272. package/deps/rocksdb/rocksdb/table/meta_blocks.cc +2 -2
  273. package/deps/rocksdb/rocksdb/table/multiget_context.h +60 -13
  274. package/deps/rocksdb/rocksdb/table/persistent_cache_options.h +0 -3
  275. package/deps/rocksdb/rocksdb/table/plain/plain_table_factory.cc +12 -1
  276. package/deps/rocksdb/rocksdb/table/plain/plain_table_reader.cc +4 -4
  277. package/deps/rocksdb/rocksdb/table/sst_file_dumper.cc +2 -1
  278. package/deps/rocksdb/rocksdb/table/sst_file_dumper.h +1 -1
  279. package/deps/rocksdb/rocksdb/table/sst_file_writer_collectors.h +1 -1
  280. package/deps/rocksdb/rocksdb/table/table_properties.cc +3 -5
  281. package/deps/rocksdb/rocksdb/table/table_reader.h +13 -0
  282. package/deps/rocksdb/rocksdb/table/table_test.cc +202 -78
  283. package/deps/rocksdb/rocksdb/table/unique_id.cc +84 -25
  284. package/deps/rocksdb/rocksdb/table/unique_id_impl.h +37 -4
  285. package/deps/rocksdb/rocksdb/test_util/testutil.cc +3 -1
  286. package/deps/rocksdb/rocksdb/test_util/testutil.h +11 -8
  287. package/deps/rocksdb/rocksdb/test_util/transaction_test_util.cc +8 -4
  288. package/deps/rocksdb/rocksdb/test_util/transaction_test_util.h +17 -0
  289. package/deps/rocksdb/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.cc +11 -9
  290. package/deps/rocksdb/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer_test.cc +3 -3
  291. package/deps/rocksdb/rocksdb/tools/db_bench_tool.cc +277 -105
  292. package/deps/rocksdb/rocksdb/tools/db_sanity_test.cc +4 -4
  293. package/deps/rocksdb/rocksdb/tools/ldb_cmd.cc +186 -42
  294. package/deps/rocksdb/rocksdb/tools/ldb_cmd_impl.h +75 -49
  295. package/deps/rocksdb/rocksdb/tools/ldb_cmd_test.cc +9 -8
  296. package/deps/rocksdb/rocksdb/tools/ldb_tool.cc +4 -1
  297. package/deps/rocksdb/rocksdb/tools/reduce_levels_test.cc +2 -2
  298. package/deps/rocksdb/rocksdb/tools/sst_dump_tool.cc +26 -4
  299. package/deps/rocksdb/rocksdb/tools/trace_analyzer_tool.cc +1 -1
  300. package/deps/rocksdb/rocksdb/trace_replay/block_cache_tracer.h +1 -1
  301. package/deps/rocksdb/rocksdb/util/async_file_reader.cc +72 -0
  302. package/deps/rocksdb/rocksdb/util/async_file_reader.h +144 -0
  303. package/deps/rocksdb/rocksdb/util/autovector_test.cc +4 -4
  304. package/deps/rocksdb/rocksdb/util/bloom_test.cc +14 -8
  305. package/deps/rocksdb/rocksdb/util/build_version.cc.in +5 -6
  306. package/deps/rocksdb/rocksdb/util/cleanable.cc +180 -0
  307. package/deps/rocksdb/rocksdb/util/comparator.cc +5 -3
  308. package/deps/rocksdb/rocksdb/util/compression.h +56 -7
  309. package/deps/rocksdb/rocksdb/util/coro_utils.h +111 -0
  310. package/deps/rocksdb/rocksdb/util/file_reader_writer_test.cc +148 -0
  311. package/deps/rocksdb/rocksdb/util/filelock_test.cc +2 -2
  312. package/deps/rocksdb/rocksdb/util/filter_bench.cc +12 -4
  313. package/deps/rocksdb/rocksdb/util/heap.h +5 -3
  314. package/deps/rocksdb/rocksdb/util/random.cc +1 -5
  315. package/deps/rocksdb/rocksdb/util/rate_limiter.cc +12 -9
  316. package/deps/rocksdb/rocksdb/util/rate_limiter_test.cc +1 -1
  317. package/deps/rocksdb/rocksdb/util/ribbon_alg.h +1 -1
  318. package/deps/rocksdb/rocksdb/util/ribbon_test.cc +2 -4
  319. package/deps/rocksdb/rocksdb/util/single_thread_executor.h +55 -0
  320. package/deps/rocksdb/rocksdb/util/slice.cc +8 -9
  321. package/deps/rocksdb/rocksdb/util/string_util.cc +3 -2
  322. package/deps/rocksdb/rocksdb/util/string_util.h +0 -13
  323. package/deps/rocksdb/rocksdb/util/thread_local.cc +4 -23
  324. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine.cc +99 -22
  325. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_impl.h +7 -0
  326. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_test.cc +102 -59
  327. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_db_test.cc +38 -36
  328. package/deps/rocksdb/rocksdb/utilities/blob_db/blob_dump_tool.cc +2 -2
  329. package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.cc +28 -0
  330. package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.h +3 -0
  331. package/deps/rocksdb/rocksdb/utilities/memory/memory_test.cc +1 -1
  332. package/deps/rocksdb/rocksdb/utilities/object_registry.cc +71 -0
  333. package/deps/rocksdb/rocksdb/utilities/object_registry_test.cc +71 -0
  334. package/deps/rocksdb/rocksdb/utilities/options/options_util_test.cc +1 -1
  335. package/deps/rocksdb/rocksdb/utilities/simulator_cache/sim_cache_test.cc +5 -5
  336. package/deps/rocksdb/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.cc +3 -3
  337. package/deps/rocksdb/rocksdb/utilities/transactions/lock/point/point_lock_tracker.cc +0 -13
  338. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_locking_test.cc +40 -0
  339. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/lock_request.cc +10 -8
  340. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/lock_request.h +4 -2
  341. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_time.h +17 -0
  342. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_manager.cc +7 -7
  343. package/deps/rocksdb/rocksdb/utilities/transactions/pessimistic_transaction.cc +8 -1
  344. package/deps/rocksdb/rocksdb/utilities/transactions/snapshot_checker.cc +5 -1
  345. package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.cc +21 -15
  346. package/deps/rocksdb/rocksdb/utilities/transactions/transaction_util.cc +2 -2
  347. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_transaction_test.cc +69 -11
  348. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn.cc +22 -9
  349. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn_db.cc +26 -5
  350. package/deps/rocksdb/rocksdb/utilities/transactions/write_prepared_txn_db.h +17 -4
  351. package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_transaction_test.cc +19 -16
  352. package/deps/rocksdb/rocksdb/utilities/transactions/write_unprepared_txn.cc +7 -3
  353. package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index.cc +3 -2
  354. package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.cc +2 -2
  355. package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.h +2 -2
  356. package/deps/rocksdb/rocksdb/utilities/write_batch_with_index/write_batch_with_index_test.cc +6 -6
  357. package/deps/rocksdb/rocksdb.gyp +20 -13
  358. package/index.js +187 -3
  359. package/iterator.js +1 -0
  360. package/package-lock.json +23687 -0
  361. package/package.json +2 -30
  362. package/prebuilds/darwin-arm64/node.napi.node +0 -0
  363. package/snapshot.js +23 -0
  364. package/deps/liburing/liburing/README +0 -46
  365. package/deps/liburing/liburing/test/232c93d07b74-test.c +0 -305
  366. package/deps/liburing/liburing/test/35fa71a030ca-test.c +0 -329
  367. package/deps/liburing/liburing/test/500f9fbadef8-test.c +0 -89
  368. package/deps/liburing/liburing/test/7ad0e4b2f83c-test.c +0 -93
  369. package/deps/liburing/liburing/test/8a9973408177-test.c +0 -106
  370. package/deps/liburing/liburing/test/917257daa0fe-test.c +0 -53
  371. package/deps/liburing/liburing/test/Makefile +0 -312
  372. package/deps/liburing/liburing/test/a0908ae19763-test.c +0 -58
  373. package/deps/liburing/liburing/test/a4c0b3decb33-test.c +0 -180
  374. package/deps/liburing/liburing/test/accept-link.c +0 -251
  375. package/deps/liburing/liburing/test/accept-reuse.c +0 -164
  376. package/deps/liburing/liburing/test/accept-test.c +0 -79
  377. package/deps/liburing/liburing/test/accept.c +0 -476
  378. package/deps/liburing/liburing/test/across-fork.c +0 -283
  379. package/deps/liburing/liburing/test/b19062a56726-test.c +0 -53
  380. package/deps/liburing/liburing/test/b5837bd5311d-test.c +0 -77
  381. package/deps/liburing/liburing/test/ce593a6c480a-test.c +0 -135
  382. package/deps/liburing/liburing/test/close-opath.c +0 -122
  383. package/deps/liburing/liburing/test/config +0 -10
  384. package/deps/liburing/liburing/test/connect.c +0 -398
  385. package/deps/liburing/liburing/test/cq-full.c +0 -96
  386. package/deps/liburing/liburing/test/cq-overflow.c +0 -294
  387. package/deps/liburing/liburing/test/cq-peek-batch.c +0 -102
  388. package/deps/liburing/liburing/test/cq-ready.c +0 -94
  389. package/deps/liburing/liburing/test/cq-size.c +0 -58
  390. package/deps/liburing/liburing/test/d4ae271dfaae-test.c +0 -96
  391. package/deps/liburing/liburing/test/d77a67ed5f27-test.c +0 -65
  392. package/deps/liburing/liburing/test/defer.c +0 -307
  393. package/deps/liburing/liburing/test/double-poll-crash.c +0 -186
  394. package/deps/liburing/liburing/test/eeed8b54e0df-test.c +0 -114
  395. package/deps/liburing/liburing/test/empty-eownerdead.c +0 -42
  396. package/deps/liburing/liburing/test/eventfd-disable.c +0 -151
  397. package/deps/liburing/liburing/test/eventfd-ring.c +0 -97
  398. package/deps/liburing/liburing/test/eventfd.c +0 -112
  399. package/deps/liburing/liburing/test/fadvise.c +0 -202
  400. package/deps/liburing/liburing/test/fallocate.c +0 -249
  401. package/deps/liburing/liburing/test/fc2a85cb02ef-test.c +0 -138
  402. package/deps/liburing/liburing/test/file-register.c +0 -843
  403. package/deps/liburing/liburing/test/file-update.c +0 -173
  404. package/deps/liburing/liburing/test/files-exit-hang-poll.c +0 -128
  405. package/deps/liburing/liburing/test/files-exit-hang-timeout.c +0 -134
  406. package/deps/liburing/liburing/test/fixed-link.c +0 -90
  407. package/deps/liburing/liburing/test/fsync.c +0 -224
  408. package/deps/liburing/liburing/test/hardlink.c +0 -136
  409. package/deps/liburing/liburing/test/helpers.c +0 -135
  410. package/deps/liburing/liburing/test/helpers.h +0 -67
  411. package/deps/liburing/liburing/test/io-cancel.c +0 -537
  412. package/deps/liburing/liburing/test/io_uring_enter.c +0 -296
  413. package/deps/liburing/liburing/test/io_uring_register.c +0 -664
  414. package/deps/liburing/liburing/test/io_uring_setup.c +0 -192
  415. package/deps/liburing/liburing/test/iopoll.c +0 -366
  416. package/deps/liburing/liburing/test/lfs-openat-write.c +0 -117
  417. package/deps/liburing/liburing/test/lfs-openat.c +0 -273
  418. package/deps/liburing/liburing/test/link-timeout.c +0 -1107
  419. package/deps/liburing/liburing/test/link.c +0 -496
  420. package/deps/liburing/liburing/test/link_drain.c +0 -229
  421. package/deps/liburing/liburing/test/madvise.c +0 -195
  422. package/deps/liburing/liburing/test/mkdir.c +0 -108
  423. package/deps/liburing/liburing/test/multicqes_drain.c +0 -383
  424. package/deps/liburing/liburing/test/nop-all-sizes.c +0 -107
  425. package/deps/liburing/liburing/test/nop.c +0 -115
  426. package/deps/liburing/liburing/test/open-close.c +0 -146
  427. package/deps/liburing/liburing/test/openat2.c +0 -240
  428. package/deps/liburing/liburing/test/personality.c +0 -204
  429. package/deps/liburing/liburing/test/pipe-eof.c +0 -81
  430. package/deps/liburing/liburing/test/pipe-reuse.c +0 -105
  431. package/deps/liburing/liburing/test/poll-cancel-ton.c +0 -139
  432. package/deps/liburing/liburing/test/poll-cancel.c +0 -135
  433. package/deps/liburing/liburing/test/poll-link.c +0 -227
  434. package/deps/liburing/liburing/test/poll-many.c +0 -208
  435. package/deps/liburing/liburing/test/poll-mshot-update.c +0 -273
  436. package/deps/liburing/liburing/test/poll-ring.c +0 -48
  437. package/deps/liburing/liburing/test/poll-v-poll.c +0 -353
  438. package/deps/liburing/liburing/test/poll.c +0 -109
  439. package/deps/liburing/liburing/test/probe.c +0 -137
  440. package/deps/liburing/liburing/test/read-write.c +0 -876
  441. package/deps/liburing/liburing/test/register-restrictions.c +0 -633
  442. package/deps/liburing/liburing/test/rename.c +0 -134
  443. package/deps/liburing/liburing/test/ring-leak.c +0 -173
  444. package/deps/liburing/liburing/test/ring-leak2.c +0 -249
  445. package/deps/liburing/liburing/test/rsrc_tags.c +0 -449
  446. package/deps/liburing/liburing/test/runtests-loop.sh +0 -16
  447. package/deps/liburing/liburing/test/runtests.sh +0 -170
  448. package/deps/liburing/liburing/test/rw_merge_test.c +0 -97
  449. package/deps/liburing/liburing/test/self.c +0 -91
  450. package/deps/liburing/liburing/test/send_recv.c +0 -291
  451. package/deps/liburing/liburing/test/send_recvmsg.c +0 -345
  452. package/deps/liburing/liburing/test/sendmsg_fs_cve.c +0 -198
  453. package/deps/liburing/liburing/test/shared-wq.c +0 -84
  454. package/deps/liburing/liburing/test/short-read.c +0 -75
  455. package/deps/liburing/liburing/test/shutdown.c +0 -163
  456. package/deps/liburing/liburing/test/sigfd-deadlock.c +0 -74
  457. package/deps/liburing/liburing/test/socket-rw-eagain.c +0 -156
  458. package/deps/liburing/liburing/test/socket-rw.c +0 -147
  459. package/deps/liburing/liburing/test/splice.c +0 -511
  460. package/deps/liburing/liburing/test/sq-full-cpp.cc +0 -45
  461. package/deps/liburing/liburing/test/sq-full.c +0 -45
  462. package/deps/liburing/liburing/test/sq-poll-dup.c +0 -200
  463. package/deps/liburing/liburing/test/sq-poll-kthread.c +0 -168
  464. package/deps/liburing/liburing/test/sq-poll-share.c +0 -137
  465. package/deps/liburing/liburing/test/sq-space_left.c +0 -159
  466. package/deps/liburing/liburing/test/sqpoll-cancel-hang.c +0 -159
  467. package/deps/liburing/liburing/test/sqpoll-disable-exit.c +0 -195
  468. package/deps/liburing/liburing/test/sqpoll-exit-hang.c +0 -77
  469. package/deps/liburing/liburing/test/sqpoll-sleep.c +0 -68
  470. package/deps/liburing/liburing/test/statx.c +0 -172
  471. package/deps/liburing/liburing/test/stdout.c +0 -232
  472. package/deps/liburing/liburing/test/submit-link-fail.c +0 -154
  473. package/deps/liburing/liburing/test/submit-reuse.c +0 -239
  474. package/deps/liburing/liburing/test/symlink.c +0 -116
  475. package/deps/liburing/liburing/test/teardowns.c +0 -58
  476. package/deps/liburing/liburing/test/thread-exit.c +0 -131
  477. package/deps/liburing/liburing/test/timeout-new.c +0 -246
  478. package/deps/liburing/liburing/test/timeout-overflow.c +0 -204
  479. package/deps/liburing/liburing/test/timeout.c +0 -1354
  480. package/deps/liburing/liburing/test/unlink.c +0 -111
  481. package/deps/liburing/liburing/test/wakeup-hang.c +0 -162
  482. package/deps/rocksdb/rocksdb/README.md +0 -32
  483. package/deps/rocksdb/rocksdb/microbench/README.md +0 -60
  484. package/deps/rocksdb/rocksdb/plugin/README.md +0 -43
  485. package/deps/rocksdb/rocksdb/port/README +0 -10
  486. package/deps/rocksdb/rocksdb/python.mk +0 -9
  487. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/README +0 -13
  488. package/prebuilds/darwin-x64/node.napi.node +0 -0
  489. package/prebuilds/linux-arm64/node.napi.node +0 -0
  490. package/prebuilds/linux-x64/node.napi.node +0 -0
@@ -84,7 +84,8 @@ TEST_F(DBTablePropertiesTest, GetPropertiesOfAllTablesTest) {
84
84
  }
85
85
  // Build file
86
86
  for (int i = 0; i < 10 + table; ++i) {
87
- ASSERT_OK(db_->Put(WriteOptions(), ToString(table * 100 + i), "val"));
87
+ ASSERT_OK(
88
+ db_->Put(WriteOptions(), std::to_string(table * 100 + i), "val"));
88
89
  }
89
90
  ASSERT_OK(db_->Flush(FlushOptions()));
90
91
  }
@@ -113,7 +114,7 @@ TEST_F(DBTablePropertiesTest, GetPropertiesOfAllTablesTest) {
113
114
  // fetch key from 1st and 2nd table, which will internally place that table to
114
115
  // the table cache.
115
116
  for (int i = 0; i < 2; ++i) {
116
- Get(ToString(i * 100 + 0));
117
+ Get(std::to_string(i * 100 + 0));
117
118
  }
118
119
 
119
120
  VerifyTableProperties(db_, 10 + 11 + 12 + 13);
@@ -122,7 +123,7 @@ TEST_F(DBTablePropertiesTest, GetPropertiesOfAllTablesTest) {
122
123
  Reopen(options);
123
124
  // fetch key from all tables, which will place them in table cache.
124
125
  for (int i = 0; i < 4; ++i) {
125
- Get(ToString(i * 100 + 0));
126
+ Get(std::to_string(i * 100 + 0));
126
127
  }
127
128
  VerifyTableProperties(db_, 10 + 11 + 12 + 13);
128
129
 
@@ -156,7 +157,7 @@ TEST_F(DBTablePropertiesTest, GetPropertiesOfAllTablesTest) {
156
157
  } else {
157
158
  bool found_corruption = false;
158
159
  for (int i = 0; i < 4; ++i) {
159
- std::string result = Get(ToString(i * 100 + 0));
160
+ std::string result = Get(std::to_string(i * 100 + 0));
160
161
  if (result.find_first_of("Corruption: block checksum mismatch") !=
161
162
  std::string::npos) {
162
163
  found_corruption = true;
@@ -187,7 +188,7 @@ TEST_F(DBTablePropertiesTest, InvalidIgnored) {
187
188
 
188
189
  // Build file
189
190
  for (int i = 0; i < 10; ++i) {
190
- ASSERT_OK(db_->Put(WriteOptions(), ToString(i), "val"));
191
+ ASSERT_OK(db_->Put(WriteOptions(), std::to_string(i), "val"));
191
192
  }
192
193
  ASSERT_OK(db_->Flush(FlushOptions()));
193
194
 
@@ -1844,6 +1844,8 @@ TEST_F(DBTest, Snapshot) {
1844
1844
  uint64_t time_snap1 = GetTimeOldestSnapshots();
1845
1845
  ASSERT_GT(time_snap1, 0U);
1846
1846
  ASSERT_EQ(GetSequenceOldestSnapshots(), s1->GetSequenceNumber());
1847
+ ASSERT_EQ(GetTimeOldestSnapshots(),
1848
+ static_cast<uint64_t>(s1->GetUnixTime()));
1847
1849
  ASSERT_OK(Put(0, "foo", "0v2"));
1848
1850
  ASSERT_OK(Put(1, "foo", "1v2"));
1849
1851
 
@@ -1853,6 +1855,8 @@ TEST_F(DBTest, Snapshot) {
1853
1855
  ASSERT_EQ(2U, GetNumSnapshots());
1854
1856
  ASSERT_EQ(time_snap1, GetTimeOldestSnapshots());
1855
1857
  ASSERT_EQ(GetSequenceOldestSnapshots(), s1->GetSequenceNumber());
1858
+ ASSERT_EQ(GetTimeOldestSnapshots(),
1859
+ static_cast<uint64_t>(s1->GetUnixTime()));
1856
1860
  ASSERT_OK(Put(0, "foo", "0v3"));
1857
1861
  ASSERT_OK(Put(1, "foo", "1v3"));
1858
1862
 
@@ -1861,6 +1865,8 @@ TEST_F(DBTest, Snapshot) {
1861
1865
  ASSERT_EQ(3U, GetNumSnapshots());
1862
1866
  ASSERT_EQ(time_snap1, GetTimeOldestSnapshots());
1863
1867
  ASSERT_EQ(GetSequenceOldestSnapshots(), s1->GetSequenceNumber());
1868
+ ASSERT_EQ(GetTimeOldestSnapshots(),
1869
+ static_cast<uint64_t>(s1->GetUnixTime()));
1864
1870
 
1865
1871
  ASSERT_OK(Put(0, "foo", "0v4"));
1866
1872
  ASSERT_OK(Put(1, "foo", "1v4"));
@@ -1877,6 +1883,8 @@ TEST_F(DBTest, Snapshot) {
1877
1883
  ASSERT_EQ(2U, GetNumSnapshots());
1878
1884
  ASSERT_EQ(time_snap1, GetTimeOldestSnapshots());
1879
1885
  ASSERT_EQ(GetSequenceOldestSnapshots(), s1->GetSequenceNumber());
1886
+ ASSERT_EQ(GetTimeOldestSnapshots(),
1887
+ static_cast<uint64_t>(s1->GetUnixTime()));
1880
1888
  ASSERT_EQ("0v1", Get(0, "foo", s1));
1881
1889
  ASSERT_EQ("1v1", Get(1, "foo", s1));
1882
1890
  ASSERT_EQ("0v2", Get(0, "foo", s2));
@@ -1892,6 +1900,8 @@ TEST_F(DBTest, Snapshot) {
1892
1900
  ASSERT_EQ(1U, GetNumSnapshots());
1893
1901
  ASSERT_LT(time_snap1, GetTimeOldestSnapshots());
1894
1902
  ASSERT_EQ(GetSequenceOldestSnapshots(), s2->GetSequenceNumber());
1903
+ ASSERT_EQ(GetTimeOldestSnapshots(),
1904
+ static_cast<uint64_t>(s2->GetUnixTime()));
1895
1905
 
1896
1906
  db_->ReleaseSnapshot(s2);
1897
1907
  ASSERT_EQ(0U, GetNumSnapshots());
@@ -2427,8 +2437,8 @@ TEST_F(DBTest, SnapshotFiles) {
2427
2437
 
2428
2438
  // Also test GetLiveFilesStorageInfo
2429
2439
  std::vector<LiveFileStorageInfo> new_infos;
2430
- ASSERT_OK(dbfull()->GetLiveFilesStorageInfo(LiveFilesStorageInfoOptions(),
2431
- &new_infos));
2440
+ ASSERT_OK(db_->GetLiveFilesStorageInfo(LiveFilesStorageInfoOptions(),
2441
+ &new_infos));
2432
2442
 
2433
2443
  // Close DB (while deletions disabled)
2434
2444
  Close();
@@ -2734,7 +2744,7 @@ TEST_P(MultiThreadedDBTest, MultiThreaded) {
2734
2744
  Options options = CurrentOptions(options_override);
2735
2745
  std::vector<std::string> cfs;
2736
2746
  for (int i = 1; i < kColumnFamilies; ++i) {
2737
- cfs.push_back(ToString(i));
2747
+ cfs.push_back(std::to_string(i));
2738
2748
  }
2739
2749
  Reopen(options);
2740
2750
  CreateAndReopenWithCF(cfs, options);
@@ -2786,7 +2796,7 @@ static void GCThreadBody(void* arg) {
2786
2796
  WriteOptions wo;
2787
2797
 
2788
2798
  for (int i = 0; i < kGCNumKeys; ++i) {
2789
- std::string kv(ToString(i + id * kGCNumKeys));
2799
+ std::string kv(std::to_string(i + id * kGCNumKeys));
2790
2800
  ASSERT_OK(db->Put(wo, kv, kv));
2791
2801
  }
2792
2802
  t->done = true;
@@ -2822,7 +2832,7 @@ TEST_F(DBTest, GroupCommitTest) {
2822
2832
 
2823
2833
  std::vector<std::string> expected_db;
2824
2834
  for (int i = 0; i < kGCNumThreads * kGCNumKeys; ++i) {
2825
- expected_db.push_back(ToString(i));
2835
+ expected_db.push_back(std::to_string(i));
2826
2836
  }
2827
2837
  std::sort(expected_db.begin(), expected_db.end());
2828
2838
 
@@ -2859,6 +2869,12 @@ class ModelDB : public DB {
2859
2869
  assert(false);
2860
2870
  return 0;
2861
2871
  }
2872
+
2873
+ int64_t GetUnixTime() const override {
2874
+ // no need to call this
2875
+ assert(false);
2876
+ return 0;
2877
+ }
2862
2878
  };
2863
2879
 
2864
2880
  explicit ModelDB(const Options& options) : options_(options) {}
@@ -3591,7 +3607,7 @@ TEST_P(DBTestWithParam, FIFOCompactionTest) {
3591
3607
  Random rnd(301);
3592
3608
  for (int i = 0; i < 6; ++i) {
3593
3609
  for (int j = 0; j < 110; ++j) {
3594
- ASSERT_OK(Put(ToString(i * 100 + j), rnd.RandomString(980)));
3610
+ ASSERT_OK(Put(std::to_string(i * 100 + j), rnd.RandomString(980)));
3595
3611
  }
3596
3612
  // flush should happen here
3597
3613
  ASSERT_OK(dbfull()->TEST_WaitForFlushMemTable());
@@ -3607,7 +3623,7 @@ TEST_P(DBTestWithParam, FIFOCompactionTest) {
3607
3623
  ASSERT_EQ(NumTableFilesAtLevel(0), 5);
3608
3624
  for (int i = 0; i < 50; ++i) {
3609
3625
  // these keys should be deleted in previous compaction
3610
- ASSERT_EQ("NOT_FOUND", Get(ToString(i)));
3626
+ ASSERT_EQ("NOT_FOUND", Get(std::to_string(i)));
3611
3627
  }
3612
3628
  }
3613
3629
  }
@@ -3629,7 +3645,7 @@ TEST_F(DBTest, FIFOCompactionTestWithCompaction) {
3629
3645
  for (int i = 0; i < 60; i++) {
3630
3646
  // Generate and flush a file about 20KB.
3631
3647
  for (int j = 0; j < 20; j++) {
3632
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3648
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3633
3649
  }
3634
3650
  ASSERT_OK(Flush());
3635
3651
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3640,7 +3656,7 @@ TEST_F(DBTest, FIFOCompactionTestWithCompaction) {
3640
3656
  for (int i = 0; i < 60; i++) {
3641
3657
  // Generate and flush a file about 20KB.
3642
3658
  for (int j = 0; j < 20; j++) {
3643
- ASSERT_OK(Put(ToString(i * 20 + j + 2000), rnd.RandomString(980)));
3659
+ ASSERT_OK(Put(std::to_string(i * 20 + j + 2000), rnd.RandomString(980)));
3644
3660
  }
3645
3661
  ASSERT_OK(Flush());
3646
3662
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3670,27 +3686,27 @@ TEST_F(DBTest, FIFOCompactionStyleWithCompactionAndDelete) {
3670
3686
  Random rnd(301);
3671
3687
  for (int i = 0; i < 3; i++) {
3672
3688
  // Each file contains a different key which will be dropped later.
3673
- ASSERT_OK(Put("a" + ToString(i), rnd.RandomString(500)));
3674
- ASSERT_OK(Put("key" + ToString(i), ""));
3675
- ASSERT_OK(Put("z" + ToString(i), rnd.RandomString(500)));
3689
+ ASSERT_OK(Put("a" + std::to_string(i), rnd.RandomString(500)));
3690
+ ASSERT_OK(Put("key" + std::to_string(i), ""));
3691
+ ASSERT_OK(Put("z" + std::to_string(i), rnd.RandomString(500)));
3676
3692
  ASSERT_OK(Flush());
3677
3693
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
3678
3694
  }
3679
3695
  ASSERT_EQ(NumTableFilesAtLevel(0), 1);
3680
3696
  for (int i = 0; i < 3; i++) {
3681
- ASSERT_EQ("", Get("key" + ToString(i)));
3697
+ ASSERT_EQ("", Get("key" + std::to_string(i)));
3682
3698
  }
3683
3699
  for (int i = 0; i < 3; i++) {
3684
3700
  // Each file contains a different key which will be dropped later.
3685
- ASSERT_OK(Put("a" + ToString(i), rnd.RandomString(500)));
3686
- ASSERT_OK(Delete("key" + ToString(i)));
3687
- ASSERT_OK(Put("z" + ToString(i), rnd.RandomString(500)));
3701
+ ASSERT_OK(Put("a" + std::to_string(i), rnd.RandomString(500)));
3702
+ ASSERT_OK(Delete("key" + std::to_string(i)));
3703
+ ASSERT_OK(Put("z" + std::to_string(i), rnd.RandomString(500)));
3688
3704
  ASSERT_OK(Flush());
3689
3705
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
3690
3706
  }
3691
3707
  ASSERT_EQ(NumTableFilesAtLevel(0), 2);
3692
3708
  for (int i = 0; i < 3; i++) {
3693
- ASSERT_EQ("NOT_FOUND", Get("key" + ToString(i)));
3709
+ ASSERT_EQ("NOT_FOUND", Get("key" + std::to_string(i)));
3694
3710
  }
3695
3711
  }
3696
3712
 
@@ -3759,7 +3775,7 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3759
3775
  for (int i = 0; i < 10; i++) {
3760
3776
  // Generate and flush a file about 10KB.
3761
3777
  for (int j = 0; j < 10; j++) {
3762
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3778
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3763
3779
  }
3764
3780
  ASSERT_OK(Flush());
3765
3781
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3791,7 +3807,7 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3791
3807
  for (int i = 0; i < 10; i++) {
3792
3808
  // Generate and flush a file about 10KB.
3793
3809
  for (int j = 0; j < 10; j++) {
3794
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3810
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3795
3811
  }
3796
3812
  ASSERT_OK(Flush());
3797
3813
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3807,7 +3823,7 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3807
3823
  // Create 1 more file to trigger TTL compaction. The old files are dropped.
3808
3824
  for (int i = 0; i < 1; i++) {
3809
3825
  for (int j = 0; j < 10; j++) {
3810
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3826
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3811
3827
  }
3812
3828
  ASSERT_OK(Flush());
3813
3829
  }
@@ -3833,7 +3849,7 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3833
3849
  for (int i = 0; i < 3; i++) {
3834
3850
  // Generate and flush a file about 10KB.
3835
3851
  for (int j = 0; j < 10; j++) {
3836
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3852
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3837
3853
  }
3838
3854
  ASSERT_OK(Flush());
3839
3855
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3848,7 +3864,7 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3848
3864
 
3849
3865
  for (int i = 0; i < 5; i++) {
3850
3866
  for (int j = 0; j < 140; j++) {
3851
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3867
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3852
3868
  }
3853
3869
  ASSERT_OK(Flush());
3854
3870
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3871,7 +3887,7 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3871
3887
  for (int i = 0; i < 10; i++) {
3872
3888
  // Generate and flush a file about 10KB.
3873
3889
  for (int j = 0; j < 10; j++) {
3874
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3890
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3875
3891
  }
3876
3892
  ASSERT_OK(Flush());
3877
3893
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3890,7 +3906,7 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3890
3906
  // Create 10 more files. The old 5 files are dropped as their ttl expired.
3891
3907
  for (int i = 0; i < 10; i++) {
3892
3908
  for (int j = 0; j < 10; j++) {
3893
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3909
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3894
3910
  }
3895
3911
  ASSERT_OK(Flush());
3896
3912
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3915,7 +3931,7 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3915
3931
  for (int i = 0; i < 60; i++) {
3916
3932
  // Generate and flush a file about 20KB.
3917
3933
  for (int j = 0; j < 20; j++) {
3918
- ASSERT_OK(Put(ToString(i * 20 + j), rnd.RandomString(980)));
3934
+ ASSERT_OK(Put(std::to_string(i * 20 + j), rnd.RandomString(980)));
3919
3935
  }
3920
3936
  ASSERT_OK(Flush());
3921
3937
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -3926,7 +3942,8 @@ TEST_F(DBTest, FIFOCompactionWithTTLTest) {
3926
3942
  for (int i = 0; i < 60; i++) {
3927
3943
  // Generate and flush a file about 20KB.
3928
3944
  for (int j = 0; j < 20; j++) {
3929
- ASSERT_OK(Put(ToString(i * 20 + j + 2000), rnd.RandomString(980)));
3945
+ ASSERT_OK(
3946
+ Put(std::to_string(i * 20 + j + 2000), rnd.RandomString(980)));
3930
3947
  }
3931
3948
  ASSERT_OK(Flush());
3932
3949
  ASSERT_OK(dbfull()->TEST_WaitForCompact());
@@ -4207,7 +4224,7 @@ TEST_F(DBTest, ConcurrentFlushWAL) {
4207
4224
  std::vector<port::Thread> threads;
4208
4225
  threads.emplace_back([&] {
4209
4226
  for (size_t i = 0; i < cnt; i++) {
4210
- auto istr = ToString(i);
4227
+ auto istr = std::to_string(i);
4211
4228
  ASSERT_OK(db_->Put(wopt, db_->DefaultColumnFamily(), "a" + istr,
4212
4229
  "b" + istr));
4213
4230
  }
@@ -4215,7 +4232,7 @@ TEST_F(DBTest, ConcurrentFlushWAL) {
4215
4232
  if (two_write_queues) {
4216
4233
  threads.emplace_back([&] {
4217
4234
  for (size_t i = cnt; i < 2 * cnt; i++) {
4218
- auto istr = ToString(i);
4235
+ auto istr = std::to_string(i);
4219
4236
  WriteBatch batch;
4220
4237
  ASSERT_OK(batch.Put("a" + istr, "b" + istr));
4221
4238
  ASSERT_OK(
@@ -4236,7 +4253,7 @@ TEST_F(DBTest, ConcurrentFlushWAL) {
4236
4253
  Reopen(options);
4237
4254
  for (size_t i = 0; i < cnt; i++) {
4238
4255
  PinnableSlice pval;
4239
- auto istr = ToString(i);
4256
+ auto istr = std::to_string(i);
4240
4257
  ASSERT_OK(
4241
4258
  db_->Get(ropt, db_->DefaultColumnFamily(), "a" + istr, &pval));
4242
4259
  ASSERT_TRUE(pval == ("b" + istr));
@@ -4259,7 +4276,7 @@ TEST_F(DBTest, ManualFlushWalAndWriteRace) {
4259
4276
 
4260
4277
  port::Thread writeThread([&]() {
4261
4278
  for (int i = 0; i < 100; i++) {
4262
- auto istr = ToString(i);
4279
+ auto istr = std::to_string(i);
4263
4280
  ASSERT_OK(dbfull()->Put(wopts, "key_" + istr, "value_" + istr));
4264
4281
  }
4265
4282
  });
@@ -4607,7 +4624,7 @@ TEST_P(DBTestWithParam, ThreadStatusSingleCompaction) {
4607
4624
  // The Put Phase.
4608
4625
  for (int file = 0; file < kNumL0Files; ++file) {
4609
4626
  for (int key = 0; key < kEntriesPerBuffer; ++key) {
4610
- ASSERT_OK(Put(ToString(key + file * kEntriesPerBuffer),
4627
+ ASSERT_OK(Put(std::to_string(key + file * kEntriesPerBuffer),
4611
4628
  rnd.RandomString(kTestValueSize)));
4612
4629
  }
4613
4630
  ASSERT_OK(Flush());
@@ -4758,7 +4775,7 @@ TEST_P(DBTestWithParam, PreShutdownMultipleCompaction) {
4758
4775
  int operation_count[ThreadStatus::NUM_OP_TYPES] = {0};
4759
4776
  for (int file = 0; file < 16 * kNumL0Files; ++file) {
4760
4777
  for (int k = 0; k < kEntriesPerBuffer; ++k) {
4761
- ASSERT_OK(Put(ToString(key++), rnd.RandomString(kTestValueSize)));
4778
+ ASSERT_OK(Put(std::to_string(key++), rnd.RandomString(kTestValueSize)));
4762
4779
  }
4763
4780
 
4764
4781
  ASSERT_OK(env_->GetThreadList(&thread_list));
@@ -4845,7 +4862,7 @@ TEST_P(DBTestWithParam, PreShutdownCompactionMiddle) {
4845
4862
  int operation_count[ThreadStatus::NUM_OP_TYPES] = {0};
4846
4863
  for (int file = 0; file < 16 * kNumL0Files; ++file) {
4847
4864
  for (int k = 0; k < kEntriesPerBuffer; ++k) {
4848
- ASSERT_OK(Put(ToString(key++), rnd.RandomString(kTestValueSize)));
4865
+ ASSERT_OK(Put(std::to_string(key++), rnd.RandomString(kTestValueSize)));
4849
4866
  }
4850
4867
 
4851
4868
  ASSERT_OK(env_->GetThreadList(&thread_list));
@@ -5156,8 +5173,9 @@ TEST_F(DBTest, DynamicCompactionOptions) {
5156
5173
  // Writing to 64KB L0 files should trigger a compaction. Since these
5157
5174
  // 2 L0 files have the same key range, compaction merge them and should
5158
5175
  // result in 2 32KB L1 files.
5159
- ASSERT_OK(dbfull()->SetOptions({{"level0_file_num_compaction_trigger", "2"},
5160
- {"target_file_size_base", ToString(k32KB)}}));
5176
+ ASSERT_OK(
5177
+ dbfull()->SetOptions({{"level0_file_num_compaction_trigger", "2"},
5178
+ {"target_file_size_base", std::to_string(k32KB)}}));
5161
5179
 
5162
5180
  gen_l0_kb(0, 64, 1);
5163
5181
  ASSERT_EQ("1,1", FilesPerLevel());
@@ -5176,8 +5194,8 @@ TEST_F(DBTest, DynamicCompactionOptions) {
5176
5194
  // Increase level base size to 256KB and write enough data that will
5177
5195
  // fill L1 and L2. L1 size should be around 256KB while L2 size should be
5178
5196
  // around 256KB x 4.
5179
- ASSERT_OK(
5180
- dbfull()->SetOptions({{"max_bytes_for_level_base", ToString(k1MB)}}));
5197
+ ASSERT_OK(dbfull()->SetOptions(
5198
+ {{"max_bytes_for_level_base", std::to_string(k1MB)}}));
5181
5199
 
5182
5200
  // writing 96 x 64KB => 6 * 1024KB
5183
5201
  // (L1 + L2) = (1 + 4) * 1024KB
@@ -5196,9 +5214,9 @@ TEST_F(DBTest, DynamicCompactionOptions) {
5196
5214
  // max_bytes_for_level_base. Now, reduce both mulitplier and level base,
5197
5215
  // After filling enough data that can fit in L1 - L3, we should see L1 size
5198
5216
  // reduces to 128KB from 256KB which was asserted previously. Same for L2.
5199
- ASSERT_OK(
5200
- dbfull()->SetOptions({{"max_bytes_for_level_multiplier", "2"},
5201
- {"max_bytes_for_level_base", ToString(k128KB)}}));
5217
+ ASSERT_OK(dbfull()->SetOptions(
5218
+ {{"max_bytes_for_level_multiplier", "2"},
5219
+ {"max_bytes_for_level_base", std::to_string(k128KB)}}));
5202
5220
 
5203
5221
  // writing 20 x 64KB = 10 x 128KB
5204
5222
  // (L1 + L2 + L3) = (1 + 2 + 4) * 128KB
@@ -5854,7 +5872,7 @@ TEST_P(DBTestWithParam, FilterCompactionTimeTest) {
5854
5872
  // put some data
5855
5873
  for (int table = 0; table < 4; ++table) {
5856
5874
  for (int i = 0; i < 10 + table; ++i) {
5857
- ASSERT_OK(Put(ToString(table * 100 + i), "val"));
5875
+ ASSERT_OK(Put(std::to_string(table * 100 + i), "val"));
5858
5876
  ++n;
5859
5877
  }
5860
5878
  ASSERT_OK(Flush());
@@ -6238,7 +6256,7 @@ TEST_F(DBTest, LargeBatchWithColumnFamilies) {
6238
6256
  (write_size / 1024 / 1024), pass);
6239
6257
  for (;;) {
6240
6258
  std::string data(3000, j++ % 127 + 20);
6241
- data += ToString(j);
6259
+ data += std::to_string(j);
6242
6260
  ASSERT_OK(batch.Put(handles_[0], Slice(data), Slice(data)));
6243
6261
  if (batch.GetDataSize() > write_size) {
6244
6262
  break;