rocksdb-native 2.6.2 → 2.6.4

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 (956) hide show
  1. package/CMakeLists.txt +29 -17
  2. package/binding.js +1 -1
  3. package/package.json +7 -4
  4. package/prebuilds/darwin-arm64/rocksdb-native.bare +0 -0
  5. package/prebuilds/darwin-arm64/rocksdb-native.node +0 -0
  6. package/prebuilds/darwin-x64/rocksdb-native.bare +0 -0
  7. package/prebuilds/darwin-x64/rocksdb-native.node +0 -0
  8. package/prebuilds/ios-arm64/rocksdb-native.bare +0 -0
  9. package/prebuilds/ios-arm64-simulator/rocksdb-native.bare +0 -0
  10. package/prebuilds/ios-x64-simulator/rocksdb-native.bare +0 -0
  11. package/prebuilds/linux-arm64/rocksdb-native.bare +0 -0
  12. package/prebuilds/linux-arm64/rocksdb-native.node +0 -0
  13. package/prebuilds/linux-x64/rocksdb-native.bare +0 -0
  14. package/prebuilds/linux-x64/rocksdb-native.node +0 -0
  15. package/prebuilds/win32-arm64/rocksdb-native.bare +0 -0
  16. package/prebuilds/win32-arm64/rocksdb-native.node +0 -0
  17. package/prebuilds/win32-x64/rocksdb-native.bare +0 -0
  18. package/prebuilds/win32-x64/rocksdb-native.node +0 -0
  19. package/vendor/librocksdb/CMakeLists.txt +0 -94
  20. package/vendor/librocksdb/LICENSE +0 -201
  21. package/vendor/librocksdb/NOTICE +0 -13
  22. package/vendor/librocksdb/README.md +0 -11
  23. package/vendor/librocksdb/include/rocksdb.h +0 -294
  24. package/vendor/librocksdb/src/rocksdb.cc +0 -714
  25. package/vendor/librocksdb/vendor/rocksdb/CMakeLists.txt +0 -1642
  26. package/vendor/librocksdb/vendor/rocksdb/cache/cache.cc +0 -193
  27. package/vendor/librocksdb/vendor/rocksdb/cache/cache_bench.cc +0 -20
  28. package/vendor/librocksdb/vendor/rocksdb/cache/cache_bench_tool.cc +0 -1177
  29. package/vendor/librocksdb/vendor/rocksdb/cache/cache_entry_roles.cc +0 -104
  30. package/vendor/librocksdb/vendor/rocksdb/cache/cache_entry_roles.h +0 -20
  31. package/vendor/librocksdb/vendor/rocksdb/cache/cache_entry_stats.h +0 -182
  32. package/vendor/librocksdb/vendor/rocksdb/cache/cache_helpers.cc +0 -41
  33. package/vendor/librocksdb/vendor/rocksdb/cache/cache_helpers.h +0 -139
  34. package/vendor/librocksdb/vendor/rocksdb/cache/cache_key.cc +0 -364
  35. package/vendor/librocksdb/vendor/rocksdb/cache/cache_key.h +0 -143
  36. package/vendor/librocksdb/vendor/rocksdb/cache/cache_reservation_manager.cc +0 -184
  37. package/vendor/librocksdb/vendor/rocksdb/cache/cache_reservation_manager.h +0 -318
  38. package/vendor/librocksdb/vendor/rocksdb/cache/charged_cache.cc +0 -111
  39. package/vendor/librocksdb/vendor/rocksdb/cache/charged_cache.h +0 -61
  40. package/vendor/librocksdb/vendor/rocksdb/cache/clock_cache.cc +0 -3657
  41. package/vendor/librocksdb/vendor/rocksdb/cache/clock_cache.h +0 -1165
  42. package/vendor/librocksdb/vendor/rocksdb/cache/compressed_secondary_cache.cc +0 -414
  43. package/vendor/librocksdb/vendor/rocksdb/cache/compressed_secondary_cache.h +0 -151
  44. package/vendor/librocksdb/vendor/rocksdb/cache/lru_cache.cc +0 -726
  45. package/vendor/librocksdb/vendor/rocksdb/cache/lru_cache.h +0 -467
  46. package/vendor/librocksdb/vendor/rocksdb/cache/secondary_cache.cc +0 -12
  47. package/vendor/librocksdb/vendor/rocksdb/cache/secondary_cache_adapter.cc +0 -743
  48. package/vendor/librocksdb/vendor/rocksdb/cache/secondary_cache_adapter.h +0 -103
  49. package/vendor/librocksdb/vendor/rocksdb/cache/sharded_cache.cc +0 -147
  50. package/vendor/librocksdb/vendor/rocksdb/cache/sharded_cache.h +0 -322
  51. package/vendor/librocksdb/vendor/rocksdb/cache/tiered_secondary_cache.cc +0 -125
  52. package/vendor/librocksdb/vendor/rocksdb/cache/tiered_secondary_cache.h +0 -158
  53. package/vendor/librocksdb/vendor/rocksdb/cache/typed_cache.h +0 -380
  54. package/vendor/librocksdb/vendor/rocksdb/cmake/RocksDBConfig.cmake.in +0 -54
  55. package/vendor/librocksdb/vendor/rocksdb/db/arena_wrapped_db_iter.cc +0 -182
  56. package/vendor/librocksdb/vendor/rocksdb/db/arena_wrapped_db_iter.h +0 -128
  57. package/vendor/librocksdb/vendor/rocksdb/db/attribute_group_iterator_impl.cc +0 -20
  58. package/vendor/librocksdb/vendor/rocksdb/db/attribute_group_iterator_impl.h +0 -83
  59. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_constants.h +0 -16
  60. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_contents.cc +0 -42
  61. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_contents.h +0 -60
  62. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_counting_iterator.h +0 -150
  63. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_fetcher.cc +0 -34
  64. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_fetcher.h +0 -37
  65. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_addition.cc +0 -156
  66. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_addition.h +0 -67
  67. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_builder.cc +0 -429
  68. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_builder.h +0 -113
  69. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_cache.cc +0 -101
  70. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_cache.h +0 -56
  71. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_completion_callback.h +0 -84
  72. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_garbage.cc +0 -134
  73. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_garbage.h +0 -57
  74. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_meta.cc +0 -62
  75. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_meta.h +0 -170
  76. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_reader.cc +0 -622
  77. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_reader.h +0 -111
  78. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_garbage_meter.cc +0 -100
  79. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_garbage_meter.h +0 -102
  80. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_index.h +0 -187
  81. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_format.cc +0 -143
  82. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_format.h +0 -164
  83. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_sequential_reader.cc +0 -133
  84. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_sequential_reader.h +0 -83
  85. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_writer.cc +0 -207
  86. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_writer.h +0 -87
  87. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_read_request.h +0 -58
  88. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_source.cc +0 -459
  89. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_source.h +0 -161
  90. package/vendor/librocksdb/vendor/rocksdb/db/blob/prefetch_buffer_collection.cc +0 -23
  91. package/vendor/librocksdb/vendor/rocksdb/db/blob/prefetch_buffer_collection.h +0 -38
  92. package/vendor/librocksdb/vendor/rocksdb/db/builder.cc +0 -517
  93. package/vendor/librocksdb/vendor/rocksdb/db/builder.h +0 -76
  94. package/vendor/librocksdb/vendor/rocksdb/db/c.cc +0 -7133
  95. package/vendor/librocksdb/vendor/rocksdb/db/c_test.c +0 -4052
  96. package/vendor/librocksdb/vendor/rocksdb/db/coalescing_iterator.cc +0 -47
  97. package/vendor/librocksdb/vendor/rocksdb/db/coalescing_iterator.h +0 -79
  98. package/vendor/librocksdb/vendor/rocksdb/db/column_family.cc +0 -1859
  99. package/vendor/librocksdb/vendor/rocksdb/db/column_family.h +0 -918
  100. package/vendor/librocksdb/vendor/rocksdb/db/compaction/clipping_iterator.h +0 -281
  101. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction.cc +0 -995
  102. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction.h +0 -602
  103. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_iteration_stats.h +0 -56
  104. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_iterator.cc +0 -1523
  105. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_iterator.h +0 -557
  106. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_job.cc +0 -2155
  107. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_job.h +0 -520
  108. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_outputs.cc +0 -802
  109. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_outputs.h +0 -411
  110. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker.cc +0 -1245
  111. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker.h +0 -322
  112. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_fifo.cc +0 -478
  113. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_fifo.h +0 -61
  114. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_level.cc +0 -977
  115. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_level.h +0 -32
  116. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_universal.cc +0 -1578
  117. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_universal.h +0 -29
  118. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_service_job.cc +0 -835
  119. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_state.cc +0 -46
  120. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_state.h +0 -42
  121. package/vendor/librocksdb/vendor/rocksdb/db/compaction/file_pri.h +0 -94
  122. package/vendor/librocksdb/vendor/rocksdb/db/compaction/sst_partitioner.cc +0 -83
  123. package/vendor/librocksdb/vendor/rocksdb/db/compaction/subcompaction_state.cc +0 -106
  124. package/vendor/librocksdb/vendor/rocksdb/db/compaction/subcompaction_state.h +0 -220
  125. package/vendor/librocksdb/vendor/rocksdb/db/convenience.cc +0 -101
  126. package/vendor/librocksdb/vendor/rocksdb/db/convenience_impl.h +0 -15
  127. package/vendor/librocksdb/vendor/rocksdb/db/db_filesnapshot.cc +0 -506
  128. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/compacted_db_impl.cc +0 -275
  129. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/compacted_db_impl.h +0 -147
  130. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl.cc +0 -6767
  131. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl.h +0 -3056
  132. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_compaction_flush.cc +0 -4390
  133. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_debug.cc +0 -327
  134. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_experimental.cc +0 -164
  135. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_files.cc +0 -1032
  136. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_follower.cc +0 -348
  137. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_follower.h +0 -54
  138. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_open.cc +0 -2325
  139. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_readonly.cc +0 -376
  140. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_readonly.h +0 -179
  141. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_secondary.cc +0 -1025
  142. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_secondary.h +0 -322
  143. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_write.cc +0 -2624
  144. package/vendor/librocksdb/vendor/rocksdb/db/db_info_dumper.cc +0 -165
  145. package/vendor/librocksdb/vendor/rocksdb/db/db_info_dumper.h +0 -15
  146. package/vendor/librocksdb/vendor/rocksdb/db/db_iter.cc +0 -1774
  147. package/vendor/librocksdb/vendor/rocksdb/db/db_iter.h +0 -444
  148. package/vendor/librocksdb/vendor/rocksdb/db/db_test2.cc +0 -7839
  149. package/vendor/librocksdb/vendor/rocksdb/db/db_test_util.cc +0 -1800
  150. package/vendor/librocksdb/vendor/rocksdb/db/db_test_util.h +0 -1427
  151. package/vendor/librocksdb/vendor/rocksdb/db/db_with_timestamp_test_util.cc +0 -96
  152. package/vendor/librocksdb/vendor/rocksdb/db/db_with_timestamp_test_util.h +0 -126
  153. package/vendor/librocksdb/vendor/rocksdb/db/dbformat.cc +0 -282
  154. package/vendor/librocksdb/vendor/rocksdb/db/dbformat.h +0 -1101
  155. package/vendor/librocksdb/vendor/rocksdb/db/error_handler.cc +0 -806
  156. package/vendor/librocksdb/vendor/rocksdb/db/error_handler.h +0 -149
  157. package/vendor/librocksdb/vendor/rocksdb/db/event_helpers.cc +0 -332
  158. package/vendor/librocksdb/vendor/rocksdb/db/event_helpers.h +0 -78
  159. package/vendor/librocksdb/vendor/rocksdb/db/experimental.cc +0 -1212
  160. package/vendor/librocksdb/vendor/rocksdb/db/external_sst_file_ingestion_job.cc +0 -1249
  161. package/vendor/librocksdb/vendor/rocksdb/db/external_sst_file_ingestion_job.h +0 -268
  162. package/vendor/librocksdb/vendor/rocksdb/db/file_indexer.cc +0 -216
  163. package/vendor/librocksdb/vendor/rocksdb/db/file_indexer.h +0 -140
  164. package/vendor/librocksdb/vendor/rocksdb/db/flush_job.cc +0 -1217
  165. package/vendor/librocksdb/vendor/rocksdb/db/flush_job.h +0 -240
  166. package/vendor/librocksdb/vendor/rocksdb/db/flush_scheduler.cc +0 -86
  167. package/vendor/librocksdb/vendor/rocksdb/db/flush_scheduler.h +0 -55
  168. package/vendor/librocksdb/vendor/rocksdb/db/forward_iterator.cc +0 -1082
  169. package/vendor/librocksdb/vendor/rocksdb/db/forward_iterator.h +0 -166
  170. package/vendor/librocksdb/vendor/rocksdb/db/forward_iterator_bench.cc +0 -378
  171. package/vendor/librocksdb/vendor/rocksdb/db/history_trimming_iterator.h +0 -95
  172. package/vendor/librocksdb/vendor/rocksdb/db/import_column_family_job.cc +0 -463
  173. package/vendor/librocksdb/vendor/rocksdb/db/import_column_family_job.h +0 -91
  174. package/vendor/librocksdb/vendor/rocksdb/db/internal_stats.cc +0 -2198
  175. package/vendor/librocksdb/vendor/rocksdb/db/internal_stats.h +0 -896
  176. package/vendor/librocksdb/vendor/rocksdb/db/job_context.h +0 -254
  177. package/vendor/librocksdb/vendor/rocksdb/db/kv_checksum.h +0 -484
  178. package/vendor/librocksdb/vendor/rocksdb/db/log_format.h +0 -55
  179. package/vendor/librocksdb/vendor/rocksdb/db/log_reader.cc +0 -958
  180. package/vendor/librocksdb/vendor/rocksdb/db/log_reader.h +0 -245
  181. package/vendor/librocksdb/vendor/rocksdb/db/log_writer.cc +0 -355
  182. package/vendor/librocksdb/vendor/rocksdb/db/log_writer.h +0 -151
  183. package/vendor/librocksdb/vendor/rocksdb/db/logs_with_prep_tracker.cc +0 -67
  184. package/vendor/librocksdb/vendor/rocksdb/db/logs_with_prep_tracker.h +0 -62
  185. package/vendor/librocksdb/vendor/rocksdb/db/lookup_key.h +0 -68
  186. package/vendor/librocksdb/vendor/rocksdb/db/malloc_stats.cc +0 -52
  187. package/vendor/librocksdb/vendor/rocksdb/db/malloc_stats.h +0 -22
  188. package/vendor/librocksdb/vendor/rocksdb/db/memtable.cc +0 -1684
  189. package/vendor/librocksdb/vendor/rocksdb/db/memtable.h +0 -712
  190. package/vendor/librocksdb/vendor/rocksdb/db/memtable_list.cc +0 -1028
  191. package/vendor/librocksdb/vendor/rocksdb/db/memtable_list.h +0 -514
  192. package/vendor/librocksdb/vendor/rocksdb/db/merge_context.h +0 -150
  193. package/vendor/librocksdb/vendor/rocksdb/db/merge_helper.cc +0 -699
  194. package/vendor/librocksdb/vendor/rocksdb/db/merge_helper.h +0 -318
  195. package/vendor/librocksdb/vendor/rocksdb/db/merge_operator.cc +0 -167
  196. package/vendor/librocksdb/vendor/rocksdb/db/multi_cf_iterator_impl.h +0 -296
  197. package/vendor/librocksdb/vendor/rocksdb/db/output_validator.cc +0 -29
  198. package/vendor/librocksdb/vendor/rocksdb/db/output_validator.h +0 -45
  199. package/vendor/librocksdb/vendor/rocksdb/db/periodic_task_scheduler.cc +0 -110
  200. package/vendor/librocksdb/vendor/rocksdb/db/periodic_task_scheduler.h +0 -108
  201. package/vendor/librocksdb/vendor/rocksdb/db/pinned_iterators_manager.h +0 -92
  202. package/vendor/librocksdb/vendor/rocksdb/db/post_memtable_callback.h +0 -25
  203. package/vendor/librocksdb/vendor/rocksdb/db/pre_release_callback.h +0 -37
  204. package/vendor/librocksdb/vendor/rocksdb/db/range_del_aggregator.cc +0 -553
  205. package/vendor/librocksdb/vendor/rocksdb/db/range_del_aggregator.h +0 -481
  206. package/vendor/librocksdb/vendor/rocksdb/db/range_del_aggregator_bench.cc +0 -280
  207. package/vendor/librocksdb/vendor/rocksdb/db/range_tombstone_fragmenter.cc +0 -515
  208. package/vendor/librocksdb/vendor/rocksdb/db/range_tombstone_fragmenter.h +0 -361
  209. package/vendor/librocksdb/vendor/rocksdb/db/read_callback.h +0 -54
  210. package/vendor/librocksdb/vendor/rocksdb/db/repair.cc +0 -864
  211. package/vendor/librocksdb/vendor/rocksdb/db/seqno_to_time_mapping.cc +0 -573
  212. package/vendor/librocksdb/vendor/rocksdb/db/seqno_to_time_mapping.h +0 -307
  213. package/vendor/librocksdb/vendor/rocksdb/db/snapshot_checker.h +0 -58
  214. package/vendor/librocksdb/vendor/rocksdb/db/snapshot_impl.cc +0 -25
  215. package/vendor/librocksdb/vendor/rocksdb/db/snapshot_impl.h +0 -239
  216. package/vendor/librocksdb/vendor/rocksdb/db/table_cache.cc +0 -745
  217. package/vendor/librocksdb/vendor/rocksdb/db/table_cache.h +0 -298
  218. package/vendor/librocksdb/vendor/rocksdb/db/table_cache_sync_and_async.h +0 -135
  219. package/vendor/librocksdb/vendor/rocksdb/db/table_properties_collector.cc +0 -74
  220. package/vendor/librocksdb/vendor/rocksdb/db/table_properties_collector.h +0 -185
  221. package/vendor/librocksdb/vendor/rocksdb/db/transaction_log_impl.cc +0 -296
  222. package/vendor/librocksdb/vendor/rocksdb/db/transaction_log_impl.h +0 -128
  223. package/vendor/librocksdb/vendor/rocksdb/db/trim_history_scheduler.cc +0 -54
  224. package/vendor/librocksdb/vendor/rocksdb/db/trim_history_scheduler.h +0 -46
  225. package/vendor/librocksdb/vendor/rocksdb/db/version_builder.cc +0 -1431
  226. package/vendor/librocksdb/vendor/rocksdb/db/version_builder.h +0 -93
  227. package/vendor/librocksdb/vendor/rocksdb/db/version_edit.cc +0 -1119
  228. package/vendor/librocksdb/vendor/rocksdb/db/version_edit.h +0 -769
  229. package/vendor/librocksdb/vendor/rocksdb/db/version_edit_handler.cc +0 -1264
  230. package/vendor/librocksdb/vendor/rocksdb/db/version_edit_handler.h +0 -390
  231. package/vendor/librocksdb/vendor/rocksdb/db/version_set.cc +0 -7562
  232. package/vendor/librocksdb/vendor/rocksdb/db/version_set.h +0 -1799
  233. package/vendor/librocksdb/vendor/rocksdb/db/version_set_sync_and_async.h +0 -169
  234. package/vendor/librocksdb/vendor/rocksdb/db/version_util.h +0 -77
  235. package/vendor/librocksdb/vendor/rocksdb/db/wal_edit.cc +0 -211
  236. package/vendor/librocksdb/vendor/rocksdb/db/wal_edit.h +0 -177
  237. package/vendor/librocksdb/vendor/rocksdb/db/wal_manager.cc +0 -539
  238. package/vendor/librocksdb/vendor/rocksdb/db/wal_manager.h +0 -138
  239. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_column_serialization.cc +0 -166
  240. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_column_serialization.h +0 -57
  241. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_columns.cc +0 -22
  242. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_columns_helper.cc +0 -52
  243. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_columns_helper.h +0 -40
  244. package/vendor/librocksdb/vendor/rocksdb/db/write_batch.cc +0 -3394
  245. package/vendor/librocksdb/vendor/rocksdb/db/write_batch_base.cc +0 -94
  246. package/vendor/librocksdb/vendor/rocksdb/db/write_batch_internal.h +0 -408
  247. package/vendor/librocksdb/vendor/rocksdb/db/write_callback.h +0 -27
  248. package/vendor/librocksdb/vendor/rocksdb/db/write_controller.cc +0 -121
  249. package/vendor/librocksdb/vendor/rocksdb/db/write_controller.h +0 -148
  250. package/vendor/librocksdb/vendor/rocksdb/db/write_stall_stats.cc +0 -179
  251. package/vendor/librocksdb/vendor/rocksdb/db/write_stall_stats.h +0 -47
  252. package/vendor/librocksdb/vendor/rocksdb/db/write_thread.cc +0 -931
  253. package/vendor/librocksdb/vendor/rocksdb/db/write_thread.h +0 -498
  254. package/vendor/librocksdb/vendor/rocksdb/env/composite_env.cc +0 -534
  255. package/vendor/librocksdb/vendor/rocksdb/env/composite_env_wrapper.h +0 -399
  256. package/vendor/librocksdb/vendor/rocksdb/env/emulated_clock.h +0 -114
  257. package/vendor/librocksdb/vendor/rocksdb/env/env.cc +0 -1253
  258. package/vendor/librocksdb/vendor/rocksdb/env/env_chroot.cc +0 -149
  259. package/vendor/librocksdb/vendor/rocksdb/env/env_chroot.h +0 -55
  260. package/vendor/librocksdb/vendor/rocksdb/env/env_encryption.cc +0 -1192
  261. package/vendor/librocksdb/vendor/rocksdb/env/env_encryption_ctr.h +0 -97
  262. package/vendor/librocksdb/vendor/rocksdb/env/env_posix.cc +0 -530
  263. package/vendor/librocksdb/vendor/rocksdb/env/file_system.cc +0 -278
  264. package/vendor/librocksdb/vendor/rocksdb/env/file_system_tracer.cc +0 -564
  265. package/vendor/librocksdb/vendor/rocksdb/env/file_system_tracer.h +0 -461
  266. package/vendor/librocksdb/vendor/rocksdb/env/fs_on_demand.cc +0 -331
  267. package/vendor/librocksdb/vendor/rocksdb/env/fs_on_demand.h +0 -139
  268. package/vendor/librocksdb/vendor/rocksdb/env/fs_posix.cc +0 -1285
  269. package/vendor/librocksdb/vendor/rocksdb/env/fs_readonly.h +0 -105
  270. package/vendor/librocksdb/vendor/rocksdb/env/fs_remap.cc +0 -341
  271. package/vendor/librocksdb/vendor/rocksdb/env/fs_remap.h +0 -137
  272. package/vendor/librocksdb/vendor/rocksdb/env/io_posix.cc +0 -1738
  273. package/vendor/librocksdb/vendor/rocksdb/env/io_posix.h +0 -517
  274. package/vendor/librocksdb/vendor/rocksdb/env/mock_env.cc +0 -1058
  275. package/vendor/librocksdb/vendor/rocksdb/env/mock_env.h +0 -144
  276. package/vendor/librocksdb/vendor/rocksdb/env/unique_id_gen.cc +0 -243
  277. package/vendor/librocksdb/vendor/rocksdb/env/unique_id_gen.h +0 -119
  278. package/vendor/librocksdb/vendor/rocksdb/file/delete_scheduler.cc +0 -513
  279. package/vendor/librocksdb/vendor/rocksdb/file/delete_scheduler.h +0 -200
  280. package/vendor/librocksdb/vendor/rocksdb/file/file_prefetch_buffer.cc +0 -992
  281. package/vendor/librocksdb/vendor/rocksdb/file/file_prefetch_buffer.h +0 -629
  282. package/vendor/librocksdb/vendor/rocksdb/file/file_util.cc +0 -308
  283. package/vendor/librocksdb/vendor/rocksdb/file/file_util.h +0 -123
  284. package/vendor/librocksdb/vendor/rocksdb/file/filename.cc +0 -538
  285. package/vendor/librocksdb/vendor/rocksdb/file/filename.h +0 -186
  286. package/vendor/librocksdb/vendor/rocksdb/file/line_file_reader.cc +0 -73
  287. package/vendor/librocksdb/vendor/rocksdb/file/line_file_reader.h +0 -60
  288. package/vendor/librocksdb/vendor/rocksdb/file/random_access_file_reader.cc +0 -639
  289. package/vendor/librocksdb/vendor/rocksdb/file/random_access_file_reader.h +0 -197
  290. package/vendor/librocksdb/vendor/rocksdb/file/read_write_util.cc +0 -33
  291. package/vendor/librocksdb/vendor/rocksdb/file/read_write_util.h +0 -31
  292. package/vendor/librocksdb/vendor/rocksdb/file/readahead_file_info.h +0 -33
  293. package/vendor/librocksdb/vendor/rocksdb/file/readahead_raf.cc +0 -169
  294. package/vendor/librocksdb/vendor/rocksdb/file/readahead_raf.h +0 -29
  295. package/vendor/librocksdb/vendor/rocksdb/file/sequence_file_reader.cc +0 -324
  296. package/vendor/librocksdb/vendor/rocksdb/file/sequence_file_reader.h +0 -127
  297. package/vendor/librocksdb/vendor/rocksdb/file/sst_file_manager_impl.cc +0 -525
  298. package/vendor/librocksdb/vendor/rocksdb/file/sst_file_manager_impl.h +0 -220
  299. package/vendor/librocksdb/vendor/rocksdb/file/writable_file_writer.cc +0 -1007
  300. package/vendor/librocksdb/vendor/rocksdb/file/writable_file_writer.h +0 -370
  301. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/advanced_cache.h +0 -665
  302. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/advanced_options.h +0 -1101
  303. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/attribute_groups.h +0 -114
  304. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/block_cache_trace_writer.h +0 -149
  305. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/c.h +0 -3122
  306. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/cache.h +0 -579
  307. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/cache_bench_tool.h +0 -14
  308. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/cleanable.h +0 -128
  309. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/compaction_filter.h +0 -374
  310. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/compaction_job_stats.h +0 -112
  311. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/comparator.h +0 -231
  312. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/compression_type.h +0 -186
  313. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/concurrent_task_limiter.h +0 -51
  314. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/configurable.h +0 -390
  315. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/convenience.h +0 -466
  316. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/customizable.h +0 -229
  317. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/data_structure.h +0 -186
  318. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/db.h +0 -2174
  319. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/db_bench_tool.h +0 -11
  320. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/db_dump_tool.h +0 -43
  321. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/db_stress_tool.h +0 -11
  322. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/env.h +0 -1920
  323. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/env_encryption.h +0 -363
  324. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/experimental.h +0 -492
  325. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/file_checksum.h +0 -146
  326. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/file_system.h +0 -1961
  327. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/filter_policy.h +0 -211
  328. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/flush_block_policy.h +0 -75
  329. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/functor_wrapper.h +0 -56
  330. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/io_status.h +0 -244
  331. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/iostats_context.h +0 -98
  332. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/iterator.h +0 -104
  333. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/iterator_base.h +0 -90
  334. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/ldb_tool.h +0 -42
  335. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/listener.h +0 -869
  336. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/memory_allocator.h +0 -87
  337. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/memtablerep.h +0 -421
  338. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/merge_operator.h +0 -337
  339. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/metadata.h +0 -258
  340. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/options.h +0 -2339
  341. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/perf_context.h +0 -319
  342. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/perf_level.h +0 -39
  343. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/persistent_cache.h +0 -74
  344. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/port_defs.h +0 -26
  345. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/rate_limiter.h +0 -172
  346. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/rocksdb_namespace.h +0 -16
  347. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/secondary_cache.h +0 -220
  348. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/slice.h +0 -264
  349. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/slice_transform.h +0 -135
  350. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/snapshot.h +0 -53
  351. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_dump_tool.h +0 -17
  352. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_file_manager.h +0 -139
  353. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_file_reader.h +0 -61
  354. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_file_writer.h +0 -203
  355. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_partitioner.h +0 -142
  356. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/statistics.h +0 -794
  357. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/stats_history.h +0 -70
  358. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/status.h +0 -609
  359. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/system_clock.h +0 -129
  360. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/table.h +0 -938
  361. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/table_properties.h +0 -380
  362. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/table_reader_caller.h +0 -41
  363. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/thread_status.h +0 -197
  364. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/threadpool.h +0 -67
  365. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/trace_reader_writer.h +0 -52
  366. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/trace_record.h +0 -248
  367. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/trace_record_result.h +0 -187
  368. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/transaction_log.h +0 -128
  369. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/types.h +0 -113
  370. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/unique_id.h +0 -55
  371. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/universal_compaction.h +0 -127
  372. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/user_write_callback.h +0 -29
  373. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/agg_merge.h +0 -138
  374. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/backup_engine.h +0 -689
  375. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/cache_dump_load.h +0 -144
  376. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/checkpoint.h +0 -65
  377. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/convenience.h +0 -10
  378. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/customizable_util.h +0 -321
  379. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/db_ttl.h +0 -70
  380. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/debug.h +0 -46
  381. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/env_mirror.h +0 -179
  382. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/info_log_finder.h +0 -19
  383. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/ldb_cmd.h +0 -338
  384. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/ldb_cmd_execute_result.h +0 -75
  385. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/leveldb_options.h +0 -145
  386. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/lua/rocks_lua_custom_library.h +0 -43
  387. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/lua/rocks_lua_util.h +0 -55
  388. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/memory_util.h +0 -48
  389. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/object_registry.h +0 -583
  390. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/optimistic_transaction_db.h +0 -129
  391. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/option_change_migration.h +0 -24
  392. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/options_type.h +0 -1222
  393. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/options_util.h +0 -105
  394. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/replayer.h +0 -85
  395. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/sim_cache.h +0 -92
  396. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/stackable_db.h +0 -593
  397. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/table_properties_collectors.h +0 -133
  398. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/transaction.h +0 -765
  399. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/transaction_db.h +0 -510
  400. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/transaction_db_mutex.h +0 -89
  401. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/types_util.h +0 -36
  402. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/write_batch_with_index.h +0 -402
  403. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/version.h +0 -43
  404. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/wal_filter.h +0 -111
  405. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/wide_columns.h +0 -303
  406. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/write_batch.h +0 -518
  407. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/write_batch_base.h +0 -165
  408. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/write_buffer_manager.h +0 -183
  409. package/vendor/librocksdb/vendor/rocksdb/logging/auto_roll_logger.cc +0 -366
  410. package/vendor/librocksdb/vendor/rocksdb/logging/auto_roll_logger.h +0 -165
  411. package/vendor/librocksdb/vendor/rocksdb/logging/env_logger.h +0 -195
  412. package/vendor/librocksdb/vendor/rocksdb/logging/event_logger.cc +0 -68
  413. package/vendor/librocksdb/vendor/rocksdb/logging/event_logger.h +0 -202
  414. package/vendor/librocksdb/vendor/rocksdb/logging/log_buffer.cc +0 -91
  415. package/vendor/librocksdb/vendor/rocksdb/logging/log_buffer.h +0 -57
  416. package/vendor/librocksdb/vendor/rocksdb/logging/logging.h +0 -62
  417. package/vendor/librocksdb/vendor/rocksdb/memory/allocator.h +0 -58
  418. package/vendor/librocksdb/vendor/rocksdb/memory/arena.cc +0 -170
  419. package/vendor/librocksdb/vendor/rocksdb/memory/arena.h +0 -146
  420. package/vendor/librocksdb/vendor/rocksdb/memory/concurrent_arena.cc +0 -45
  421. package/vendor/librocksdb/vendor/rocksdb/memory/concurrent_arena.h +0 -215
  422. package/vendor/librocksdb/vendor/rocksdb/memory/jemalloc_nodump_allocator.cc +0 -304
  423. package/vendor/librocksdb/vendor/rocksdb/memory/jemalloc_nodump_allocator.h +0 -99
  424. package/vendor/librocksdb/vendor/rocksdb/memory/memkind_kmem_allocator.cc +0 -44
  425. package/vendor/librocksdb/vendor/rocksdb/memory/memkind_kmem_allocator.h +0 -43
  426. package/vendor/librocksdb/vendor/rocksdb/memory/memory_allocator.cc +0 -81
  427. package/vendor/librocksdb/vendor/rocksdb/memory/memory_allocator_impl.h +0 -47
  428. package/vendor/librocksdb/vendor/rocksdb/memory/memory_usage.h +0 -38
  429. package/vendor/librocksdb/vendor/rocksdb/memtable/alloc_tracker.cc +0 -63
  430. package/vendor/librocksdb/vendor/rocksdb/memtable/hash_linklist_rep.cc +0 -925
  431. package/vendor/librocksdb/vendor/rocksdb/memtable/hash_skiplist_rep.cc +0 -392
  432. package/vendor/librocksdb/vendor/rocksdb/memtable/inlineskiplist.h +0 -1051
  433. package/vendor/librocksdb/vendor/rocksdb/memtable/memtablerep_bench.cc +0 -687
  434. package/vendor/librocksdb/vendor/rocksdb/memtable/skiplist.h +0 -498
  435. package/vendor/librocksdb/vendor/rocksdb/memtable/skiplistrep.cc +0 -368
  436. package/vendor/librocksdb/vendor/rocksdb/memtable/stl_wrappers.h +0 -33
  437. package/vendor/librocksdb/vendor/rocksdb/memtable/vectorrep.cc +0 -307
  438. package/vendor/librocksdb/vendor/rocksdb/memtable/write_buffer_manager.cc +0 -185
  439. package/vendor/librocksdb/vendor/rocksdb/monitoring/file_read_sample.h +0 -23
  440. package/vendor/librocksdb/vendor/rocksdb/monitoring/histogram.cc +0 -280
  441. package/vendor/librocksdb/vendor/rocksdb/monitoring/histogram.h +0 -143
  442. package/vendor/librocksdb/vendor/rocksdb/monitoring/histogram_windowing.cc +0 -198
  443. package/vendor/librocksdb/vendor/rocksdb/monitoring/histogram_windowing.h +0 -84
  444. package/vendor/librocksdb/vendor/rocksdb/monitoring/in_memory_stats_history.cc +0 -50
  445. package/vendor/librocksdb/vendor/rocksdb/monitoring/in_memory_stats_history.h +0 -74
  446. package/vendor/librocksdb/vendor/rocksdb/monitoring/instrumented_mutex.cc +0 -90
  447. package/vendor/librocksdb/vendor/rocksdb/monitoring/instrumented_mutex.h +0 -126
  448. package/vendor/librocksdb/vendor/rocksdb/monitoring/iostats_context.cc +0 -78
  449. package/vendor/librocksdb/vendor/rocksdb/monitoring/iostats_context_imp.h +0 -62
  450. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_context.cc +0 -317
  451. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_context_imp.h +0 -103
  452. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_level.cc +0 -23
  453. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_level_imp.h +0 -14
  454. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_step_timer.h +0 -77
  455. package/vendor/librocksdb/vendor/rocksdb/monitoring/persistent_stats_history.cc +0 -173
  456. package/vendor/librocksdb/vendor/rocksdb/monitoring/persistent_stats_history.h +0 -83
  457. package/vendor/librocksdb/vendor/rocksdb/monitoring/statistics.cc +0 -561
  458. package/vendor/librocksdb/vendor/rocksdb/monitoring/statistics_impl.h +0 -143
  459. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_impl.cc +0 -163
  460. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_updater.cc +0 -328
  461. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_updater.h +0 -226
  462. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_updater_debug.cc +0 -43
  463. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_util.cc +0 -214
  464. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_util.h +0 -139
  465. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_util_debug.cc +0 -60
  466. package/vendor/librocksdb/vendor/rocksdb/options/cf_options.cc +0 -1218
  467. package/vendor/librocksdb/vendor/rocksdb/options/cf_options.h +0 -352
  468. package/vendor/librocksdb/vendor/rocksdb/options/configurable.cc +0 -720
  469. package/vendor/librocksdb/vendor/rocksdb/options/configurable_helper.h +0 -185
  470. package/vendor/librocksdb/vendor/rocksdb/options/configurable_test.h +0 -116
  471. package/vendor/librocksdb/vendor/rocksdb/options/customizable.cc +0 -133
  472. package/vendor/librocksdb/vendor/rocksdb/options/db_options.cc +0 -1113
  473. package/vendor/librocksdb/vendor/rocksdb/options/db_options.h +0 -160
  474. package/vendor/librocksdb/vendor/rocksdb/options/offpeak_time_info.cc +0 -59
  475. package/vendor/librocksdb/vendor/rocksdb/options/offpeak_time_info.h +0 -37
  476. package/vendor/librocksdb/vendor/rocksdb/options/options.cc +0 -717
  477. package/vendor/librocksdb/vendor/rocksdb/options/options_helper.cc +0 -1438
  478. package/vendor/librocksdb/vendor/rocksdb/options/options_helper.h +0 -115
  479. package/vendor/librocksdb/vendor/rocksdb/options/options_parser.cc +0 -745
  480. package/vendor/librocksdb/vendor/rocksdb/options/options_parser.h +0 -151
  481. package/vendor/librocksdb/vendor/rocksdb/port/jemalloc_helper.h +0 -107
  482. package/vendor/librocksdb/vendor/rocksdb/port/lang.h +0 -97
  483. package/vendor/librocksdb/vendor/rocksdb/port/likely.h +0 -18
  484. package/vendor/librocksdb/vendor/rocksdb/port/malloc.h +0 -17
  485. package/vendor/librocksdb/vendor/rocksdb/port/mmap.cc +0 -98
  486. package/vendor/librocksdb/vendor/rocksdb/port/mmap.h +0 -90
  487. package/vendor/librocksdb/vendor/rocksdb/port/port.h +0 -21
  488. package/vendor/librocksdb/vendor/rocksdb/port/port_dirent.h +0 -44
  489. package/vendor/librocksdb/vendor/rocksdb/port/port_example.h +0 -101
  490. package/vendor/librocksdb/vendor/rocksdb/port/port_posix.cc +0 -300
  491. package/vendor/librocksdb/vendor/rocksdb/port/port_posix.h +0 -246
  492. package/vendor/librocksdb/vendor/rocksdb/port/stack_trace.cc +0 -418
  493. package/vendor/librocksdb/vendor/rocksdb/port/stack_trace.h +0 -31
  494. package/vendor/librocksdb/vendor/rocksdb/port/sys_time.h +0 -63
  495. package/vendor/librocksdb/vendor/rocksdb/port/util_logger.h +0 -18
  496. package/vendor/librocksdb/vendor/rocksdb/port/win/env_default.cc +0 -45
  497. package/vendor/librocksdb/vendor/rocksdb/port/win/env_win.cc +0 -1436
  498. package/vendor/librocksdb/vendor/rocksdb/port/win/env_win.h +0 -305
  499. package/vendor/librocksdb/vendor/rocksdb/port/win/io_win.cc +0 -1101
  500. package/vendor/librocksdb/vendor/rocksdb/port/win/io_win.h +0 -504
  501. package/vendor/librocksdb/vendor/rocksdb/port/win/port_win.cc +0 -305
  502. package/vendor/librocksdb/vendor/rocksdb/port/win/port_win.h +0 -382
  503. package/vendor/librocksdb/vendor/rocksdb/port/win/win_jemalloc.cc +0 -80
  504. package/vendor/librocksdb/vendor/rocksdb/port/win/win_logger.cc +0 -192
  505. package/vendor/librocksdb/vendor/rocksdb/port/win/win_logger.h +0 -64
  506. package/vendor/librocksdb/vendor/rocksdb/port/win/win_thread.cc +0 -170
  507. package/vendor/librocksdb/vendor/rocksdb/port/win/win_thread.h +0 -117
  508. package/vendor/librocksdb/vendor/rocksdb/port/win/xpress_win.cc +0 -210
  509. package/vendor/librocksdb/vendor/rocksdb/port/win/xpress_win.h +0 -26
  510. package/vendor/librocksdb/vendor/rocksdb/port/xpress.h +0 -17
  511. package/vendor/librocksdb/vendor/rocksdb/rocksdb.pc.in +0 -10
  512. package/vendor/librocksdb/vendor/rocksdb/table/adaptive/adaptive_table_factory.cc +0 -119
  513. package/vendor/librocksdb/vendor/rocksdb/table/adaptive/adaptive_table_factory.h +0 -56
  514. package/vendor/librocksdb/vendor/rocksdb/table/block_based/binary_search_index_reader.cc +0 -73
  515. package/vendor/librocksdb/vendor/rocksdb/table/block_based/binary_search_index_reader.h +0 -48
  516. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block.cc +0 -1341
  517. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block.h +0 -969
  518. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_builder.cc +0 -2148
  519. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_builder.h +0 -208
  520. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_factory.cc +0 -980
  521. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_factory.h +0 -102
  522. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_iterator.cc +0 -893
  523. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_iterator.h +0 -445
  524. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_reader.cc +0 -3296
  525. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_reader.h +0 -785
  526. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_reader_impl.h +0 -205
  527. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_reader_sync_and_async.h +0 -819
  528. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_builder.cc +0 -266
  529. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_builder.h +0 -128
  530. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_cache.cc +0 -108
  531. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_cache.h +0 -190
  532. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_prefetcher.cc +0 -158
  533. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_prefetcher.h +0 -74
  534. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_prefix_index.cc +0 -226
  535. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_prefix_index.h +0 -70
  536. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_type.h +0 -34
  537. package/vendor/librocksdb/vendor/rocksdb/table/block_based/cachable_entry.h +0 -249
  538. package/vendor/librocksdb/vendor/rocksdb/table/block_based/data_block_footer.cc +0 -59
  539. package/vendor/librocksdb/vendor/rocksdb/table/block_based/data_block_footer.h +0 -25
  540. package/vendor/librocksdb/vendor/rocksdb/table/block_based/data_block_hash_index.cc +0 -94
  541. package/vendor/librocksdb/vendor/rocksdb/table/block_based/data_block_hash_index.h +0 -137
  542. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_block.h +0 -189
  543. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_block_reader_common.cc +0 -169
  544. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_block_reader_common.h +0 -79
  545. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_policy.cc +0 -1989
  546. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_policy_internal.h +0 -341
  547. package/vendor/librocksdb/vendor/rocksdb/table/block_based/flush_block_policy.cc +0 -132
  548. package/vendor/librocksdb/vendor/rocksdb/table/block_based/flush_block_policy_impl.h +0 -40
  549. package/vendor/librocksdb/vendor/rocksdb/table/block_based/full_filter_block.cc +0 -297
  550. package/vendor/librocksdb/vendor/rocksdb/table/block_based/full_filter_block.h +0 -142
  551. package/vendor/librocksdb/vendor/rocksdb/table/block_based/hash_index_reader.cc +0 -146
  552. package/vendor/librocksdb/vendor/rocksdb/table/block_based/hash_index_reader.h +0 -49
  553. package/vendor/librocksdb/vendor/rocksdb/table/block_based/index_builder.cc +0 -305
  554. package/vendor/librocksdb/vendor/rocksdb/table/block_based/index_builder.h +0 -534
  555. package/vendor/librocksdb/vendor/rocksdb/table/block_based/index_reader_common.cc +0 -62
  556. package/vendor/librocksdb/vendor/rocksdb/table/block_based/index_reader_common.h +0 -94
  557. package/vendor/librocksdb/vendor/rocksdb/table/block_based/mock_block_based_table.h +0 -62
  558. package/vendor/librocksdb/vendor/rocksdb/table/block_based/parsed_full_filter_block.cc +0 -23
  559. package/vendor/librocksdb/vendor/rocksdb/table/block_based/parsed_full_filter_block.h +0 -47
  560. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_filter_block.cc +0 -610
  561. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_filter_block.h +0 -188
  562. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_index_iterator.cc +0 -164
  563. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_index_iterator.h +0 -160
  564. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_index_reader.cc +0 -264
  565. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_index_reader.h +0 -58
  566. package/vendor/librocksdb/vendor/rocksdb/table/block_based/reader_common.cc +0 -64
  567. package/vendor/librocksdb/vendor/rocksdb/table/block_based/reader_common.h +0 -36
  568. package/vendor/librocksdb/vendor/rocksdb/table/block_based/uncompression_dict_reader.cc +0 -118
  569. package/vendor/librocksdb/vendor/rocksdb/table/block_based/uncompression_dict_reader.h +0 -60
  570. package/vendor/librocksdb/vendor/rocksdb/table/block_fetcher.cc +0 -458
  571. package/vendor/librocksdb/vendor/rocksdb/table/block_fetcher.h +0 -168
  572. package/vendor/librocksdb/vendor/rocksdb/table/compaction_merging_iterator.cc +0 -370
  573. package/vendor/librocksdb/vendor/rocksdb/table/compaction_merging_iterator.h +0 -45
  574. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_builder.cc +0 -555
  575. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_builder.h +0 -136
  576. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_factory.cc +0 -100
  577. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_factory.h +0 -80
  578. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_reader.cc +0 -416
  579. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_reader.h +0 -100
  580. package/vendor/librocksdb/vendor/rocksdb/table/format.cc +0 -708
  581. package/vendor/librocksdb/vendor/rocksdb/table/format.h +0 -439
  582. package/vendor/librocksdb/vendor/rocksdb/table/get_context.cc +0 -622
  583. package/vendor/librocksdb/vendor/rocksdb/table/get_context.h +0 -259
  584. package/vendor/librocksdb/vendor/rocksdb/table/internal_iterator.h +0 -242
  585. package/vendor/librocksdb/vendor/rocksdb/table/iter_heap.h +0 -44
  586. package/vendor/librocksdb/vendor/rocksdb/table/iterator.cc +0 -134
  587. package/vendor/librocksdb/vendor/rocksdb/table/iterator_wrapper.h +0 -225
  588. package/vendor/librocksdb/vendor/rocksdb/table/merging_iterator.cc +0 -1755
  589. package/vendor/librocksdb/vendor/rocksdb/table/merging_iterator.h +0 -100
  590. package/vendor/librocksdb/vendor/rocksdb/table/meta_blocks.cc +0 -590
  591. package/vendor/librocksdb/vendor/rocksdb/table/meta_blocks.h +0 -181
  592. package/vendor/librocksdb/vendor/rocksdb/table/mock_table.cc +0 -355
  593. package/vendor/librocksdb/vendor/rocksdb/table/mock_table.h +0 -92
  594. package/vendor/librocksdb/vendor/rocksdb/table/multiget_context.h +0 -405
  595. package/vendor/librocksdb/vendor/rocksdb/table/persistent_cache_helper.cc +0 -110
  596. package/vendor/librocksdb/vendor/rocksdb/table/persistent_cache_helper.h +0 -46
  597. package/vendor/librocksdb/vendor/rocksdb/table/persistent_cache_options.h +0 -34
  598. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_bloom.cc +0 -78
  599. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_bloom.h +0 -132
  600. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_builder.cc +0 -348
  601. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_builder.h +0 -151
  602. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_factory.cc +0 -295
  603. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_factory.h +0 -180
  604. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_index.cc +0 -211
  605. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_index.h +0 -246
  606. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_key_coding.cc +0 -508
  607. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_key_coding.h +0 -199
  608. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_reader.cc +0 -778
  609. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_reader.h +0 -243
  610. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_dumper.cc +0 -601
  611. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_dumper.h +0 -104
  612. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_reader.cc +0 -166
  613. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_writer.cc +0 -536
  614. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_writer_collectors.h +0 -97
  615. package/vendor/librocksdb/vendor/rocksdb/table/table_builder.h +0 -239
  616. package/vendor/librocksdb/vendor/rocksdb/table/table_factory.cc +0 -52
  617. package/vendor/librocksdb/vendor/rocksdb/table/table_iterator.h +0 -69
  618. package/vendor/librocksdb/vendor/rocksdb/table/table_properties.cc +0 -357
  619. package/vendor/librocksdb/vendor/rocksdb/table/table_properties_internal.h +0 -14
  620. package/vendor/librocksdb/vendor/rocksdb/table/table_reader.h +0 -202
  621. package/vendor/librocksdb/vendor/rocksdb/table/table_reader_bench.cc +0 -341
  622. package/vendor/librocksdb/vendor/rocksdb/table/two_level_iterator.cc +0 -222
  623. package/vendor/librocksdb/vendor/rocksdb/table/two_level_iterator.h +0 -43
  624. package/vendor/librocksdb/vendor/rocksdb/table/unique_id.cc +0 -223
  625. package/vendor/librocksdb/vendor/rocksdb/table/unique_id_impl.h +0 -93
  626. package/vendor/librocksdb/vendor/rocksdb/test_util/mock_time_env.cc +0 -38
  627. package/vendor/librocksdb/vendor/rocksdb/test_util/mock_time_env.h +0 -109
  628. package/vendor/librocksdb/vendor/rocksdb/test_util/secondary_cache_test_util.cc +0 -93
  629. package/vendor/librocksdb/vendor/rocksdb/test_util/secondary_cache_test_util.h +0 -131
  630. package/vendor/librocksdb/vendor/rocksdb/test_util/sync_point.cc +0 -82
  631. package/vendor/librocksdb/vendor/rocksdb/test_util/sync_point.h +0 -182
  632. package/vendor/librocksdb/vendor/rocksdb/test_util/sync_point_impl.cc +0 -152
  633. package/vendor/librocksdb/vendor/rocksdb/test_util/sync_point_impl.h +0 -96
  634. package/vendor/librocksdb/vendor/rocksdb/test_util/testharness.cc +0 -105
  635. package/vendor/librocksdb/vendor/rocksdb/test_util/testharness.h +0 -124
  636. package/vendor/librocksdb/vendor/rocksdb/test_util/testutil.cc +0 -776
  637. package/vendor/librocksdb/vendor/rocksdb/test_util/testutil.h +0 -908
  638. package/vendor/librocksdb/vendor/rocksdb/test_util/transaction_test_util.cc +0 -400
  639. package/vendor/librocksdb/vendor/rocksdb/test_util/transaction_test_util.h +0 -147
  640. package/vendor/librocksdb/vendor/rocksdb/tools/CMakeLists.txt +0 -30
  641. package/vendor/librocksdb/vendor/rocksdb/tools/blob_dump.cc +0 -103
  642. package/vendor/librocksdb/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.cc +0 -2331
  643. package/vendor/librocksdb/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.h +0 -398
  644. package/vendor/librocksdb/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer_tool.cc +0 -17
  645. package/vendor/librocksdb/vendor/rocksdb/tools/db_bench.cc +0 -21
  646. package/vendor/librocksdb/vendor/rocksdb/tools/db_bench_tool.cc +0 -8743
  647. package/vendor/librocksdb/vendor/rocksdb/tools/db_repl_stress.cc +0 -132
  648. package/vendor/librocksdb/vendor/rocksdb/tools/dump/db_dump_tool.cc +0 -264
  649. package/vendor/librocksdb/vendor/rocksdb/tools/dump/rocksdb_dump.cc +0 -60
  650. package/vendor/librocksdb/vendor/rocksdb/tools/dump/rocksdb_undump.cc +0 -59
  651. package/vendor/librocksdb/vendor/rocksdb/tools/io_tracer_parser.cc +0 -17
  652. package/vendor/librocksdb/vendor/rocksdb/tools/io_tracer_parser_tool.cc +0 -142
  653. package/vendor/librocksdb/vendor/rocksdb/tools/io_tracer_parser_tool.h +0 -38
  654. package/vendor/librocksdb/vendor/rocksdb/tools/ldb.cc +0 -13
  655. package/vendor/librocksdb/vendor/rocksdb/tools/ldb_cmd.cc +0 -5044
  656. package/vendor/librocksdb/vendor/rocksdb/tools/ldb_cmd_impl.h +0 -814
  657. package/vendor/librocksdb/vendor/rocksdb/tools/ldb_tool.cc +0 -192
  658. package/vendor/librocksdb/vendor/rocksdb/tools/simulated_hybrid_file_system.cc +0 -244
  659. package/vendor/librocksdb/vendor/rocksdb/tools/simulated_hybrid_file_system.h +0 -124
  660. package/vendor/librocksdb/vendor/rocksdb/tools/sst_dump.cc +0 -12
  661. package/vendor/librocksdb/vendor/rocksdb/tools/sst_dump_tool.cc +0 -588
  662. package/vendor/librocksdb/vendor/rocksdb/tools/trace_analyzer.cc +0 -17
  663. package/vendor/librocksdb/vendor/rocksdb/tools/trace_analyzer_tool.cc +0 -1935
  664. package/vendor/librocksdb/vendor/rocksdb/tools/trace_analyzer_tool.h +0 -329
  665. package/vendor/librocksdb/vendor/rocksdb/tools/write_stress.cc +0 -305
  666. package/vendor/librocksdb/vendor/rocksdb/trace_replay/block_cache_tracer.cc +0 -509
  667. package/vendor/librocksdb/vendor/rocksdb/trace_replay/block_cache_tracer.h +0 -239
  668. package/vendor/librocksdb/vendor/rocksdb/trace_replay/io_tracer.cc +0 -303
  669. package/vendor/librocksdb/vendor/rocksdb/trace_replay/io_tracer.h +0 -185
  670. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_record.cc +0 -206
  671. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_record_handler.cc +0 -190
  672. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_record_handler.h +0 -46
  673. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_record_result.cc +0 -146
  674. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_replay.cc +0 -632
  675. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_replay.h +0 -184
  676. package/vendor/librocksdb/vendor/rocksdb/util/aligned_buffer.h +0 -235
  677. package/vendor/librocksdb/vendor/rocksdb/util/aligned_storage.h +0 -24
  678. package/vendor/librocksdb/vendor/rocksdb/util/async_file_reader.cc +0 -84
  679. package/vendor/librocksdb/vendor/rocksdb/util/async_file_reader.h +0 -144
  680. package/vendor/librocksdb/vendor/rocksdb/util/atomic.h +0 -111
  681. package/vendor/librocksdb/vendor/rocksdb/util/autovector.h +0 -397
  682. package/vendor/librocksdb/vendor/rocksdb/util/bloom_impl.h +0 -489
  683. package/vendor/librocksdb/vendor/rocksdb/util/build_version.cc.in +0 -79
  684. package/vendor/librocksdb/vendor/rocksdb/util/cast_util.h +0 -88
  685. package/vendor/librocksdb/vendor/rocksdb/util/channel.h +0 -69
  686. package/vendor/librocksdb/vendor/rocksdb/util/cleanable.cc +0 -181
  687. package/vendor/librocksdb/vendor/rocksdb/util/coding.cc +0 -90
  688. package/vendor/librocksdb/vendor/rocksdb/util/coding.h +0 -385
  689. package/vendor/librocksdb/vendor/rocksdb/util/coding_lean.h +0 -101
  690. package/vendor/librocksdb/vendor/rocksdb/util/compaction_job_stats_impl.cc +0 -94
  691. package/vendor/librocksdb/vendor/rocksdb/util/comparator.cc +0 -443
  692. package/vendor/librocksdb/vendor/rocksdb/util/compression.cc +0 -122
  693. package/vendor/librocksdb/vendor/rocksdb/util/compression.h +0 -1879
  694. package/vendor/librocksdb/vendor/rocksdb/util/compression_context_cache.cc +0 -106
  695. package/vendor/librocksdb/vendor/rocksdb/util/compression_context_cache.h +0 -47
  696. package/vendor/librocksdb/vendor/rocksdb/util/concurrent_task_limiter_impl.cc +0 -64
  697. package/vendor/librocksdb/vendor/rocksdb/util/concurrent_task_limiter_impl.h +0 -67
  698. package/vendor/librocksdb/vendor/rocksdb/util/core_local.h +0 -85
  699. package/vendor/librocksdb/vendor/rocksdb/util/coro_utils.h +0 -112
  700. package/vendor/librocksdb/vendor/rocksdb/util/crc32c.cc +0 -1295
  701. package/vendor/librocksdb/vendor/rocksdb/util/crc32c.h +0 -56
  702. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_arm64.cc +0 -213
  703. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_arm64.h +0 -51
  704. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_ppc.c +0 -94
  705. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_ppc.h +0 -21
  706. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_ppc_asm.S +0 -756
  707. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_ppc_constants.h +0 -900
  708. package/vendor/librocksdb/vendor/rocksdb/util/data_structure.cc +0 -16
  709. package/vendor/librocksdb/vendor/rocksdb/util/defer.h +0 -82
  710. package/vendor/librocksdb/vendor/rocksdb/util/distributed_mutex.h +0 -50
  711. package/vendor/librocksdb/vendor/rocksdb/util/duplicate_detector.h +0 -69
  712. package/vendor/librocksdb/vendor/rocksdb/util/dynamic_bloom.cc +0 -70
  713. package/vendor/librocksdb/vendor/rocksdb/util/dynamic_bloom.h +0 -214
  714. package/vendor/librocksdb/vendor/rocksdb/util/fastrange.h +0 -114
  715. package/vendor/librocksdb/vendor/rocksdb/util/file_checksum_helper.cc +0 -170
  716. package/vendor/librocksdb/vendor/rocksdb/util/file_checksum_helper.h +0 -101
  717. package/vendor/librocksdb/vendor/rocksdb/util/filter_bench.cc +0 -840
  718. package/vendor/librocksdb/vendor/rocksdb/util/gflags_compat.h +0 -29
  719. package/vendor/librocksdb/vendor/rocksdb/util/hash.cc +0 -201
  720. package/vendor/librocksdb/vendor/rocksdb/util/hash.h +0 -141
  721. package/vendor/librocksdb/vendor/rocksdb/util/hash128.h +0 -26
  722. package/vendor/librocksdb/vendor/rocksdb/util/hash_containers.h +0 -51
  723. package/vendor/librocksdb/vendor/rocksdb/util/hash_map.h +0 -67
  724. package/vendor/librocksdb/vendor/rocksdb/util/heap.h +0 -174
  725. package/vendor/librocksdb/vendor/rocksdb/util/kv_map.h +0 -33
  726. package/vendor/librocksdb/vendor/rocksdb/util/log_write_bench.cc +0 -88
  727. package/vendor/librocksdb/vendor/rocksdb/util/math.h +0 -351
  728. package/vendor/librocksdb/vendor/rocksdb/util/math128.h +0 -338
  729. package/vendor/librocksdb/vendor/rocksdb/util/murmurhash.cc +0 -196
  730. package/vendor/librocksdb/vendor/rocksdb/util/murmurhash.h +0 -43
  731. package/vendor/librocksdb/vendor/rocksdb/util/mutexlock.h +0 -189
  732. package/vendor/librocksdb/vendor/rocksdb/util/overload.h +0 -23
  733. package/vendor/librocksdb/vendor/rocksdb/util/ppc-opcode.h +0 -27
  734. package/vendor/librocksdb/vendor/rocksdb/util/random.cc +0 -63
  735. package/vendor/librocksdb/vendor/rocksdb/util/random.h +0 -190
  736. package/vendor/librocksdb/vendor/rocksdb/util/rate_limiter.cc +0 -391
  737. package/vendor/librocksdb/vendor/rocksdb/util/rate_limiter_impl.h +0 -156
  738. package/vendor/librocksdb/vendor/rocksdb/util/repeatable_thread.h +0 -149
  739. package/vendor/librocksdb/vendor/rocksdb/util/ribbon_alg.h +0 -1225
  740. package/vendor/librocksdb/vendor/rocksdb/util/ribbon_config.cc +0 -498
  741. package/vendor/librocksdb/vendor/rocksdb/util/ribbon_config.h +0 -182
  742. package/vendor/librocksdb/vendor/rocksdb/util/ribbon_impl.h +0 -1137
  743. package/vendor/librocksdb/vendor/rocksdb/util/set_comparator.h +0 -24
  744. package/vendor/librocksdb/vendor/rocksdb/util/single_thread_executor.h +0 -57
  745. package/vendor/librocksdb/vendor/rocksdb/util/slice.cc +0 -366
  746. package/vendor/librocksdb/vendor/rocksdb/util/status.cc +0 -163
  747. package/vendor/librocksdb/vendor/rocksdb/util/stderr_logger.cc +0 -62
  748. package/vendor/librocksdb/vendor/rocksdb/util/stderr_logger.h +0 -41
  749. package/vendor/librocksdb/vendor/rocksdb/util/stop_watch.h +0 -136
  750. package/vendor/librocksdb/vendor/rocksdb/util/string_util.cc +0 -554
  751. package/vendor/librocksdb/vendor/rocksdb/util/string_util.h +0 -185
  752. package/vendor/librocksdb/vendor/rocksdb/util/thread_guard.h +0 -41
  753. package/vendor/librocksdb/vendor/rocksdb/util/thread_local.cc +0 -521
  754. package/vendor/librocksdb/vendor/rocksdb/util/thread_local.h +0 -100
  755. package/vendor/librocksdb/vendor/rocksdb/util/thread_operation.h +0 -122
  756. package/vendor/librocksdb/vendor/rocksdb/util/threadpool_imp.cc +0 -550
  757. package/vendor/librocksdb/vendor/rocksdb/util/threadpool_imp.h +0 -120
  758. package/vendor/librocksdb/vendor/rocksdb/util/timer.h +0 -340
  759. package/vendor/librocksdb/vendor/rocksdb/util/timer_queue.h +0 -231
  760. package/vendor/librocksdb/vendor/rocksdb/util/udt_util.cc +0 -418
  761. package/vendor/librocksdb/vendor/rocksdb/util/udt_util.h +0 -275
  762. package/vendor/librocksdb/vendor/rocksdb/util/user_comparator_wrapper.h +0 -64
  763. package/vendor/librocksdb/vendor/rocksdb/util/vector_iterator.h +0 -114
  764. package/vendor/librocksdb/vendor/rocksdb/util/work_queue.h +0 -150
  765. package/vendor/librocksdb/vendor/rocksdb/util/write_batch_util.cc +0 -25
  766. package/vendor/librocksdb/vendor/rocksdb/util/write_batch_util.h +0 -90
  767. package/vendor/librocksdb/vendor/rocksdb/util/xxhash.cc +0 -48
  768. package/vendor/librocksdb/vendor/rocksdb/util/xxhash.h +0 -6364
  769. package/vendor/librocksdb/vendor/rocksdb/util/xxph3.h +0 -1760
  770. package/vendor/librocksdb/vendor/rocksdb/utilities/agg_merge/agg_merge.cc +0 -237
  771. package/vendor/librocksdb/vendor/rocksdb/utilities/agg_merge/agg_merge_impl.h +0 -49
  772. package/vendor/librocksdb/vendor/rocksdb/utilities/agg_merge/test_agg_merge.cc +0 -103
  773. package/vendor/librocksdb/vendor/rocksdb/utilities/agg_merge/test_agg_merge.h +0 -47
  774. package/vendor/librocksdb/vendor/rocksdb/utilities/backup/backup_engine.cc +0 -3357
  775. package/vendor/librocksdb/vendor/rocksdb/utilities/backup/backup_engine_impl.h +0 -34
  776. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_compaction_filter.cc +0 -490
  777. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_compaction_filter.h +0 -202
  778. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db.cc +0 -109
  779. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db.h +0 -231
  780. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_gc_stats.h +0 -54
  781. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_impl.cc +0 -2269
  782. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_impl.h +0 -514
  783. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_impl_filesnapshot.cc +0 -127
  784. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_iterator.h +0 -148
  785. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_listener.h +0 -71
  786. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_dump_tool.cc +0 -276
  787. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_dump_tool.h +0 -56
  788. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_file.cc +0 -311
  789. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_file.h +0 -245
  790. package/vendor/librocksdb/vendor/rocksdb/utilities/cache_dump_load.cc +0 -67
  791. package/vendor/librocksdb/vendor/rocksdb/utilities/cache_dump_load_impl.cc +0 -389
  792. package/vendor/librocksdb/vendor/rocksdb/utilities/cache_dump_load_impl.h +0 -368
  793. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/cassandra_compaction_filter.cc +0 -104
  794. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/cassandra_compaction_filter.h +0 -57
  795. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/cassandra_options.h +0 -41
  796. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/format.cc +0 -365
  797. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/format.h +0 -183
  798. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/merge_operator.cc +0 -76
  799. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/merge_operator.h +0 -43
  800. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/serialize.h +0 -81
  801. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/test_utils.cc +0 -67
  802. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/test_utils.h +0 -42
  803. package/vendor/librocksdb/vendor/rocksdb/utilities/checkpoint/checkpoint_impl.cc +0 -472
  804. package/vendor/librocksdb/vendor/rocksdb/utilities/checkpoint/checkpoint_impl.h +0 -64
  805. package/vendor/librocksdb/vendor/rocksdb/utilities/compaction_filters/layered_compaction_filter_base.h +0 -41
  806. package/vendor/librocksdb/vendor/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.cc +0 -24
  807. package/vendor/librocksdb/vendor/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.h +0 -26
  808. package/vendor/librocksdb/vendor/rocksdb/utilities/compaction_filters.cc +0 -52
  809. package/vendor/librocksdb/vendor/rocksdb/utilities/convenience/info_log_finder.cc +0 -26
  810. package/vendor/librocksdb/vendor/rocksdb/utilities/counted_fs.cc +0 -379
  811. package/vendor/librocksdb/vendor/rocksdb/utilities/counted_fs.h +0 -158
  812. package/vendor/librocksdb/vendor/rocksdb/utilities/debug.cc +0 -134
  813. package/vendor/librocksdb/vendor/rocksdb/utilities/env_mirror.cc +0 -280
  814. package/vendor/librocksdb/vendor/rocksdb/utilities/env_timed.cc +0 -181
  815. package/vendor/librocksdb/vendor/rocksdb/utilities/env_timed.h +0 -95
  816. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_env.cc +0 -555
  817. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_env.h +0 -252
  818. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_fs.cc +0 -1507
  819. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_fs.h +0 -760
  820. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_secondary_cache.cc +0 -138
  821. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_secondary_cache.h +0 -115
  822. package/vendor/librocksdb/vendor/rocksdb/utilities/leveldb_options/leveldb_options.cc +0 -57
  823. package/vendor/librocksdb/vendor/rocksdb/utilities/memory/memory_util.cc +0 -50
  824. package/vendor/librocksdb/vendor/rocksdb/utilities/memory_allocators.h +0 -103
  825. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/bytesxor.cc +0 -57
  826. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/bytesxor.h +0 -39
  827. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/max.cc +0 -64
  828. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/max_operator.h +0 -35
  829. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/put.cc +0 -74
  830. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/put_operator.h +0 -56
  831. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/sortlist.cc +0 -97
  832. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/sortlist.h +0 -42
  833. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/string_append/stringappend.cc +0 -76
  834. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/string_append/stringappend.h +0 -32
  835. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/string_append/stringappend2.cc +0 -129
  836. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/string_append/stringappend2.h +0 -51
  837. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/uint64add.cc +0 -56
  838. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/uint64add.h +0 -35
  839. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators.cc +0 -115
  840. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators.h +0 -36
  841. package/vendor/librocksdb/vendor/rocksdb/utilities/object_registry.cc +0 -381
  842. package/vendor/librocksdb/vendor/rocksdb/utilities/option_change_migration/option_change_migration.cc +0 -169
  843. package/vendor/librocksdb/vendor/rocksdb/utilities/options/options_util.cc +0 -117
  844. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier.cc +0 -420
  845. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier.h +0 -154
  846. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc +0 -607
  847. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file.h +0 -291
  848. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file_buffer.h +0 -127
  849. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.cc +0 -84
  850. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.h +0 -122
  851. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/hash_table.h +0 -237
  852. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/hash_table_bench.cc +0 -310
  853. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/hash_table_evictable.h +0 -166
  854. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/lrulist.h +0 -172
  855. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_bench.cc +0 -355
  856. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_test.h +0 -284
  857. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_tier.cc +0 -165
  858. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_tier.h +0 -340
  859. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_util.h +0 -67
  860. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc +0 -138
  861. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/volatile_tier_impl.h +0 -139
  862. package/vendor/librocksdb/vendor/rocksdb/utilities/simulator_cache/cache_simulator.cc +0 -287
  863. package/vendor/librocksdb/vendor/rocksdb/utilities/simulator_cache/cache_simulator.h +0 -231
  864. package/vendor/librocksdb/vendor/rocksdb/utilities/simulator_cache/sim_cache.cc +0 -375
  865. package/vendor/librocksdb/vendor/rocksdb/utilities/table_properties_collectors/compact_for_tiering_collector.cc +0 -144
  866. package/vendor/librocksdb/vendor/rocksdb/utilities/table_properties_collectors/compact_for_tiering_collector.h +0 -45
  867. package/vendor/librocksdb/vendor/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.cc +0 -233
  868. package/vendor/librocksdb/vendor/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.h +0 -65
  869. package/vendor/librocksdb/vendor/rocksdb/utilities/trace/file_trace_reader_writer.cc +0 -132
  870. package/vendor/librocksdb/vendor/rocksdb/utilities/trace/file_trace_reader_writer.h +0 -48
  871. package/vendor/librocksdb/vendor/rocksdb/utilities/trace/replayer_impl.cc +0 -313
  872. package/vendor/librocksdb/vendor/rocksdb/utilities/trace/replayer_impl.h +0 -84
  873. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/lock_manager.cc +0 -27
  874. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/lock_manager.h +0 -80
  875. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/lock_tracker.h +0 -207
  876. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager.cc +0 -718
  877. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager.h +0 -222
  878. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager_test.h +0 -324
  879. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_tracker.cc +0 -255
  880. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_tracker.h +0 -97
  881. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_lock_manager.h +0 -34
  882. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/db.h +0 -81
  883. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/ft/comparator.h +0 -138
  884. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/ft/ft-status.h +0 -102
  885. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/concurrent_tree.cc +0 -137
  886. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/concurrent_tree.h +0 -174
  887. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/keyrange.cc +0 -220
  888. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/keyrange.h +0 -141
  889. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/lock_request.cc +0 -525
  890. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/lock_request.h +0 -255
  891. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/locktree.cc +0 -1021
  892. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/locktree.h +0 -580
  893. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/manager.cc +0 -525
  894. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/range_buffer.cc +0 -263
  895. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/range_buffer.h +0 -178
  896. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/treenode.cc +0 -518
  897. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/treenode.h +0 -302
  898. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/txnid_set.cc +0 -118
  899. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/txnid_set.h +0 -92
  900. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/wfg.cc +0 -211
  901. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/wfg.h +0 -124
  902. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/memory.h +0 -215
  903. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_assert_subst.h +0 -43
  904. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_atomic.h +0 -130
  905. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_external_pthread.h +0 -87
  906. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_instrumentation.h +0 -286
  907. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_portability.h +0 -87
  908. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_pthread.h +0 -520
  909. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_race_tools.h +0 -179
  910. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_time.h +0 -197
  911. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/txn_subst.h +0 -31
  912. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/standalone_port.cc +0 -139
  913. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/dbt.cc +0 -165
  914. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/dbt.h +0 -98
  915. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/growable_array.h +0 -144
  916. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/memarena.cc +0 -199
  917. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/memarena.h +0 -141
  918. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/omt.h +0 -794
  919. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/omt_impl.h +0 -1295
  920. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/partitioned_counter.h +0 -165
  921. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/status.h +0 -76
  922. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_manager.cc +0 -501
  923. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_manager.h +0 -135
  924. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_tracker.cc +0 -156
  925. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_tracker.h +0 -146
  926. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/optimistic_transaction.cc +0 -208
  927. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/optimistic_transaction.h +0 -99
  928. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/optimistic_transaction_db_impl.cc +0 -111
  929. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/optimistic_transaction_db_impl.h +0 -110
  930. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/pessimistic_transaction.cc +0 -1278
  931. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/pessimistic_transaction.h +0 -345
  932. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/pessimistic_transaction_db.cc +0 -845
  933. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/pessimistic_transaction_db.h +0 -345
  934. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/snapshot_checker.cc +0 -37
  935. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_base.cc +0 -912
  936. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_base.h +0 -455
  937. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_db_mutex_impl.cc +0 -133
  938. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_db_mutex_impl.h +0 -24
  939. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_test.h +0 -589
  940. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_util.cc +0 -207
  941. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_util.h +0 -86
  942. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_prepared_txn.cc +0 -548
  943. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_prepared_txn.h +0 -118
  944. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_prepared_txn_db.cc +0 -1100
  945. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_prepared_txn_db.h +0 -1149
  946. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_unprepared_txn.cc +0 -1089
  947. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_unprepared_txn.h +0 -333
  948. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_unprepared_txn_db.cc +0 -486
  949. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_unprepared_txn_db.h +0 -105
  950. package/vendor/librocksdb/vendor/rocksdb/utilities/ttl/db_ttl_impl.cc +0 -638
  951. package/vendor/librocksdb/vendor/rocksdb/utilities/ttl/db_ttl_impl.h +0 -239
  952. package/vendor/librocksdb/vendor/rocksdb/utilities/types_util.cc +0 -88
  953. package/vendor/librocksdb/vendor/rocksdb/utilities/wal_filter.cc +0 -22
  954. package/vendor/librocksdb/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index.cc +0 -1134
  955. package/vendor/librocksdb/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.cc +0 -934
  956. package/vendor/librocksdb/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.h +0 -468
@@ -1,1578 +0,0 @@
1
- // Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
2
- // This source code is licensed under both the GPLv2 (found in the
3
- // COPYING file in the root directory) and Apache 2.0 License
4
- // (found in the LICENSE.Apache file in the root directory).
5
- //
6
- // Copyright (c) 2011 The LevelDB Authors. All rights reserved.
7
- // Use of this source code is governed by a BSD-style license that can be
8
- // found in the LICENSE file. See the AUTHORS file for names of contributors.
9
-
10
- #include "db/compaction/compaction_picker_universal.h"
11
-
12
- #include <cstdint>
13
- #include <limits>
14
- #include <queue>
15
- #include <string>
16
- #include <utility>
17
-
18
- #include "db/column_family.h"
19
- #include "file/filename.h"
20
- #include "logging/log_buffer.h"
21
- #include "logging/logging.h"
22
- #include "monitoring/statistics_impl.h"
23
- #include "test_util/sync_point.h"
24
- #include "util/random.h"
25
- #include "util/string_util.h"
26
-
27
- namespace ROCKSDB_NAMESPACE {
28
- namespace {
29
- // A helper class that form universal compactions. The class is used by
30
- // UniversalCompactionPicker::PickCompaction().
31
- // The usage is to create the class, and get the compaction object by calling
32
- // PickCompaction().
33
- class UniversalCompactionBuilder {
34
- public:
35
- UniversalCompactionBuilder(
36
- const ImmutableOptions& ioptions, const InternalKeyComparator* icmp,
37
- const std::string& cf_name, const MutableCFOptions& mutable_cf_options,
38
- const MutableDBOptions& mutable_db_options, VersionStorageInfo* vstorage,
39
- UniversalCompactionPicker* picker, LogBuffer* log_buffer)
40
- : ioptions_(ioptions),
41
- icmp_(icmp),
42
- cf_name_(cf_name),
43
- mutable_cf_options_(mutable_cf_options),
44
- mutable_db_options_(mutable_db_options),
45
- vstorage_(vstorage),
46
- picker_(picker),
47
- log_buffer_(log_buffer) {}
48
-
49
- // Form and return the compaction object. The caller owns return object.
50
- Compaction* PickCompaction();
51
-
52
- private:
53
- struct SortedRun {
54
- SortedRun(int _level, FileMetaData* _file, uint64_t _size,
55
- uint64_t _compensated_file_size, bool _being_compacted)
56
- : level(_level),
57
- file(_file),
58
- size(_size),
59
- compensated_file_size(_compensated_file_size),
60
- being_compacted(_being_compacted) {
61
- assert(compensated_file_size > 0);
62
- assert(level != 0 || file != nullptr);
63
- }
64
-
65
- void Dump(char* out_buf, size_t out_buf_size,
66
- bool print_path = false) const;
67
-
68
- // sorted_run_count is added into the string to print
69
- void DumpSizeInfo(char* out_buf, size_t out_buf_size,
70
- size_t sorted_run_count) const;
71
-
72
- int level;
73
- // `file` Will be null for level > 0. For level = 0, the sorted run is
74
- // for this file.
75
- FileMetaData* file;
76
- // For level > 0, `size` and `compensated_file_size` are sum of sizes all
77
- // files in the level. `being_compacted` should be the same for all files
78
- // in a non-zero level. Use the value here.
79
- uint64_t size;
80
- uint64_t compensated_file_size;
81
- bool being_compacted;
82
- };
83
-
84
- // Pick Universal compaction to limit read amplification
85
- Compaction* PickCompactionToReduceSortedRuns(
86
- unsigned int ratio, unsigned int max_number_of_files_to_compact);
87
-
88
- // Pick Universal compaction to limit space amplification.
89
- Compaction* PickCompactionToReduceSizeAmp();
90
-
91
- // Try to pick incremental compaction to reduce space amplification.
92
- // It will return null if it cannot find a fanout within the threshold.
93
- // Fanout is defined as
94
- // total size of files to compact at output level
95
- // --------------------------------------------------
96
- // total size of files to compact at other levels
97
- Compaction* PickIncrementalForReduceSizeAmp(double fanout_threshold);
98
-
99
- Compaction* PickDeleteTriggeredCompaction();
100
-
101
- // Form a compaction from the sorted run indicated by start_index to the
102
- // oldest sorted run.
103
- // The caller is responsible for making sure that those files are not in
104
- // compaction.
105
- Compaction* PickCompactionToOldest(size_t start_index,
106
- CompactionReason compaction_reason);
107
-
108
- Compaction* PickCompactionWithSortedRunRange(
109
- size_t start_index, size_t end_index, CompactionReason compaction_reason);
110
-
111
- // Try to pick periodic compaction. The caller should only call it
112
- // if there is at least one file marked for periodic compaction.
113
- // null will be returned if no such a compaction can be formed
114
- // because some files are being compacted.
115
- Compaction* PickPeriodicCompaction();
116
-
117
- bool ShouldSkipLastSortedRunForSizeAmpCompaction() const {
118
- assert(!sorted_runs_.empty());
119
- return ioptions_.preclude_last_level_data_seconds > 0 &&
120
- ioptions_.num_levels > 2 &&
121
- sorted_runs_.back().level == ioptions_.num_levels - 1 &&
122
- sorted_runs_.size() > 1;
123
- }
124
- // Used in universal compaction when the allow_trivial_move
125
- // option is set. Checks whether there are any overlapping files
126
- // in the input. Returns true if the input files are non
127
- // overlapping.
128
- bool IsInputFilesNonOverlapping(Compaction* c);
129
-
130
- uint64_t GetMaxOverlappingBytes() const;
131
-
132
- // To conditionally exclude some of the newest L0 files
133
- // from a size amp compaction. This is to prevent a large number of L0
134
- // files from being locked by a size amp compaction, potentially leading to
135
- // write stop with a few more flushes.
136
- //
137
- // Such exclusion is based on `num_l0_input_pre_exclusion`,
138
- // `level0_stop_writes_trigger`, `max/min_merge_width` and the pre-exclusion
139
- // compaction score. Noted that it will not make the size amp compaction of
140
- // interest invalid from running as a size amp compaction as long as its
141
- // pre-exclusion compaction score satisfies the condition to run.
142
- //
143
- // @param `num_l0_input_pre_exclusion` Number of L0 input files prior to
144
- // exclusion
145
- // @param `end_index` Index of the last sorted run selected as compaction
146
- // input. Will not be affected by this exclusion.
147
- // @param `start_index` Index of the first input sorted run prior to
148
- // exclusion. Will be modified as output based on the exclusion.
149
- // @param `candidate_size` Total size of all except for the last input sorted
150
- // runs prior to exclusion. Will be modified as output based on the exclusion.
151
- //
152
- // @return Number of L0 files to exclude. `start_index` and
153
- // `candidate_size` will be modified accordingly
154
- std::size_t MightExcludeNewL0sToReduceWriteStop(
155
- std::size_t num_l0_input_pre_exclusion, std::size_t end_index,
156
- std::size_t& start_index, uint64_t& candidate_size) const {
157
- if (num_l0_input_pre_exclusion == 0) {
158
- return 0;
159
- }
160
-
161
- assert(start_index <= end_index && sorted_runs_.size() > end_index);
162
- assert(mutable_cf_options_.level0_stop_writes_trigger > 0);
163
- const std::size_t level0_stop_writes_trigger = static_cast<std::size_t>(
164
- mutable_cf_options_.level0_stop_writes_trigger);
165
- const std::size_t max_merge_width = static_cast<std::size_t>(
166
- mutable_cf_options_.compaction_options_universal.max_merge_width);
167
- const std::size_t min_merge_width = static_cast<std::size_t>(
168
- mutable_cf_options_.compaction_options_universal.min_merge_width);
169
- const uint64_t max_size_amplification_percent =
170
- mutable_cf_options_.compaction_options_universal
171
- .max_size_amplification_percent;
172
- const uint64_t base_sr_size = sorted_runs_[end_index].size;
173
-
174
- // Leave at least 1 L0 file and 2 input sorted runs after exclusion
175
- const std::size_t max_num_l0_to_exclude =
176
- std::min(num_l0_input_pre_exclusion - 1, end_index - start_index - 1);
177
- // In universal compaction, sorted runs from non L0 levels are counted
178
- // toward `level0_stop_writes_trigger`. Therefore we need to subtract the
179
- // total number of sorted runs picked originally for this compaction from
180
- // `level0_stop_writes_trigger` to calculate
181
- // `num_extra_l0_before_write_stop`
182
- const std::size_t num_extra_l0_before_write_stop =
183
- level0_stop_writes_trigger -
184
- std::min(level0_stop_writes_trigger, end_index - start_index + 1);
185
- const std::size_t num_l0_to_exclude_for_max_merge_width =
186
- std::min(max_merge_width -
187
- std::min(max_merge_width, num_extra_l0_before_write_stop),
188
- max_num_l0_to_exclude);
189
- const std::size_t num_l0_to_exclude_for_min_merge_width =
190
- std::min(min_merge_width -
191
- std::min(min_merge_width, num_extra_l0_before_write_stop),
192
- max_num_l0_to_exclude);
193
-
194
- std::size_t num_l0_to_exclude = 0;
195
- uint64_t candidate_size_post_exclusion = candidate_size;
196
-
197
- for (std::size_t possible_num_l0_to_exclude =
198
- num_l0_to_exclude_for_min_merge_width;
199
- possible_num_l0_to_exclude <= num_l0_to_exclude_for_max_merge_width;
200
- ++possible_num_l0_to_exclude) {
201
- uint64_t current_candidate_size = candidate_size_post_exclusion;
202
- for (std::size_t j = num_l0_to_exclude; j < possible_num_l0_to_exclude;
203
- ++j) {
204
- current_candidate_size -=
205
- sorted_runs_.at(start_index + j).compensated_file_size;
206
- }
207
-
208
- // To ensure the compaction score before and after exclusion is similar
209
- // so this exclusion will not make the size amp compaction of
210
- // interest invalid from running as a size amp compaction as long as its
211
- // pre-exclusion compaction score satisfies the condition to run.
212
- if (current_candidate_size * 100 <
213
- max_size_amplification_percent * base_sr_size ||
214
- current_candidate_size < candidate_size * 9 / 10) {
215
- break;
216
- }
217
- num_l0_to_exclude = possible_num_l0_to_exclude;
218
- candidate_size_post_exclusion = current_candidate_size;
219
- }
220
-
221
- start_index += num_l0_to_exclude;
222
- candidate_size = candidate_size_post_exclusion;
223
- return num_l0_to_exclude;
224
- }
225
-
226
- const ImmutableOptions& ioptions_;
227
- const InternalKeyComparator* icmp_;
228
- double score_;
229
- std::vector<SortedRun> sorted_runs_;
230
- uint64_t max_run_size_;
231
- const std::string& cf_name_;
232
- const MutableCFOptions& mutable_cf_options_;
233
- const MutableDBOptions& mutable_db_options_;
234
- VersionStorageInfo* vstorage_;
235
- UniversalCompactionPicker* picker_;
236
- LogBuffer* log_buffer_;
237
-
238
- static std::vector<UniversalCompactionBuilder::SortedRun> CalculateSortedRuns(
239
- const VersionStorageInfo& vstorage, int last_level,
240
- uint64_t* max_run_size);
241
-
242
- // Pick a path ID to place a newly generated file, with its estimated file
243
- // size.
244
- static uint32_t GetPathId(const ImmutableCFOptions& ioptions,
245
- const MutableCFOptions& mutable_cf_options,
246
- uint64_t file_size);
247
- };
248
-
249
- // Used in universal compaction when trivial move is enabled.
250
- // This structure is used for the construction of min heap
251
- // that contains the file meta data, the level of the file
252
- // and the index of the file in that level
253
-
254
- struct InputFileInfo {
255
- InputFileInfo() : f(nullptr), level(0), index(0) {}
256
-
257
- FileMetaData* f;
258
- size_t level;
259
- size_t index;
260
- };
261
-
262
- // Used in universal compaction when trivial move is enabled.
263
- // This comparator is used for the construction of min heap
264
- // based on the smallest key of the file.
265
- struct SmallestKeyHeapComparator {
266
- explicit SmallestKeyHeapComparator(const Comparator* ucmp) { ucmp_ = ucmp; }
267
-
268
- bool operator()(InputFileInfo i1, InputFileInfo i2) const {
269
- return (ucmp_->CompareWithoutTimestamp(i1.f->smallest.user_key(),
270
- i2.f->smallest.user_key()) > 0);
271
- }
272
-
273
- private:
274
- const Comparator* ucmp_;
275
- };
276
-
277
- using SmallestKeyHeap =
278
- std::priority_queue<InputFileInfo, std::vector<InputFileInfo>,
279
- SmallestKeyHeapComparator>;
280
-
281
- // This function creates the heap that is used to find if the files are
282
- // overlapping during universal compaction when the allow_trivial_move
283
- // is set.
284
- SmallestKeyHeap create_level_heap(Compaction* c, const Comparator* ucmp) {
285
- SmallestKeyHeap smallest_key_priority_q =
286
- SmallestKeyHeap(SmallestKeyHeapComparator(ucmp));
287
-
288
- InputFileInfo input_file;
289
-
290
- for (size_t l = 0; l < c->num_input_levels(); l++) {
291
- if (c->num_input_files(l) != 0) {
292
- if (l == 0 && c->start_level() == 0) {
293
- for (size_t i = 0; i < c->num_input_files(0); i++) {
294
- input_file.f = c->input(0, i);
295
- input_file.level = 0;
296
- input_file.index = i;
297
- smallest_key_priority_q.push(std::move(input_file));
298
- }
299
- } else {
300
- input_file.f = c->input(l, 0);
301
- input_file.level = l;
302
- input_file.index = 0;
303
- smallest_key_priority_q.push(std::move(input_file));
304
- }
305
- }
306
- }
307
- return smallest_key_priority_q;
308
- }
309
-
310
- #ifndef NDEBUG
311
- // smallest_seqno and largest_seqno are set iff. `files` is not empty.
312
- void GetSmallestLargestSeqno(const std::vector<FileMetaData*>& files,
313
- SequenceNumber* smallest_seqno,
314
- SequenceNumber* largest_seqno) {
315
- bool is_first = true;
316
- for (FileMetaData* f : files) {
317
- assert(f->fd.smallest_seqno <= f->fd.largest_seqno);
318
- if (is_first) {
319
- is_first = false;
320
- *smallest_seqno = f->fd.smallest_seqno;
321
- *largest_seqno = f->fd.largest_seqno;
322
- } else {
323
- if (f->fd.smallest_seqno < *smallest_seqno) {
324
- *smallest_seqno = f->fd.smallest_seqno;
325
- }
326
- if (f->fd.largest_seqno > *largest_seqno) {
327
- *largest_seqno = f->fd.largest_seqno;
328
- }
329
- }
330
- }
331
- }
332
- #endif
333
- } // namespace
334
-
335
- // Algorithm that checks to see if there are any overlapping
336
- // files in the input
337
- bool UniversalCompactionBuilder::IsInputFilesNonOverlapping(Compaction* c) {
338
- auto comparator = icmp_->user_comparator();
339
- int first_iter = 1;
340
-
341
- InputFileInfo prev, curr, next;
342
-
343
- SmallestKeyHeap smallest_key_priority_q =
344
- create_level_heap(c, icmp_->user_comparator());
345
-
346
- while (!smallest_key_priority_q.empty()) {
347
- curr = smallest_key_priority_q.top();
348
- smallest_key_priority_q.pop();
349
-
350
- if (first_iter) {
351
- prev = curr;
352
- first_iter = 0;
353
- } else {
354
- if (comparator->CompareWithoutTimestamp(
355
- prev.f->largest.user_key(), curr.f->smallest.user_key()) >= 0) {
356
- // found overlapping files, return false
357
- return false;
358
- }
359
- assert(comparator->CompareWithoutTimestamp(
360
- curr.f->largest.user_key(), prev.f->largest.user_key()) > 0);
361
- prev = curr;
362
- }
363
-
364
- next.f = nullptr;
365
-
366
- if (c->level(curr.level) != 0 &&
367
- curr.index < c->num_input_files(curr.level) - 1) {
368
- next.f = c->input(curr.level, curr.index + 1);
369
- next.level = curr.level;
370
- next.index = curr.index + 1;
371
- }
372
-
373
- if (next.f) {
374
- smallest_key_priority_q.push(std::move(next));
375
- }
376
- }
377
- return true;
378
- }
379
-
380
- bool UniversalCompactionPicker::NeedsCompaction(
381
- const VersionStorageInfo* vstorage) const {
382
- const int kLevel0 = 0;
383
- if (vstorage->CompactionScore(kLevel0) >= 1) {
384
- return true;
385
- }
386
- if (!vstorage->FilesMarkedForPeriodicCompaction().empty()) {
387
- return true;
388
- }
389
- if (!vstorage->FilesMarkedForCompaction().empty()) {
390
- return true;
391
- }
392
- return false;
393
- }
394
-
395
- Compaction* UniversalCompactionPicker::PickCompaction(
396
- const std::string& cf_name, const MutableCFOptions& mutable_cf_options,
397
- const MutableDBOptions& mutable_db_options, VersionStorageInfo* vstorage,
398
- LogBuffer* log_buffer) {
399
- UniversalCompactionBuilder builder(ioptions_, icmp_, cf_name,
400
- mutable_cf_options, mutable_db_options,
401
- vstorage, this, log_buffer);
402
- return builder.PickCompaction();
403
- }
404
-
405
- void UniversalCompactionBuilder::SortedRun::Dump(char* out_buf,
406
- size_t out_buf_size,
407
- bool print_path) const {
408
- if (level == 0) {
409
- assert(file != nullptr);
410
- if (file->fd.GetPathId() == 0 || !print_path) {
411
- snprintf(out_buf, out_buf_size, "file %" PRIu64, file->fd.GetNumber());
412
- } else {
413
- snprintf(out_buf, out_buf_size,
414
- "file %" PRIu64
415
- "(path "
416
- "%" PRIu32 ")",
417
- file->fd.GetNumber(), file->fd.GetPathId());
418
- }
419
- } else {
420
- snprintf(out_buf, out_buf_size, "level %d", level);
421
- }
422
- }
423
-
424
- void UniversalCompactionBuilder::SortedRun::DumpSizeInfo(
425
- char* out_buf, size_t out_buf_size, size_t sorted_run_count) const {
426
- if (level == 0) {
427
- assert(file != nullptr);
428
- snprintf(out_buf, out_buf_size,
429
- "file %" PRIu64 "[%" ROCKSDB_PRIszt
430
- "] "
431
- "with size %" PRIu64 " (compensated size %" PRIu64 ")",
432
- file->fd.GetNumber(), sorted_run_count, file->fd.GetFileSize(),
433
- file->compensated_file_size);
434
- } else {
435
- snprintf(out_buf, out_buf_size,
436
- "level %d[%" ROCKSDB_PRIszt
437
- "] "
438
- "with size %" PRIu64 " (compensated size %" PRIu64 ")",
439
- level, sorted_run_count, size, compensated_file_size);
440
- }
441
- }
442
-
443
- std::vector<UniversalCompactionBuilder::SortedRun>
444
- UniversalCompactionBuilder::CalculateSortedRuns(
445
- const VersionStorageInfo& vstorage, int last_level,
446
- uint64_t* max_run_size) {
447
- assert(max_run_size);
448
- *max_run_size = 0;
449
- std::vector<UniversalCompactionBuilder::SortedRun> ret;
450
- for (FileMetaData* f : vstorage.LevelFiles(0)) {
451
- ret.emplace_back(0, f, f->fd.GetFileSize(), f->compensated_file_size,
452
- f->being_compacted);
453
- *max_run_size = std::max(*max_run_size, f->fd.GetFileSize());
454
- }
455
- for (int level = 1; level <= last_level; level++) {
456
- uint64_t total_compensated_size = 0U;
457
- uint64_t total_size = 0U;
458
- bool being_compacted = false;
459
- for (FileMetaData* f : vstorage.LevelFiles(level)) {
460
- total_compensated_size += f->compensated_file_size;
461
- total_size += f->fd.GetFileSize();
462
- // Size amp, read amp and periodic compactions always include all files
463
- // for a non-zero level. However, a delete triggered compaction and
464
- // a trivial move might pick a subset of files in a sorted run. So
465
- // always check all files in a sorted run and mark the entire run as
466
- // being compacted if one or more files are being compacted
467
- if (f->being_compacted) {
468
- being_compacted = f->being_compacted;
469
- }
470
- }
471
- if (total_compensated_size > 0) {
472
- ret.emplace_back(level, nullptr, total_size, total_compensated_size,
473
- being_compacted);
474
- }
475
- *max_run_size = std::max(*max_run_size, total_size);
476
- }
477
- return ret;
478
- }
479
-
480
- // Universal style of compaction. Pick files that are contiguous in
481
- // time-range to compact.
482
- Compaction* UniversalCompactionBuilder::PickCompaction() {
483
- const int kLevel0 = 0;
484
- score_ = vstorage_->CompactionScore(kLevel0);
485
- int max_output_level =
486
- vstorage_->MaxOutputLevel(ioptions_.allow_ingest_behind);
487
- max_run_size_ = 0;
488
- sorted_runs_ =
489
- CalculateSortedRuns(*vstorage_, max_output_level, &max_run_size_);
490
- int file_num_compaction_trigger =
491
- mutable_cf_options_.level0_file_num_compaction_trigger;
492
-
493
- if (sorted_runs_.size() == 0 ||
494
- (vstorage_->FilesMarkedForPeriodicCompaction().empty() &&
495
- vstorage_->FilesMarkedForCompaction().empty() &&
496
- sorted_runs_.size() < (unsigned int)file_num_compaction_trigger)) {
497
- ROCKS_LOG_BUFFER(log_buffer_, "[%s] Universal: nothing to do\n",
498
- cf_name_.c_str());
499
- TEST_SYNC_POINT_CALLBACK(
500
- "UniversalCompactionBuilder::PickCompaction:Return", nullptr);
501
- return nullptr;
502
- }
503
- VersionStorageInfo::LevelSummaryStorage tmp;
504
- ROCKS_LOG_BUFFER_MAX_SZ(
505
- log_buffer_, 3072,
506
- "[%s] Universal: sorted runs: %" ROCKSDB_PRIszt " files: %s\n",
507
- cf_name_.c_str(), sorted_runs_.size(), vstorage_->LevelSummary(&tmp));
508
-
509
- Compaction* c = nullptr;
510
- // Periodic compaction has higher priority than other type of compaction
511
- // because it's a hard requirement.
512
- if (!vstorage_->FilesMarkedForPeriodicCompaction().empty()) {
513
- // Always need to do a full compaction for periodic compaction.
514
- c = PickPeriodicCompaction();
515
- TEST_SYNC_POINT_CALLBACK("PostPickPeriodicCompaction", c);
516
- }
517
-
518
- if (c == nullptr &&
519
- sorted_runs_.size() >= static_cast<size_t>(file_num_compaction_trigger)) {
520
- // Check for size amplification.
521
- if ((c = PickCompactionToReduceSizeAmp()) != nullptr) {
522
- TEST_SYNC_POINT("PickCompactionToReduceSizeAmpReturnNonnullptr");
523
- ROCKS_LOG_BUFFER(log_buffer_, "[%s] Universal: compacting for size amp\n",
524
- cf_name_.c_str());
525
- } else {
526
- // Size amplification is within limits. Try reducing read
527
- // amplification while maintaining file size ratios.
528
- unsigned int ratio =
529
- mutable_cf_options_.compaction_options_universal.size_ratio;
530
-
531
- if ((c = PickCompactionToReduceSortedRuns(ratio, UINT_MAX)) != nullptr) {
532
- TEST_SYNC_POINT("PickCompactionToReduceSortedRunsReturnNonnullptr");
533
- ROCKS_LOG_BUFFER(log_buffer_,
534
- "[%s] Universal: compacting for size ratio\n",
535
- cf_name_.c_str());
536
- } else {
537
- // Size amplification and file size ratios are within configured limits.
538
- // If max read amplification exceeds configured limits, then force
539
- // compaction to reduce the number sorted runs without looking at file
540
- // size ratios.
541
-
542
- // This is guaranteed by NeedsCompaction()
543
- assert(sorted_runs_.size() >=
544
- static_cast<size_t>(file_num_compaction_trigger));
545
- int max_num_runs =
546
- mutable_cf_options_.compaction_options_universal.max_read_amp;
547
- if (max_num_runs < 0) {
548
- // any value < -1 is not valid
549
- assert(max_num_runs == -1);
550
- // By default, fall back to `level0_file_num_compaction_trigger`
551
- max_num_runs = file_num_compaction_trigger;
552
- } else if (max_num_runs == 0) {
553
- if (mutable_cf_options_.compaction_options_universal.stop_style ==
554
- kCompactionStopStyleTotalSize) {
555
- // 0 means auto-tuning by RocksDB. We estimate max num run based on
556
- // max_run_size, size_ratio and write buffer size:
557
- // Assume the size of the lowest level size is equal to
558
- // write_buffer_size. Each subsequent level is the max size without
559
- // triggering size_ratio compaction. `max_num_runs` is the minimum
560
- // number of levels required such that the target size of the
561
- // largest level is at least `max_run_size_`.
562
- max_num_runs = 1;
563
- double cur_level_max_size =
564
- static_cast<double>(mutable_cf_options_.write_buffer_size);
565
- double total_run_size = 0;
566
- while (cur_level_max_size < static_cast<double>(max_run_size_)) {
567
- // This loop should not take too many iterations since
568
- // cur_level_max_size at least doubles each iteration.
569
- total_run_size += cur_level_max_size;
570
- cur_level_max_size = (100.0 + ratio) / 100.0 * total_run_size;
571
- ++max_num_runs;
572
- }
573
- } else {
574
- // TODO: implement the auto-tune logic for this stop style
575
- max_num_runs = file_num_compaction_trigger;
576
- }
577
- } else {
578
- // max_num_runs > 0, it's the limit on the number of sorted run
579
- }
580
- // Get the total number of sorted runs that are not being compacted
581
- int num_sr_not_compacted = 0;
582
- for (size_t i = 0; i < sorted_runs_.size(); i++) {
583
- if (sorted_runs_[i].being_compacted == false) {
584
- num_sr_not_compacted++;
585
- }
586
- }
587
-
588
- // The number of sorted runs that are not being compacted is greater
589
- // than the maximum allowed number of sorted runs
590
- if (num_sr_not_compacted > max_num_runs) {
591
- unsigned int num_files = num_sr_not_compacted - max_num_runs + 1;
592
- if ((c = PickCompactionToReduceSortedRuns(UINT_MAX, num_files)) !=
593
- nullptr) {
594
- ROCKS_LOG_BUFFER(log_buffer_,
595
- "[%s] Universal: compacting for file num, to "
596
- "compact file num -- %u, max num runs allowed"
597
- "-- %d, max_run_size -- %" PRIu64 "\n",
598
- cf_name_.c_str(), num_files, max_num_runs,
599
- max_run_size_);
600
- }
601
- } else {
602
- ROCKS_LOG_BUFFER(
603
- log_buffer_,
604
- "[%s] Universal: skipping compaction for file num, num runs not "
605
- "being compacted -- %u, max num runs allowed -- %d, max_run_size "
606
- "-- %" PRIu64 "\n",
607
- cf_name_.c_str(), num_sr_not_compacted, max_num_runs,
608
- max_run_size_);
609
- }
610
- }
611
- }
612
- }
613
-
614
- if (c == nullptr) {
615
- if ((c = PickDeleteTriggeredCompaction()) != nullptr) {
616
- TEST_SYNC_POINT("PickDeleteTriggeredCompactionReturnNonnullptr");
617
- ROCKS_LOG_BUFFER(log_buffer_,
618
- "[%s] Universal: delete triggered compaction\n",
619
- cf_name_.c_str());
620
- }
621
- }
622
-
623
- if (c == nullptr) {
624
- TEST_SYNC_POINT_CALLBACK(
625
- "UniversalCompactionBuilder::PickCompaction:Return", nullptr);
626
- return nullptr;
627
- }
628
- assert(c->output_level() <=
629
- vstorage_->MaxOutputLevel(ioptions_.allow_ingest_behind));
630
-
631
- if (mutable_cf_options_.compaction_options_universal.allow_trivial_move ==
632
- true &&
633
- c->compaction_reason() != CompactionReason::kPeriodicCompaction) {
634
- c->set_is_trivial_move(IsInputFilesNonOverlapping(c));
635
- }
636
-
637
- // validate that all the chosen files of L0 are non overlapping in time
638
- #ifndef NDEBUG
639
- bool is_first = true;
640
-
641
- size_t level_index = 0U;
642
- if (c->start_level() == 0) {
643
- for (auto f : *c->inputs(0)) {
644
- assert(f->fd.smallest_seqno <= f->fd.largest_seqno);
645
- if (is_first) {
646
- is_first = false;
647
- }
648
- }
649
- level_index = 1U;
650
- }
651
- for (; level_index < c->num_input_levels(); level_index++) {
652
- if (c->num_input_files(level_index) != 0) {
653
- SequenceNumber smallest_seqno = 0U;
654
- SequenceNumber largest_seqno = 0U;
655
- GetSmallestLargestSeqno(*(c->inputs(level_index)), &smallest_seqno,
656
- &largest_seqno);
657
- if (is_first) {
658
- is_first = false;
659
- }
660
- }
661
- }
662
- #endif
663
- // update statistics
664
- size_t num_files = 0;
665
- for (auto& each_level : *c->inputs()) {
666
- num_files += each_level.files.size();
667
- }
668
- RecordInHistogram(ioptions_.stats, NUM_FILES_IN_SINGLE_COMPACTION, num_files);
669
-
670
- picker_->RegisterCompaction(c);
671
- vstorage_->ComputeCompactionScore(ioptions_, mutable_cf_options_);
672
-
673
- TEST_SYNC_POINT_CALLBACK("UniversalCompactionBuilder::PickCompaction:Return",
674
- c);
675
- return c;
676
- }
677
-
678
- uint32_t UniversalCompactionBuilder::GetPathId(
679
- const ImmutableCFOptions& ioptions,
680
- const MutableCFOptions& mutable_cf_options, uint64_t file_size) {
681
- // Two conditions need to be satisfied:
682
- // (1) the target path needs to be able to hold the file's size
683
- // (2) Total size left in this and previous paths need to be not
684
- // smaller than expected future file size before this new file is
685
- // compacted, which is estimated based on size_ratio.
686
- // For example, if now we are compacting files of size (1, 1, 2, 4, 8),
687
- // we will make sure the target file, probably with size of 16, will be
688
- // placed in a path so that eventually when new files are generated and
689
- // compacted to (1, 1, 2, 4, 8, 16), all those files can be stored in or
690
- // before the path we chose.
691
- //
692
- // TODO(sdong): now the case of multiple column families is not
693
- // considered in this algorithm. So the target size can be violated in
694
- // that case. We need to improve it.
695
- uint64_t accumulated_size = 0;
696
- uint64_t future_size =
697
- file_size *
698
- (100 - mutable_cf_options.compaction_options_universal.size_ratio) / 100;
699
- uint32_t p = 0;
700
- assert(!ioptions.cf_paths.empty());
701
- for (; p < ioptions.cf_paths.size() - 1; p++) {
702
- uint64_t target_size = ioptions.cf_paths[p].target_size;
703
- if (target_size > file_size &&
704
- accumulated_size + (target_size - file_size) > future_size) {
705
- return p;
706
- }
707
- accumulated_size += target_size;
708
- }
709
- return p;
710
- }
711
-
712
- //
713
- // Consider compaction files based on their size differences with
714
- // the next file in time order.
715
- //
716
- Compaction* UniversalCompactionBuilder::PickCompactionToReduceSortedRuns(
717
- unsigned int ratio, unsigned int max_number_of_files_to_compact) {
718
- unsigned int min_merge_width =
719
- mutable_cf_options_.compaction_options_universal.min_merge_width;
720
- unsigned int max_merge_width =
721
- mutable_cf_options_.compaction_options_universal.max_merge_width;
722
-
723
- const SortedRun* sr = nullptr;
724
- bool done = false;
725
- size_t start_index = 0;
726
- unsigned int candidate_count = 0;
727
-
728
- unsigned int max_files_to_compact =
729
- std::min(max_merge_width, max_number_of_files_to_compact);
730
- min_merge_width = std::max(min_merge_width, 2U);
731
-
732
- // Caller checks the size before executing this function. This invariant is
733
- // important because otherwise we may have a possible integer underflow when
734
- // dealing with unsigned types.
735
- assert(sorted_runs_.size() > 0);
736
-
737
- // Considers a candidate file only if it is smaller than the
738
- // total size accumulated so far.
739
- for (size_t loop = 0; loop < sorted_runs_.size(); loop++) {
740
- candidate_count = 0;
741
-
742
- // Skip files that are already being compacted
743
- for (sr = nullptr; loop < sorted_runs_.size(); loop++) {
744
- sr = &sorted_runs_[loop];
745
-
746
- if (!sr->being_compacted) {
747
- candidate_count = 1;
748
- break;
749
- }
750
- char file_num_buf[kFormatFileNumberBufSize];
751
- sr->Dump(file_num_buf, sizeof(file_num_buf));
752
- ROCKS_LOG_BUFFER(log_buffer_,
753
- "[%s] Universal: %s"
754
- "[%d] being compacted, skipping",
755
- cf_name_.c_str(), file_num_buf, loop);
756
-
757
- sr = nullptr;
758
- }
759
-
760
- // This file is not being compacted. Consider it as the
761
- // first candidate to be compacted.
762
- uint64_t candidate_size = sr != nullptr ? sr->compensated_file_size : 0;
763
- if (sr != nullptr) {
764
- char file_num_buf[kFormatFileNumberBufSize];
765
- sr->Dump(file_num_buf, sizeof(file_num_buf), true);
766
- ROCKS_LOG_BUFFER(log_buffer_,
767
- "[%s] Universal: Possible candidate %s[%d].",
768
- cf_name_.c_str(), file_num_buf, loop);
769
- }
770
-
771
- // Check if the succeeding files need compaction.
772
- for (size_t i = loop + 1;
773
- candidate_count < max_files_to_compact && i < sorted_runs_.size();
774
- i++) {
775
- const SortedRun* succeeding_sr = &sorted_runs_[i];
776
- if (succeeding_sr->being_compacted) {
777
- break;
778
- }
779
- // Pick files if the total/last candidate file size (increased by the
780
- // specified ratio) is still larger than the next candidate file.
781
- // candidate_size is the total size of files picked so far with the
782
- // default kCompactionStopStyleTotalSize; with
783
- // kCompactionStopStyleSimilarSize, it's simply the size of the last
784
- // picked file.
785
- double sz = candidate_size * (100.0 + ratio) / 100.0;
786
- if (sz < static_cast<double>(succeeding_sr->size)) {
787
- break;
788
- }
789
- if (mutable_cf_options_.compaction_options_universal.stop_style ==
790
- kCompactionStopStyleSimilarSize) {
791
- // Similar-size stopping rule: also check the last picked file isn't
792
- // far larger than the next candidate file.
793
- sz = (succeeding_sr->size * (100.0 + ratio)) / 100.0;
794
- if (sz < static_cast<double>(candidate_size)) {
795
- // If the small file we've encountered begins a run of similar-size
796
- // files, we'll pick them up on a future iteration of the outer
797
- // loop. If it's some lonely straggler, it'll eventually get picked
798
- // by the last-resort read amp strategy which disregards size ratios.
799
- break;
800
- }
801
- candidate_size = succeeding_sr->compensated_file_size;
802
- } else { // default kCompactionStopStyleTotalSize
803
- candidate_size += succeeding_sr->compensated_file_size;
804
- }
805
- candidate_count++;
806
- }
807
-
808
- // Found a series of consecutive files that need compaction.
809
- if (candidate_count >= (unsigned int)min_merge_width) {
810
- start_index = loop;
811
- done = true;
812
- break;
813
- } else {
814
- for (size_t i = loop;
815
- i < loop + candidate_count && i < sorted_runs_.size(); i++) {
816
- const SortedRun* skipping_sr = &sorted_runs_[i];
817
- char file_num_buf[256];
818
- skipping_sr->DumpSizeInfo(file_num_buf, sizeof(file_num_buf), loop);
819
- ROCKS_LOG_BUFFER(log_buffer_, "[%s] Universal: Skipping %s",
820
- cf_name_.c_str(), file_num_buf);
821
- }
822
- }
823
- }
824
- if (!done || candidate_count <= 1) {
825
- return nullptr;
826
- }
827
- size_t first_index_after = start_index + candidate_count;
828
- // Compression is enabled if files compacted earlier already reached
829
- // size ratio of compression.
830
- bool enable_compression = true;
831
- int ratio_to_compress =
832
- mutable_cf_options_.compaction_options_universal.compression_size_percent;
833
- if (ratio_to_compress >= 0) {
834
- uint64_t total_size = 0;
835
- for (auto& sorted_run : sorted_runs_) {
836
- total_size += sorted_run.compensated_file_size;
837
- }
838
-
839
- uint64_t older_file_size = 0;
840
- for (size_t i = sorted_runs_.size() - 1; i >= first_index_after; i--) {
841
- older_file_size += sorted_runs_[i].size;
842
- if (older_file_size * 100L >= total_size * (long)ratio_to_compress) {
843
- enable_compression = false;
844
- break;
845
- }
846
- }
847
- }
848
-
849
- uint64_t estimated_total_size = 0;
850
- for (unsigned int i = 0; i < first_index_after; i++) {
851
- estimated_total_size += sorted_runs_[i].size;
852
- }
853
- uint32_t path_id =
854
- GetPathId(ioptions_, mutable_cf_options_, estimated_total_size);
855
- int start_level = sorted_runs_[start_index].level;
856
- int output_level;
857
- // last level is reserved for the files ingested behind
858
- int max_output_level =
859
- vstorage_->MaxOutputLevel(ioptions_.allow_ingest_behind);
860
- if (first_index_after == sorted_runs_.size()) {
861
- output_level = max_output_level;
862
- } else if (sorted_runs_[first_index_after].level == 0) {
863
- output_level = 0;
864
- } else {
865
- output_level = sorted_runs_[first_index_after].level - 1;
866
- }
867
-
868
- std::vector<CompactionInputFiles> inputs(max_output_level + 1);
869
- for (size_t i = 0; i < inputs.size(); ++i) {
870
- inputs[i].level = start_level + static_cast<int>(i);
871
- }
872
- for (size_t i = start_index; i < first_index_after; i++) {
873
- auto& picking_sr = sorted_runs_[i];
874
- if (picking_sr.level == 0) {
875
- FileMetaData* picking_file = picking_sr.file;
876
- inputs[0].files.push_back(picking_file);
877
- } else {
878
- auto& files = inputs[picking_sr.level - start_level].files;
879
- for (auto* f : vstorage_->LevelFiles(picking_sr.level)) {
880
- files.push_back(f);
881
- }
882
- }
883
- char file_num_buf[256];
884
- picking_sr.DumpSizeInfo(file_num_buf, sizeof(file_num_buf), i);
885
- ROCKS_LOG_BUFFER(log_buffer_, "[%s] Universal: Picking %s",
886
- cf_name_.c_str(), file_num_buf);
887
- }
888
-
889
- std::vector<FileMetaData*> grandparents;
890
- // Include grandparents for potential file cutting in incremental
891
- // mode. It is for aligning file cutting boundaries across levels,
892
- // so that subsequent compactions can pick files with aligned
893
- // buffer.
894
- // Single files are only picked up in incremental mode, so that
895
- // there is no need for full range.
896
- if (mutable_cf_options_.compaction_options_universal.incremental &&
897
- first_index_after < sorted_runs_.size() &&
898
- sorted_runs_[first_index_after].level > 1) {
899
- grandparents = vstorage_->LevelFiles(sorted_runs_[first_index_after].level);
900
- }
901
-
902
- if (output_level != 0 &&
903
- picker_->FilesRangeOverlapWithCompaction(
904
- inputs, output_level,
905
- Compaction::EvaluatePenultimateLevel(vstorage_, ioptions_,
906
- start_level, output_level))) {
907
- return nullptr;
908
- }
909
- CompactionReason compaction_reason;
910
- if (max_number_of_files_to_compact == UINT_MAX) {
911
- compaction_reason = CompactionReason::kUniversalSizeRatio;
912
- } else {
913
- compaction_reason = CompactionReason::kUniversalSortedRunNum;
914
- }
915
- return new Compaction(vstorage_, ioptions_, mutable_cf_options_,
916
- mutable_db_options_, std::move(inputs), output_level,
917
- MaxFileSizeForLevel(mutable_cf_options_, output_level,
918
- kCompactionStyleUniversal),
919
- GetMaxOverlappingBytes(), path_id,
920
- GetCompressionType(vstorage_, mutable_cf_options_,
921
- output_level, 1, enable_compression),
922
- GetCompressionOptions(mutable_cf_options_, vstorage_,
923
- output_level, enable_compression),
924
- mutable_cf_options_.default_write_temperature,
925
- /* max_subcompactions */ 0, grandparents,
926
- /* is manual */ false, /* trim_ts */ "", score_,
927
- false /* deletion_compaction */,
928
- /* l0_files_might_overlap */ true, compaction_reason);
929
- }
930
-
931
- // Look at overall size amplification. If size amplification
932
- // exceeds the configured value, then do a compaction
933
- // on longest span of candidate files without conflict with other compactions
934
- // ending at the earliest base file (overriding configured values of file-size
935
- // ratios, min_merge_width and max_merge_width).
936
- Compaction* UniversalCompactionBuilder::PickCompactionToReduceSizeAmp() {
937
- assert(!sorted_runs_.empty());
938
-
939
- const size_t end_index = ShouldSkipLastSortedRunForSizeAmpCompaction()
940
- ? sorted_runs_.size() - 2
941
- : sorted_runs_.size() - 1;
942
- if (sorted_runs_[end_index].being_compacted) {
943
- return nullptr;
944
- }
945
- const uint64_t base_sr_size = sorted_runs_[end_index].size;
946
- size_t start_index = end_index;
947
- uint64_t candidate_size = 0;
948
- size_t num_l0_files = 0;
949
-
950
- // Get longest span (i.e, [start_index, end_index]) of available sorted runs
951
- while (start_index > 0) {
952
- const SortedRun* sr = &sorted_runs_[start_index - 1];
953
- if (sr->being_compacted) {
954
- char file_num_buf[kFormatFileNumberBufSize];
955
- sr->Dump(file_num_buf, sizeof(file_num_buf), true);
956
- ROCKS_LOG_BUFFER(
957
- log_buffer_,
958
- "[%s] Universal: stopping at sorted run undergoing compaction: "
959
- "%s[%" ROCKSDB_PRIszt "]",
960
- cf_name_.c_str(), file_num_buf, start_index - 1);
961
- break;
962
- }
963
- candidate_size += sr->compensated_file_size;
964
- num_l0_files += sr->level == 0 ? 1 : 0;
965
- --start_index;
966
- }
967
-
968
- if (start_index == end_index) {
969
- return nullptr;
970
- }
971
-
972
- {
973
- const size_t num_l0_to_exclude = MightExcludeNewL0sToReduceWriteStop(
974
- num_l0_files, end_index, start_index, candidate_size);
975
- ROCKS_LOG_BUFFER(log_buffer_,
976
- "[%s] Universal: Excluding %" ROCKSDB_PRIszt
977
- " latest L0 files to reduce potential write stop "
978
- "triggered by `level0_stop_writes_trigger`",
979
- cf_name_.c_str(), num_l0_to_exclude);
980
- }
981
-
982
- {
983
- char file_num_buf[kFormatFileNumberBufSize];
984
- sorted_runs_[start_index].Dump(file_num_buf, sizeof(file_num_buf), true);
985
- ROCKS_LOG_BUFFER(
986
- log_buffer_,
987
- "[%s] Universal: First candidate %s[%" ROCKSDB_PRIszt "] %s",
988
- cf_name_.c_str(), file_num_buf, start_index, " to reduce size amp.\n");
989
- }
990
-
991
- // percentage flexibility while reducing size amplification
992
- const uint64_t ratio = mutable_cf_options_.compaction_options_universal
993
- .max_size_amplification_percent;
994
-
995
- // size amplification = percentage of additional size
996
- if (candidate_size * 100 < ratio * base_sr_size) {
997
- ROCKS_LOG_BUFFER(
998
- log_buffer_,
999
- "[%s] Universal: size amp not needed. newer-files-total-size %" PRIu64
1000
- " earliest-file-size %" PRIu64,
1001
- cf_name_.c_str(), candidate_size, base_sr_size);
1002
- return nullptr;
1003
- } else {
1004
- ROCKS_LOG_BUFFER(
1005
- log_buffer_,
1006
- "[%s] Universal: size amp needed. newer-files-total-size %" PRIu64
1007
- " earliest-file-size %" PRIu64,
1008
- cf_name_.c_str(), candidate_size, base_sr_size);
1009
- }
1010
- // Since incremental compaction can't include more than second last
1011
- // level, it can introduce penalty, compared to full compaction. We
1012
- // hard code the pentalty to be 80%. If we end up with a compaction
1013
- // fanout higher than 80% of full level compactions, we fall back
1014
- // to full level compaction.
1015
- // The 80% threshold is arbitrary and can be adjusted or made
1016
- // configurable in the future.
1017
- // This also prevent the case when compaction falls behind and we
1018
- // need to compact more levels for compactions to catch up.
1019
- if (mutable_cf_options_.compaction_options_universal.incremental) {
1020
- double fanout_threshold = static_cast<double>(base_sr_size) /
1021
- static_cast<double>(candidate_size) * 1.8;
1022
- Compaction* picked = PickIncrementalForReduceSizeAmp(fanout_threshold);
1023
- if (picked != nullptr) {
1024
- // As the feature is still incremental, picking incremental compaction
1025
- // might fail and we will fall bck to compacting full level.
1026
- return picked;
1027
- }
1028
- }
1029
- return PickCompactionWithSortedRunRange(
1030
- start_index, end_index, CompactionReason::kUniversalSizeAmplification);
1031
- }
1032
-
1033
- Compaction* UniversalCompactionBuilder::PickIncrementalForReduceSizeAmp(
1034
- double fanout_threshold) {
1035
- // Try find all potential compactions with total size just over
1036
- // options.max_compaction_size / 2, and take the one with the lowest
1037
- // fanout (defined in declaration of the function).
1038
- // This is done by having a sliding window of the files at the second
1039
- // lowest level, and keep expanding while finding overlapping in the
1040
- // last level. Once total size exceeds the size threshold, calculate
1041
- // the fanout value. And then shrinking from the small side of the
1042
- // window. Keep doing it until the end.
1043
- // Finally, we try to include upper level files if they fall into
1044
- // the range.
1045
- //
1046
- // Note that it is a similar problem as leveled compaction's
1047
- // kMinOverlappingRatio priority, but instead of picking single files
1048
- // we expand to a target compaction size. The reason is that in
1049
- // leveled compaction, actual fanout value tends to high, e.g. 10, so
1050
- // even with single file in down merging level, the extra size
1051
- // compacted in boundary files is at a lower ratio. But here users
1052
- // often have size of second last level size to be 1/4, 1/3 or even
1053
- // 1/2 of the bottommost level, so picking single file in second most
1054
- // level will cause significant waste, which is not desirable.
1055
- //
1056
- // This algorithm has lots of room to improve to pick more efficient
1057
- // compactions.
1058
- assert(sorted_runs_.size() >= 2);
1059
- int second_last_level = sorted_runs_[sorted_runs_.size() - 2].level;
1060
- if (second_last_level == 0) {
1061
- // Can't split Level 0.
1062
- return nullptr;
1063
- }
1064
- int output_level = sorted_runs_.back().level;
1065
- const std::vector<FileMetaData*>& bottom_files =
1066
- vstorage_->LevelFiles(output_level);
1067
- const std::vector<FileMetaData*>& files =
1068
- vstorage_->LevelFiles(second_last_level);
1069
- assert(!bottom_files.empty());
1070
- assert(!files.empty());
1071
-
1072
- // std::unordered_map<uint64_t, uint64_t> file_to_order;
1073
-
1074
- int picked_start_idx = 0;
1075
- int picked_end_idx = 0;
1076
- double picked_fanout = fanout_threshold;
1077
-
1078
- // Use half target compaction bytes as anchor to stop growing second most
1079
- // level files, and reserve growing space for more overlapping bottom level,
1080
- // clean cut, files from other levels, etc.
1081
- uint64_t comp_thres_size = mutable_cf_options_.max_compaction_bytes / 2;
1082
- int start_idx = 0;
1083
- int bottom_end_idx = 0;
1084
- int bottom_start_idx = 0;
1085
- uint64_t non_bottom_size = 0;
1086
- uint64_t bottom_size = 0;
1087
- bool end_bottom_size_counted = false;
1088
- for (int end_idx = 0; end_idx < static_cast<int>(files.size()); end_idx++) {
1089
- FileMetaData* end_file = files[end_idx];
1090
-
1091
- // Include bottom most level files smaller than the current second
1092
- // last level file.
1093
- int num_skipped = 0;
1094
- while (bottom_end_idx < static_cast<int>(bottom_files.size()) &&
1095
- icmp_->Compare(bottom_files[bottom_end_idx]->largest,
1096
- end_file->smallest) < 0) {
1097
- if (!end_bottom_size_counted) {
1098
- bottom_size += bottom_files[bottom_end_idx]->fd.file_size;
1099
- }
1100
- bottom_end_idx++;
1101
- end_bottom_size_counted = false;
1102
- num_skipped++;
1103
- }
1104
-
1105
- if (num_skipped > 1) {
1106
- // At least a file in the bottom most level falls into the file gap. No
1107
- // reason to include the file. We cut the range and start a new sliding
1108
- // window.
1109
- start_idx = end_idx;
1110
- }
1111
-
1112
- if (start_idx == end_idx) {
1113
- // new sliding window.
1114
- non_bottom_size = 0;
1115
- bottom_size = 0;
1116
- bottom_start_idx = bottom_end_idx;
1117
- end_bottom_size_counted = false;
1118
- }
1119
-
1120
- non_bottom_size += end_file->fd.file_size;
1121
-
1122
- // Include all overlapping files in bottom level.
1123
- while (bottom_end_idx < static_cast<int>(bottom_files.size()) &&
1124
- icmp_->Compare(bottom_files[bottom_end_idx]->smallest,
1125
- end_file->largest) < 0) {
1126
- if (!end_bottom_size_counted) {
1127
- bottom_size += bottom_files[bottom_end_idx]->fd.file_size;
1128
- end_bottom_size_counted = true;
1129
- }
1130
- if (icmp_->Compare(bottom_files[bottom_end_idx]->largest,
1131
- end_file->largest) > 0) {
1132
- // next level file cross large boundary of current file.
1133
- break;
1134
- }
1135
- bottom_end_idx++;
1136
- end_bottom_size_counted = false;
1137
- }
1138
-
1139
- if ((non_bottom_size + bottom_size > comp_thres_size ||
1140
- end_idx == static_cast<int>(files.size()) - 1) &&
1141
- non_bottom_size > 0) { // Do we alow 0 size file at all?
1142
- // If it is a better compaction, remember it in picked* variables.
1143
- double fanout = static_cast<double>(bottom_size) /
1144
- static_cast<double>(non_bottom_size);
1145
- if (fanout < picked_fanout) {
1146
- picked_start_idx = start_idx;
1147
- picked_end_idx = end_idx;
1148
- picked_fanout = fanout;
1149
- }
1150
- // Shrink from the start end to under comp_thres_size
1151
- while (non_bottom_size + bottom_size > comp_thres_size &&
1152
- start_idx <= end_idx) {
1153
- non_bottom_size -= files[start_idx]->fd.file_size;
1154
- start_idx++;
1155
- if (start_idx < static_cast<int>(files.size())) {
1156
- while (bottom_start_idx <= bottom_end_idx &&
1157
- icmp_->Compare(bottom_files[bottom_start_idx]->largest,
1158
- files[start_idx]->smallest) < 0) {
1159
- bottom_size -= bottom_files[bottom_start_idx]->fd.file_size;
1160
- bottom_start_idx++;
1161
- }
1162
- }
1163
- }
1164
- }
1165
- }
1166
-
1167
- if (picked_fanout >= fanout_threshold) {
1168
- assert(picked_fanout == fanout_threshold);
1169
- return nullptr;
1170
- }
1171
-
1172
- std::vector<CompactionInputFiles> inputs;
1173
- CompactionInputFiles bottom_level_inputs;
1174
- CompactionInputFiles second_last_level_inputs;
1175
- second_last_level_inputs.level = second_last_level;
1176
- bottom_level_inputs.level = output_level;
1177
- for (int i = picked_start_idx; i <= picked_end_idx; i++) {
1178
- if (files[i]->being_compacted) {
1179
- return nullptr;
1180
- }
1181
- second_last_level_inputs.files.push_back(files[i]);
1182
- }
1183
- assert(!second_last_level_inputs.empty());
1184
- if (!picker_->ExpandInputsToCleanCut(cf_name_, vstorage_,
1185
- &second_last_level_inputs,
1186
- /*next_smallest=*/nullptr)) {
1187
- return nullptr;
1188
- }
1189
- // We might be able to avoid this binary search if we save and expand
1190
- // from bottom_start_idx and bottom_end_idx, but for now, we use
1191
- // SetupOtherInputs() for simplicity.
1192
- int parent_index = -1; // Create and use bottom_start_idx?
1193
- if (!picker_->SetupOtherInputs(cf_name_, mutable_cf_options_, vstorage_,
1194
- &second_last_level_inputs,
1195
- &bottom_level_inputs, &parent_index,
1196
- /*base_index=*/-1)) {
1197
- return nullptr;
1198
- }
1199
-
1200
- // Try to include files in upper levels if they fall into the range.
1201
- // Since we need to go from lower level up and this is in the reverse
1202
- // order, compared to level order, we first write to an reversed
1203
- // data structure and finally copy them to compaction inputs.
1204
- InternalKey smallest, largest;
1205
- picker_->GetRange(second_last_level_inputs, &smallest, &largest);
1206
- std::vector<CompactionInputFiles> inputs_reverse;
1207
- for (auto it = ++(++sorted_runs_.rbegin()); it != sorted_runs_.rend(); it++) {
1208
- SortedRun& sr = *it;
1209
- if (sr.level == 0) {
1210
- break;
1211
- }
1212
- std::vector<FileMetaData*> level_inputs;
1213
- vstorage_->GetCleanInputsWithinInterval(sr.level, &smallest, &largest,
1214
- &level_inputs);
1215
- if (!level_inputs.empty()) {
1216
- inputs_reverse.push_back({});
1217
- inputs_reverse.back().level = sr.level;
1218
- inputs_reverse.back().files = level_inputs;
1219
- picker_->GetRange(inputs_reverse.back(), &smallest, &largest);
1220
- }
1221
- }
1222
- for (auto it = inputs_reverse.rbegin(); it != inputs_reverse.rend(); it++) {
1223
- inputs.push_back(*it);
1224
- }
1225
-
1226
- inputs.push_back(second_last_level_inputs);
1227
- inputs.push_back(bottom_level_inputs);
1228
-
1229
- int start_level = Compaction::kInvalidLevel;
1230
- for (const auto& in : inputs) {
1231
- if (!in.empty()) {
1232
- // inputs should already be sorted by level
1233
- start_level = in.level;
1234
- break;
1235
- }
1236
- }
1237
-
1238
- // intra L0 compactions outputs could have overlap
1239
- if (output_level != 0 &&
1240
- picker_->FilesRangeOverlapWithCompaction(
1241
- inputs, output_level,
1242
- Compaction::EvaluatePenultimateLevel(vstorage_, ioptions_,
1243
- start_level, output_level))) {
1244
- return nullptr;
1245
- }
1246
-
1247
- // TODO support multi paths?
1248
- uint32_t path_id = 0;
1249
- return new Compaction(
1250
- vstorage_, ioptions_, mutable_cf_options_, mutable_db_options_,
1251
- std::move(inputs), output_level,
1252
- MaxFileSizeForLevel(mutable_cf_options_, output_level,
1253
- kCompactionStyleUniversal),
1254
- GetMaxOverlappingBytes(), path_id,
1255
- GetCompressionType(vstorage_, mutable_cf_options_, output_level, 1,
1256
- true /* enable_compression */),
1257
- GetCompressionOptions(mutable_cf_options_, vstorage_, output_level,
1258
- true /* enable_compression */),
1259
- mutable_cf_options_.default_write_temperature,
1260
- /* max_subcompactions */ 0, /* grandparents */ {}, /* is manual */ false,
1261
- /* trim_ts */ "", score_, false /* deletion_compaction */,
1262
- /* l0_files_might_overlap */ true,
1263
- CompactionReason::kUniversalSizeAmplification);
1264
- }
1265
-
1266
- // Pick files marked for compaction. Typically, files are marked by
1267
- // CompactOnDeleteCollector due to the presence of tombstones.
1268
- Compaction* UniversalCompactionBuilder::PickDeleteTriggeredCompaction() {
1269
- CompactionInputFiles start_level_inputs;
1270
- int output_level;
1271
- std::vector<CompactionInputFiles> inputs;
1272
- std::vector<FileMetaData*> grandparents;
1273
-
1274
- if (vstorage_->num_levels() == 1) {
1275
- // This is single level universal. Since we're basically trying to reclaim
1276
- // space by processing files marked for compaction due to high tombstone
1277
- // density, let's do the same thing as compaction to reduce size amp which
1278
- // has the same goals.
1279
- int start_index = -1;
1280
-
1281
- start_level_inputs.level = 0;
1282
- start_level_inputs.files.clear();
1283
- output_level = 0;
1284
- // Find the first file marked for compaction. Ignore the last file
1285
- for (size_t loop = 0; loop + 1 < sorted_runs_.size(); loop++) {
1286
- SortedRun* sr = &sorted_runs_[loop];
1287
- if (sr->being_compacted) {
1288
- continue;
1289
- }
1290
- FileMetaData* f = vstorage_->LevelFiles(0)[loop];
1291
- if (f->marked_for_compaction) {
1292
- start_level_inputs.files.push_back(f);
1293
- start_index =
1294
- static_cast<int>(loop); // Consider this as the first candidate.
1295
- break;
1296
- }
1297
- }
1298
- if (start_index < 0) {
1299
- // Either no file marked, or they're already being compacted
1300
- return nullptr;
1301
- }
1302
-
1303
- for (size_t loop = start_index + 1; loop < sorted_runs_.size(); loop++) {
1304
- SortedRun* sr = &sorted_runs_[loop];
1305
- if (sr->being_compacted) {
1306
- break;
1307
- }
1308
-
1309
- FileMetaData* f = vstorage_->LevelFiles(0)[loop];
1310
- start_level_inputs.files.push_back(f);
1311
- }
1312
- if (start_level_inputs.size() <= 1) {
1313
- // If only the last file in L0 is marked for compaction, ignore it
1314
- return nullptr;
1315
- }
1316
- inputs.push_back(start_level_inputs);
1317
- } else {
1318
- int start_level;
1319
-
1320
- // For multi-level universal, the strategy is to make this look more like
1321
- // leveled. We pick one of the files marked for compaction and compact with
1322
- // overlapping files in the adjacent level.
1323
- picker_->PickFilesMarkedForCompaction(cf_name_, vstorage_, &start_level,
1324
- &output_level, &start_level_inputs);
1325
- if (start_level_inputs.empty()) {
1326
- return nullptr;
1327
- }
1328
-
1329
- int max_output_level =
1330
- vstorage_->MaxOutputLevel(ioptions_.allow_ingest_behind);
1331
- // Pick the first non-empty level after the start_level
1332
- for (output_level = start_level + 1; output_level <= max_output_level;
1333
- output_level++) {
1334
- if (vstorage_->NumLevelFiles(output_level) != 0) {
1335
- break;
1336
- }
1337
- }
1338
-
1339
- // If all higher levels are empty, pick the highest level as output level
1340
- if (output_level > max_output_level) {
1341
- if (start_level == 0) {
1342
- output_level = max_output_level;
1343
- } else {
1344
- // If start level is non-zero and all higher levels are empty, this
1345
- // compaction will translate into a trivial move. Since the idea is
1346
- // to reclaim space and trivial move doesn't help with that, we
1347
- // skip compaction in this case and return nullptr
1348
- return nullptr;
1349
- }
1350
- }
1351
- assert(output_level <= max_output_level);
1352
-
1353
- if (output_level != 0) {
1354
- if (start_level == 0) {
1355
- if (!picker_->GetOverlappingL0Files(vstorage_, &start_level_inputs,
1356
- output_level, nullptr)) {
1357
- return nullptr;
1358
- }
1359
- }
1360
-
1361
- CompactionInputFiles output_level_inputs;
1362
- int parent_index = -1;
1363
-
1364
- output_level_inputs.level = output_level;
1365
- if (!picker_->SetupOtherInputs(cf_name_, mutable_cf_options_, vstorage_,
1366
- &start_level_inputs, &output_level_inputs,
1367
- &parent_index, -1)) {
1368
- return nullptr;
1369
- }
1370
- inputs.push_back(start_level_inputs);
1371
- if (!output_level_inputs.empty()) {
1372
- inputs.push_back(output_level_inputs);
1373
- }
1374
- if (picker_->FilesRangeOverlapWithCompaction(
1375
- inputs, output_level,
1376
- Compaction::EvaluatePenultimateLevel(
1377
- vstorage_, ioptions_, start_level, output_level))) {
1378
- return nullptr;
1379
- }
1380
-
1381
- picker_->GetGrandparents(vstorage_, start_level_inputs,
1382
- output_level_inputs, &grandparents);
1383
- } else {
1384
- inputs.push_back(start_level_inputs);
1385
- }
1386
- }
1387
-
1388
- uint64_t estimated_total_size = 0;
1389
- // Use size of the output level as estimated file size
1390
- for (FileMetaData* f : vstorage_->LevelFiles(output_level)) {
1391
- estimated_total_size += f->fd.GetFileSize();
1392
- }
1393
- uint32_t path_id =
1394
- GetPathId(ioptions_, mutable_cf_options_, estimated_total_size);
1395
- return new Compaction(
1396
- vstorage_, ioptions_, mutable_cf_options_, mutable_db_options_,
1397
- std::move(inputs), output_level,
1398
- MaxFileSizeForLevel(mutable_cf_options_, output_level,
1399
- kCompactionStyleUniversal),
1400
- /* max_grandparent_overlap_bytes */ GetMaxOverlappingBytes(), path_id,
1401
- GetCompressionType(vstorage_, mutable_cf_options_, output_level, 1),
1402
- GetCompressionOptions(mutable_cf_options_, vstorage_, output_level),
1403
- mutable_cf_options_.default_write_temperature,
1404
- /* max_subcompactions */ 0, grandparents, /* is manual */ false,
1405
- /* trim_ts */ "", score_, false /* deletion_compaction */,
1406
- /* l0_files_might_overlap */ true,
1407
- CompactionReason::kFilesMarkedForCompaction);
1408
- }
1409
-
1410
- Compaction* UniversalCompactionBuilder::PickCompactionToOldest(
1411
- size_t start_index, CompactionReason compaction_reason) {
1412
- return PickCompactionWithSortedRunRange(start_index, sorted_runs_.size() - 1,
1413
- compaction_reason);
1414
- }
1415
-
1416
- Compaction* UniversalCompactionBuilder::PickCompactionWithSortedRunRange(
1417
- size_t start_index, size_t end_index, CompactionReason compaction_reason) {
1418
- assert(start_index < sorted_runs_.size());
1419
-
1420
- // Estimate total file size
1421
- uint64_t estimated_total_size = 0;
1422
- for (size_t loop = start_index; loop <= end_index; loop++) {
1423
- estimated_total_size += sorted_runs_[loop].size;
1424
- }
1425
- uint32_t path_id =
1426
- GetPathId(ioptions_, mutable_cf_options_, estimated_total_size);
1427
- int start_level = sorted_runs_[start_index].level;
1428
- int max_output_level =
1429
- vstorage_->MaxOutputLevel(ioptions_.allow_ingest_behind);
1430
- std::vector<CompactionInputFiles> inputs(max_output_level + 1);
1431
- for (size_t i = 0; i < inputs.size(); ++i) {
1432
- inputs[i].level = start_level + static_cast<int>(i);
1433
- }
1434
- for (size_t loop = start_index; loop <= end_index; loop++) {
1435
- auto& picking_sr = sorted_runs_[loop];
1436
- if (picking_sr.level == 0) {
1437
- FileMetaData* f = picking_sr.file;
1438
- inputs[0].files.push_back(f);
1439
- } else {
1440
- auto& files = inputs[picking_sr.level - start_level].files;
1441
- for (auto* f : vstorage_->LevelFiles(picking_sr.level)) {
1442
- files.push_back(f);
1443
- }
1444
- }
1445
- std::string comp_reason_print_string;
1446
- if (compaction_reason == CompactionReason::kPeriodicCompaction) {
1447
- comp_reason_print_string = "periodic compaction";
1448
- } else if (compaction_reason ==
1449
- CompactionReason::kUniversalSizeAmplification) {
1450
- comp_reason_print_string = "size amp";
1451
- } else {
1452
- assert(false);
1453
- comp_reason_print_string = "unknown: ";
1454
- comp_reason_print_string.append(
1455
- std::to_string(static_cast<int>(compaction_reason)));
1456
- }
1457
-
1458
- char file_num_buf[256];
1459
- picking_sr.DumpSizeInfo(file_num_buf, sizeof(file_num_buf), loop);
1460
- ROCKS_LOG_BUFFER(log_buffer_, "[%s] Universal: %s picking %s",
1461
- cf_name_.c_str(), comp_reason_print_string.c_str(),
1462
- file_num_buf);
1463
- }
1464
-
1465
- int output_level;
1466
- if (end_index == sorted_runs_.size() - 1) {
1467
- output_level = max_output_level;
1468
- } else {
1469
- // if it's not including all sorted_runs, it can only output to the level
1470
- // above the `end_index + 1` sorted_run.
1471
- output_level = sorted_runs_[end_index + 1].level - 1;
1472
- }
1473
-
1474
- // intra L0 compactions outputs could have overlap
1475
- if (output_level != 0 &&
1476
- picker_->FilesRangeOverlapWithCompaction(
1477
- inputs, output_level,
1478
- Compaction::EvaluatePenultimateLevel(vstorage_, ioptions_,
1479
- start_level, output_level))) {
1480
- return nullptr;
1481
- }
1482
-
1483
- // We never check size for
1484
- // compaction_options_universal.compression_size_percent,
1485
- // because we always compact all the files, so always compress.
1486
- return new Compaction(
1487
- vstorage_, ioptions_, mutable_cf_options_, mutable_db_options_,
1488
- std::move(inputs), output_level,
1489
- MaxFileSizeForLevel(mutable_cf_options_, output_level,
1490
- kCompactionStyleUniversal),
1491
- GetMaxOverlappingBytes(), path_id,
1492
- GetCompressionType(vstorage_, mutable_cf_options_, output_level, 1,
1493
- true /* enable_compression */),
1494
- GetCompressionOptions(mutable_cf_options_, vstorage_, output_level,
1495
- true /* enable_compression */),
1496
- mutable_cf_options_.default_write_temperature,
1497
- /* max_subcompactions */ 0, /* grandparents */ {}, /* is manual */ false,
1498
- /* trim_ts */ "", score_, false /* deletion_compaction */,
1499
- /* l0_files_might_overlap */ true, compaction_reason);
1500
- }
1501
-
1502
- Compaction* UniversalCompactionBuilder::PickPeriodicCompaction() {
1503
- ROCKS_LOG_BUFFER(log_buffer_, "[%s] Universal: Periodic Compaction",
1504
- cf_name_.c_str());
1505
-
1506
- // In universal compaction, sorted runs contain older data are almost always
1507
- // generated earlier too. To simplify the problem, we just try to trigger
1508
- // a full compaction. We start from the oldest sorted run and include
1509
- // all sorted runs, until we hit a sorted already being compacted.
1510
- // Since usually the largest (which is usually the oldest) sorted run is
1511
- // included anyway, doing a full compaction won't increase write
1512
- // amplification much.
1513
-
1514
- // Get some information from marked files to check whether a file is
1515
- // included in the compaction.
1516
-
1517
- size_t start_index = sorted_runs_.size();
1518
- while (start_index > 0 && !sorted_runs_[start_index - 1].being_compacted) {
1519
- start_index--;
1520
- }
1521
- if (start_index == sorted_runs_.size()) {
1522
- return nullptr;
1523
- }
1524
-
1525
- // There is a rare corner case where we can't pick up all the files
1526
- // because some files are being compacted and we end up with picking files
1527
- // but none of them need periodic compaction. Unless we simply recompact
1528
- // the last sorted run (either the last level or last L0 file), we would just
1529
- // execute the compaction, in order to simplify the logic.
1530
- if (start_index == sorted_runs_.size() - 1) {
1531
- bool included_file_marked = false;
1532
- int start_level = sorted_runs_[start_index].level;
1533
- FileMetaData* start_file = sorted_runs_[start_index].file;
1534
- for (const std::pair<int, FileMetaData*>& level_file_pair :
1535
- vstorage_->FilesMarkedForPeriodicCompaction()) {
1536
- if (start_level != 0) {
1537
- // Last sorted run is a level
1538
- if (start_level == level_file_pair.first) {
1539
- included_file_marked = true;
1540
- break;
1541
- }
1542
- } else {
1543
- // Last sorted run is a L0 file.
1544
- if (start_file == level_file_pair.second) {
1545
- included_file_marked = true;
1546
- break;
1547
- }
1548
- }
1549
- }
1550
- if (!included_file_marked) {
1551
- ROCKS_LOG_BUFFER(log_buffer_,
1552
- "[%s] Universal: Cannot form a compaction covering file "
1553
- "marked for periodic compaction",
1554
- cf_name_.c_str());
1555
- return nullptr;
1556
- }
1557
- }
1558
-
1559
- Compaction* c = PickCompactionToOldest(start_index,
1560
- CompactionReason::kPeriodicCompaction);
1561
-
1562
- TEST_SYNC_POINT_CALLBACK(
1563
- "UniversalCompactionPicker::PickPeriodicCompaction:Return", c);
1564
-
1565
- return c;
1566
- }
1567
-
1568
- uint64_t UniversalCompactionBuilder::GetMaxOverlappingBytes() const {
1569
- if (!mutable_cf_options_.compaction_options_universal.incremental) {
1570
- return std::numeric_limits<uint64_t>::max();
1571
- } else {
1572
- // Try to align cutting boundary with files at the next level if the
1573
- // file isn't end up with 1/2 of target size, or it would overlap
1574
- // with two full size files at the next level.
1575
- return mutable_cf_options_.target_file_size_base / 2 * 3;
1576
- }
1577
- }
1578
- } // namespace ROCKSDB_NAMESPACE