rocksdb-native 2.6.3 → 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 (955) hide show
  1. package/CMakeLists.txt +10 -1
  2. package/package.json +3 -3
  3. package/prebuilds/darwin-arm64/rocksdb-native.bare +0 -0
  4. package/prebuilds/darwin-arm64/rocksdb-native.node +0 -0
  5. package/prebuilds/darwin-x64/rocksdb-native.bare +0 -0
  6. package/prebuilds/darwin-x64/rocksdb-native.node +0 -0
  7. package/prebuilds/ios-arm64/rocksdb-native.bare +0 -0
  8. package/prebuilds/ios-arm64-simulator/rocksdb-native.bare +0 -0
  9. package/prebuilds/ios-x64-simulator/rocksdb-native.bare +0 -0
  10. package/prebuilds/linux-arm64/rocksdb-native.bare +0 -0
  11. package/prebuilds/linux-arm64/rocksdb-native.node +0 -0
  12. package/prebuilds/linux-x64/rocksdb-native.bare +0 -0
  13. package/prebuilds/linux-x64/rocksdb-native.node +0 -0
  14. package/prebuilds/win32-arm64/rocksdb-native.bare +0 -0
  15. package/prebuilds/win32-arm64/rocksdb-native.node +0 -0
  16. package/prebuilds/win32-x64/rocksdb-native.bare +0 -0
  17. package/prebuilds/win32-x64/rocksdb-native.node +0 -0
  18. package/vendor/librocksdb/CMakeLists.txt +0 -96
  19. package/vendor/librocksdb/LICENSE +0 -201
  20. package/vendor/librocksdb/NOTICE +0 -13
  21. package/vendor/librocksdb/README.md +0 -11
  22. package/vendor/librocksdb/include/rocksdb.h +0 -294
  23. package/vendor/librocksdb/src/rocksdb.cc +0 -714
  24. package/vendor/librocksdb/vendor/rocksdb/CMakeLists.txt +0 -1642
  25. package/vendor/librocksdb/vendor/rocksdb/cache/cache.cc +0 -193
  26. package/vendor/librocksdb/vendor/rocksdb/cache/cache_bench.cc +0 -20
  27. package/vendor/librocksdb/vendor/rocksdb/cache/cache_bench_tool.cc +0 -1177
  28. package/vendor/librocksdb/vendor/rocksdb/cache/cache_entry_roles.cc +0 -104
  29. package/vendor/librocksdb/vendor/rocksdb/cache/cache_entry_roles.h +0 -20
  30. package/vendor/librocksdb/vendor/rocksdb/cache/cache_entry_stats.h +0 -182
  31. package/vendor/librocksdb/vendor/rocksdb/cache/cache_helpers.cc +0 -41
  32. package/vendor/librocksdb/vendor/rocksdb/cache/cache_helpers.h +0 -139
  33. package/vendor/librocksdb/vendor/rocksdb/cache/cache_key.cc +0 -364
  34. package/vendor/librocksdb/vendor/rocksdb/cache/cache_key.h +0 -143
  35. package/vendor/librocksdb/vendor/rocksdb/cache/cache_reservation_manager.cc +0 -184
  36. package/vendor/librocksdb/vendor/rocksdb/cache/cache_reservation_manager.h +0 -318
  37. package/vendor/librocksdb/vendor/rocksdb/cache/charged_cache.cc +0 -111
  38. package/vendor/librocksdb/vendor/rocksdb/cache/charged_cache.h +0 -61
  39. package/vendor/librocksdb/vendor/rocksdb/cache/clock_cache.cc +0 -3657
  40. package/vendor/librocksdb/vendor/rocksdb/cache/clock_cache.h +0 -1165
  41. package/vendor/librocksdb/vendor/rocksdb/cache/compressed_secondary_cache.cc +0 -414
  42. package/vendor/librocksdb/vendor/rocksdb/cache/compressed_secondary_cache.h +0 -151
  43. package/vendor/librocksdb/vendor/rocksdb/cache/lru_cache.cc +0 -726
  44. package/vendor/librocksdb/vendor/rocksdb/cache/lru_cache.h +0 -467
  45. package/vendor/librocksdb/vendor/rocksdb/cache/secondary_cache.cc +0 -12
  46. package/vendor/librocksdb/vendor/rocksdb/cache/secondary_cache_adapter.cc +0 -743
  47. package/vendor/librocksdb/vendor/rocksdb/cache/secondary_cache_adapter.h +0 -103
  48. package/vendor/librocksdb/vendor/rocksdb/cache/sharded_cache.cc +0 -147
  49. package/vendor/librocksdb/vendor/rocksdb/cache/sharded_cache.h +0 -322
  50. package/vendor/librocksdb/vendor/rocksdb/cache/tiered_secondary_cache.cc +0 -125
  51. package/vendor/librocksdb/vendor/rocksdb/cache/tiered_secondary_cache.h +0 -158
  52. package/vendor/librocksdb/vendor/rocksdb/cache/typed_cache.h +0 -380
  53. package/vendor/librocksdb/vendor/rocksdb/cmake/RocksDBConfig.cmake.in +0 -54
  54. package/vendor/librocksdb/vendor/rocksdb/db/arena_wrapped_db_iter.cc +0 -182
  55. package/vendor/librocksdb/vendor/rocksdb/db/arena_wrapped_db_iter.h +0 -128
  56. package/vendor/librocksdb/vendor/rocksdb/db/attribute_group_iterator_impl.cc +0 -20
  57. package/vendor/librocksdb/vendor/rocksdb/db/attribute_group_iterator_impl.h +0 -83
  58. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_constants.h +0 -16
  59. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_contents.cc +0 -42
  60. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_contents.h +0 -60
  61. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_counting_iterator.h +0 -150
  62. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_fetcher.cc +0 -34
  63. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_fetcher.h +0 -37
  64. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_addition.cc +0 -156
  65. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_addition.h +0 -67
  66. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_builder.cc +0 -429
  67. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_builder.h +0 -113
  68. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_cache.cc +0 -101
  69. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_cache.h +0 -56
  70. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_completion_callback.h +0 -84
  71. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_garbage.cc +0 -134
  72. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_garbage.h +0 -57
  73. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_meta.cc +0 -62
  74. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_meta.h +0 -170
  75. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_reader.cc +0 -622
  76. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_file_reader.h +0 -111
  77. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_garbage_meter.cc +0 -100
  78. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_garbage_meter.h +0 -102
  79. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_index.h +0 -187
  80. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_format.cc +0 -143
  81. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_format.h +0 -164
  82. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_sequential_reader.cc +0 -133
  83. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_sequential_reader.h +0 -83
  84. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_writer.cc +0 -207
  85. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_log_writer.h +0 -87
  86. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_read_request.h +0 -58
  87. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_source.cc +0 -459
  88. package/vendor/librocksdb/vendor/rocksdb/db/blob/blob_source.h +0 -161
  89. package/vendor/librocksdb/vendor/rocksdb/db/blob/prefetch_buffer_collection.cc +0 -23
  90. package/vendor/librocksdb/vendor/rocksdb/db/blob/prefetch_buffer_collection.h +0 -38
  91. package/vendor/librocksdb/vendor/rocksdb/db/builder.cc +0 -517
  92. package/vendor/librocksdb/vendor/rocksdb/db/builder.h +0 -76
  93. package/vendor/librocksdb/vendor/rocksdb/db/c.cc +0 -7133
  94. package/vendor/librocksdb/vendor/rocksdb/db/c_test.c +0 -4052
  95. package/vendor/librocksdb/vendor/rocksdb/db/coalescing_iterator.cc +0 -47
  96. package/vendor/librocksdb/vendor/rocksdb/db/coalescing_iterator.h +0 -79
  97. package/vendor/librocksdb/vendor/rocksdb/db/column_family.cc +0 -1859
  98. package/vendor/librocksdb/vendor/rocksdb/db/column_family.h +0 -918
  99. package/vendor/librocksdb/vendor/rocksdb/db/compaction/clipping_iterator.h +0 -281
  100. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction.cc +0 -995
  101. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction.h +0 -602
  102. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_iteration_stats.h +0 -56
  103. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_iterator.cc +0 -1523
  104. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_iterator.h +0 -557
  105. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_job.cc +0 -2155
  106. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_job.h +0 -520
  107. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_outputs.cc +0 -802
  108. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_outputs.h +0 -411
  109. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker.cc +0 -1245
  110. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker.h +0 -322
  111. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_fifo.cc +0 -478
  112. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_fifo.h +0 -61
  113. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_level.cc +0 -977
  114. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_level.h +0 -32
  115. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_universal.cc +0 -1578
  116. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_picker_universal.h +0 -29
  117. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_service_job.cc +0 -835
  118. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_state.cc +0 -46
  119. package/vendor/librocksdb/vendor/rocksdb/db/compaction/compaction_state.h +0 -42
  120. package/vendor/librocksdb/vendor/rocksdb/db/compaction/file_pri.h +0 -94
  121. package/vendor/librocksdb/vendor/rocksdb/db/compaction/sst_partitioner.cc +0 -83
  122. package/vendor/librocksdb/vendor/rocksdb/db/compaction/subcompaction_state.cc +0 -106
  123. package/vendor/librocksdb/vendor/rocksdb/db/compaction/subcompaction_state.h +0 -220
  124. package/vendor/librocksdb/vendor/rocksdb/db/convenience.cc +0 -101
  125. package/vendor/librocksdb/vendor/rocksdb/db/convenience_impl.h +0 -15
  126. package/vendor/librocksdb/vendor/rocksdb/db/db_filesnapshot.cc +0 -506
  127. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/compacted_db_impl.cc +0 -275
  128. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/compacted_db_impl.h +0 -147
  129. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl.cc +0 -6767
  130. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl.h +0 -3056
  131. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_compaction_flush.cc +0 -4390
  132. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_debug.cc +0 -327
  133. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_experimental.cc +0 -164
  134. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_files.cc +0 -1032
  135. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_follower.cc +0 -348
  136. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_follower.h +0 -54
  137. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_open.cc +0 -2325
  138. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_readonly.cc +0 -376
  139. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_readonly.h +0 -179
  140. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_secondary.cc +0 -1025
  141. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_secondary.h +0 -322
  142. package/vendor/librocksdb/vendor/rocksdb/db/db_impl/db_impl_write.cc +0 -2624
  143. package/vendor/librocksdb/vendor/rocksdb/db/db_info_dumper.cc +0 -165
  144. package/vendor/librocksdb/vendor/rocksdb/db/db_info_dumper.h +0 -15
  145. package/vendor/librocksdb/vendor/rocksdb/db/db_iter.cc +0 -1774
  146. package/vendor/librocksdb/vendor/rocksdb/db/db_iter.h +0 -444
  147. package/vendor/librocksdb/vendor/rocksdb/db/db_test2.cc +0 -7839
  148. package/vendor/librocksdb/vendor/rocksdb/db/db_test_util.cc +0 -1800
  149. package/vendor/librocksdb/vendor/rocksdb/db/db_test_util.h +0 -1427
  150. package/vendor/librocksdb/vendor/rocksdb/db/db_with_timestamp_test_util.cc +0 -96
  151. package/vendor/librocksdb/vendor/rocksdb/db/db_with_timestamp_test_util.h +0 -126
  152. package/vendor/librocksdb/vendor/rocksdb/db/dbformat.cc +0 -282
  153. package/vendor/librocksdb/vendor/rocksdb/db/dbformat.h +0 -1101
  154. package/vendor/librocksdb/vendor/rocksdb/db/error_handler.cc +0 -806
  155. package/vendor/librocksdb/vendor/rocksdb/db/error_handler.h +0 -149
  156. package/vendor/librocksdb/vendor/rocksdb/db/event_helpers.cc +0 -332
  157. package/vendor/librocksdb/vendor/rocksdb/db/event_helpers.h +0 -78
  158. package/vendor/librocksdb/vendor/rocksdb/db/experimental.cc +0 -1212
  159. package/vendor/librocksdb/vendor/rocksdb/db/external_sst_file_ingestion_job.cc +0 -1249
  160. package/vendor/librocksdb/vendor/rocksdb/db/external_sst_file_ingestion_job.h +0 -268
  161. package/vendor/librocksdb/vendor/rocksdb/db/file_indexer.cc +0 -216
  162. package/vendor/librocksdb/vendor/rocksdb/db/file_indexer.h +0 -140
  163. package/vendor/librocksdb/vendor/rocksdb/db/flush_job.cc +0 -1217
  164. package/vendor/librocksdb/vendor/rocksdb/db/flush_job.h +0 -240
  165. package/vendor/librocksdb/vendor/rocksdb/db/flush_scheduler.cc +0 -86
  166. package/vendor/librocksdb/vendor/rocksdb/db/flush_scheduler.h +0 -55
  167. package/vendor/librocksdb/vendor/rocksdb/db/forward_iterator.cc +0 -1082
  168. package/vendor/librocksdb/vendor/rocksdb/db/forward_iterator.h +0 -166
  169. package/vendor/librocksdb/vendor/rocksdb/db/forward_iterator_bench.cc +0 -378
  170. package/vendor/librocksdb/vendor/rocksdb/db/history_trimming_iterator.h +0 -95
  171. package/vendor/librocksdb/vendor/rocksdb/db/import_column_family_job.cc +0 -463
  172. package/vendor/librocksdb/vendor/rocksdb/db/import_column_family_job.h +0 -91
  173. package/vendor/librocksdb/vendor/rocksdb/db/internal_stats.cc +0 -2198
  174. package/vendor/librocksdb/vendor/rocksdb/db/internal_stats.h +0 -896
  175. package/vendor/librocksdb/vendor/rocksdb/db/job_context.h +0 -254
  176. package/vendor/librocksdb/vendor/rocksdb/db/kv_checksum.h +0 -484
  177. package/vendor/librocksdb/vendor/rocksdb/db/log_format.h +0 -55
  178. package/vendor/librocksdb/vendor/rocksdb/db/log_reader.cc +0 -958
  179. package/vendor/librocksdb/vendor/rocksdb/db/log_reader.h +0 -245
  180. package/vendor/librocksdb/vendor/rocksdb/db/log_writer.cc +0 -355
  181. package/vendor/librocksdb/vendor/rocksdb/db/log_writer.h +0 -151
  182. package/vendor/librocksdb/vendor/rocksdb/db/logs_with_prep_tracker.cc +0 -67
  183. package/vendor/librocksdb/vendor/rocksdb/db/logs_with_prep_tracker.h +0 -62
  184. package/vendor/librocksdb/vendor/rocksdb/db/lookup_key.h +0 -68
  185. package/vendor/librocksdb/vendor/rocksdb/db/malloc_stats.cc +0 -52
  186. package/vendor/librocksdb/vendor/rocksdb/db/malloc_stats.h +0 -22
  187. package/vendor/librocksdb/vendor/rocksdb/db/memtable.cc +0 -1684
  188. package/vendor/librocksdb/vendor/rocksdb/db/memtable.h +0 -712
  189. package/vendor/librocksdb/vendor/rocksdb/db/memtable_list.cc +0 -1028
  190. package/vendor/librocksdb/vendor/rocksdb/db/memtable_list.h +0 -514
  191. package/vendor/librocksdb/vendor/rocksdb/db/merge_context.h +0 -150
  192. package/vendor/librocksdb/vendor/rocksdb/db/merge_helper.cc +0 -699
  193. package/vendor/librocksdb/vendor/rocksdb/db/merge_helper.h +0 -318
  194. package/vendor/librocksdb/vendor/rocksdb/db/merge_operator.cc +0 -167
  195. package/vendor/librocksdb/vendor/rocksdb/db/multi_cf_iterator_impl.h +0 -296
  196. package/vendor/librocksdb/vendor/rocksdb/db/output_validator.cc +0 -29
  197. package/vendor/librocksdb/vendor/rocksdb/db/output_validator.h +0 -45
  198. package/vendor/librocksdb/vendor/rocksdb/db/periodic_task_scheduler.cc +0 -110
  199. package/vendor/librocksdb/vendor/rocksdb/db/periodic_task_scheduler.h +0 -108
  200. package/vendor/librocksdb/vendor/rocksdb/db/pinned_iterators_manager.h +0 -92
  201. package/vendor/librocksdb/vendor/rocksdb/db/post_memtable_callback.h +0 -25
  202. package/vendor/librocksdb/vendor/rocksdb/db/pre_release_callback.h +0 -37
  203. package/vendor/librocksdb/vendor/rocksdb/db/range_del_aggregator.cc +0 -553
  204. package/vendor/librocksdb/vendor/rocksdb/db/range_del_aggregator.h +0 -481
  205. package/vendor/librocksdb/vendor/rocksdb/db/range_del_aggregator_bench.cc +0 -280
  206. package/vendor/librocksdb/vendor/rocksdb/db/range_tombstone_fragmenter.cc +0 -515
  207. package/vendor/librocksdb/vendor/rocksdb/db/range_tombstone_fragmenter.h +0 -361
  208. package/vendor/librocksdb/vendor/rocksdb/db/read_callback.h +0 -54
  209. package/vendor/librocksdb/vendor/rocksdb/db/repair.cc +0 -864
  210. package/vendor/librocksdb/vendor/rocksdb/db/seqno_to_time_mapping.cc +0 -573
  211. package/vendor/librocksdb/vendor/rocksdb/db/seqno_to_time_mapping.h +0 -307
  212. package/vendor/librocksdb/vendor/rocksdb/db/snapshot_checker.h +0 -58
  213. package/vendor/librocksdb/vendor/rocksdb/db/snapshot_impl.cc +0 -25
  214. package/vendor/librocksdb/vendor/rocksdb/db/snapshot_impl.h +0 -239
  215. package/vendor/librocksdb/vendor/rocksdb/db/table_cache.cc +0 -745
  216. package/vendor/librocksdb/vendor/rocksdb/db/table_cache.h +0 -298
  217. package/vendor/librocksdb/vendor/rocksdb/db/table_cache_sync_and_async.h +0 -135
  218. package/vendor/librocksdb/vendor/rocksdb/db/table_properties_collector.cc +0 -74
  219. package/vendor/librocksdb/vendor/rocksdb/db/table_properties_collector.h +0 -185
  220. package/vendor/librocksdb/vendor/rocksdb/db/transaction_log_impl.cc +0 -296
  221. package/vendor/librocksdb/vendor/rocksdb/db/transaction_log_impl.h +0 -128
  222. package/vendor/librocksdb/vendor/rocksdb/db/trim_history_scheduler.cc +0 -54
  223. package/vendor/librocksdb/vendor/rocksdb/db/trim_history_scheduler.h +0 -46
  224. package/vendor/librocksdb/vendor/rocksdb/db/version_builder.cc +0 -1431
  225. package/vendor/librocksdb/vendor/rocksdb/db/version_builder.h +0 -93
  226. package/vendor/librocksdb/vendor/rocksdb/db/version_edit.cc +0 -1119
  227. package/vendor/librocksdb/vendor/rocksdb/db/version_edit.h +0 -769
  228. package/vendor/librocksdb/vendor/rocksdb/db/version_edit_handler.cc +0 -1264
  229. package/vendor/librocksdb/vendor/rocksdb/db/version_edit_handler.h +0 -390
  230. package/vendor/librocksdb/vendor/rocksdb/db/version_set.cc +0 -7562
  231. package/vendor/librocksdb/vendor/rocksdb/db/version_set.h +0 -1799
  232. package/vendor/librocksdb/vendor/rocksdb/db/version_set_sync_and_async.h +0 -169
  233. package/vendor/librocksdb/vendor/rocksdb/db/version_util.h +0 -77
  234. package/vendor/librocksdb/vendor/rocksdb/db/wal_edit.cc +0 -211
  235. package/vendor/librocksdb/vendor/rocksdb/db/wal_edit.h +0 -177
  236. package/vendor/librocksdb/vendor/rocksdb/db/wal_manager.cc +0 -539
  237. package/vendor/librocksdb/vendor/rocksdb/db/wal_manager.h +0 -138
  238. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_column_serialization.cc +0 -166
  239. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_column_serialization.h +0 -57
  240. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_columns.cc +0 -22
  241. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_columns_helper.cc +0 -52
  242. package/vendor/librocksdb/vendor/rocksdb/db/wide/wide_columns_helper.h +0 -40
  243. package/vendor/librocksdb/vendor/rocksdb/db/write_batch.cc +0 -3394
  244. package/vendor/librocksdb/vendor/rocksdb/db/write_batch_base.cc +0 -94
  245. package/vendor/librocksdb/vendor/rocksdb/db/write_batch_internal.h +0 -408
  246. package/vendor/librocksdb/vendor/rocksdb/db/write_callback.h +0 -27
  247. package/vendor/librocksdb/vendor/rocksdb/db/write_controller.cc +0 -121
  248. package/vendor/librocksdb/vendor/rocksdb/db/write_controller.h +0 -148
  249. package/vendor/librocksdb/vendor/rocksdb/db/write_stall_stats.cc +0 -179
  250. package/vendor/librocksdb/vendor/rocksdb/db/write_stall_stats.h +0 -47
  251. package/vendor/librocksdb/vendor/rocksdb/db/write_thread.cc +0 -931
  252. package/vendor/librocksdb/vendor/rocksdb/db/write_thread.h +0 -498
  253. package/vendor/librocksdb/vendor/rocksdb/env/composite_env.cc +0 -534
  254. package/vendor/librocksdb/vendor/rocksdb/env/composite_env_wrapper.h +0 -399
  255. package/vendor/librocksdb/vendor/rocksdb/env/emulated_clock.h +0 -114
  256. package/vendor/librocksdb/vendor/rocksdb/env/env.cc +0 -1253
  257. package/vendor/librocksdb/vendor/rocksdb/env/env_chroot.cc +0 -149
  258. package/vendor/librocksdb/vendor/rocksdb/env/env_chroot.h +0 -55
  259. package/vendor/librocksdb/vendor/rocksdb/env/env_encryption.cc +0 -1192
  260. package/vendor/librocksdb/vendor/rocksdb/env/env_encryption_ctr.h +0 -97
  261. package/vendor/librocksdb/vendor/rocksdb/env/env_posix.cc +0 -530
  262. package/vendor/librocksdb/vendor/rocksdb/env/file_system.cc +0 -278
  263. package/vendor/librocksdb/vendor/rocksdb/env/file_system_tracer.cc +0 -564
  264. package/vendor/librocksdb/vendor/rocksdb/env/file_system_tracer.h +0 -461
  265. package/vendor/librocksdb/vendor/rocksdb/env/fs_on_demand.cc +0 -331
  266. package/vendor/librocksdb/vendor/rocksdb/env/fs_on_demand.h +0 -139
  267. package/vendor/librocksdb/vendor/rocksdb/env/fs_posix.cc +0 -1285
  268. package/vendor/librocksdb/vendor/rocksdb/env/fs_readonly.h +0 -105
  269. package/vendor/librocksdb/vendor/rocksdb/env/fs_remap.cc +0 -341
  270. package/vendor/librocksdb/vendor/rocksdb/env/fs_remap.h +0 -137
  271. package/vendor/librocksdb/vendor/rocksdb/env/io_posix.cc +0 -1738
  272. package/vendor/librocksdb/vendor/rocksdb/env/io_posix.h +0 -517
  273. package/vendor/librocksdb/vendor/rocksdb/env/mock_env.cc +0 -1058
  274. package/vendor/librocksdb/vendor/rocksdb/env/mock_env.h +0 -144
  275. package/vendor/librocksdb/vendor/rocksdb/env/unique_id_gen.cc +0 -243
  276. package/vendor/librocksdb/vendor/rocksdb/env/unique_id_gen.h +0 -119
  277. package/vendor/librocksdb/vendor/rocksdb/file/delete_scheduler.cc +0 -513
  278. package/vendor/librocksdb/vendor/rocksdb/file/delete_scheduler.h +0 -200
  279. package/vendor/librocksdb/vendor/rocksdb/file/file_prefetch_buffer.cc +0 -992
  280. package/vendor/librocksdb/vendor/rocksdb/file/file_prefetch_buffer.h +0 -629
  281. package/vendor/librocksdb/vendor/rocksdb/file/file_util.cc +0 -308
  282. package/vendor/librocksdb/vendor/rocksdb/file/file_util.h +0 -123
  283. package/vendor/librocksdb/vendor/rocksdb/file/filename.cc +0 -538
  284. package/vendor/librocksdb/vendor/rocksdb/file/filename.h +0 -186
  285. package/vendor/librocksdb/vendor/rocksdb/file/line_file_reader.cc +0 -73
  286. package/vendor/librocksdb/vendor/rocksdb/file/line_file_reader.h +0 -60
  287. package/vendor/librocksdb/vendor/rocksdb/file/random_access_file_reader.cc +0 -639
  288. package/vendor/librocksdb/vendor/rocksdb/file/random_access_file_reader.h +0 -197
  289. package/vendor/librocksdb/vendor/rocksdb/file/read_write_util.cc +0 -33
  290. package/vendor/librocksdb/vendor/rocksdb/file/read_write_util.h +0 -31
  291. package/vendor/librocksdb/vendor/rocksdb/file/readahead_file_info.h +0 -33
  292. package/vendor/librocksdb/vendor/rocksdb/file/readahead_raf.cc +0 -169
  293. package/vendor/librocksdb/vendor/rocksdb/file/readahead_raf.h +0 -29
  294. package/vendor/librocksdb/vendor/rocksdb/file/sequence_file_reader.cc +0 -324
  295. package/vendor/librocksdb/vendor/rocksdb/file/sequence_file_reader.h +0 -127
  296. package/vendor/librocksdb/vendor/rocksdb/file/sst_file_manager_impl.cc +0 -525
  297. package/vendor/librocksdb/vendor/rocksdb/file/sst_file_manager_impl.h +0 -220
  298. package/vendor/librocksdb/vendor/rocksdb/file/writable_file_writer.cc +0 -1007
  299. package/vendor/librocksdb/vendor/rocksdb/file/writable_file_writer.h +0 -370
  300. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/advanced_cache.h +0 -665
  301. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/advanced_options.h +0 -1101
  302. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/attribute_groups.h +0 -114
  303. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/block_cache_trace_writer.h +0 -149
  304. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/c.h +0 -3122
  305. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/cache.h +0 -579
  306. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/cache_bench_tool.h +0 -14
  307. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/cleanable.h +0 -128
  308. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/compaction_filter.h +0 -374
  309. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/compaction_job_stats.h +0 -112
  310. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/comparator.h +0 -231
  311. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/compression_type.h +0 -186
  312. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/concurrent_task_limiter.h +0 -51
  313. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/configurable.h +0 -390
  314. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/convenience.h +0 -466
  315. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/customizable.h +0 -229
  316. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/data_structure.h +0 -186
  317. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/db.h +0 -2174
  318. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/db_bench_tool.h +0 -11
  319. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/db_dump_tool.h +0 -43
  320. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/db_stress_tool.h +0 -11
  321. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/env.h +0 -1920
  322. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/env_encryption.h +0 -363
  323. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/experimental.h +0 -492
  324. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/file_checksum.h +0 -146
  325. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/file_system.h +0 -1961
  326. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/filter_policy.h +0 -211
  327. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/flush_block_policy.h +0 -75
  328. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/functor_wrapper.h +0 -56
  329. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/io_status.h +0 -244
  330. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/iostats_context.h +0 -98
  331. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/iterator.h +0 -104
  332. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/iterator_base.h +0 -90
  333. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/ldb_tool.h +0 -42
  334. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/listener.h +0 -869
  335. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/memory_allocator.h +0 -87
  336. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/memtablerep.h +0 -421
  337. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/merge_operator.h +0 -337
  338. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/metadata.h +0 -258
  339. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/options.h +0 -2339
  340. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/perf_context.h +0 -319
  341. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/perf_level.h +0 -39
  342. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/persistent_cache.h +0 -74
  343. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/port_defs.h +0 -26
  344. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/rate_limiter.h +0 -172
  345. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/rocksdb_namespace.h +0 -16
  346. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/secondary_cache.h +0 -220
  347. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/slice.h +0 -264
  348. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/slice_transform.h +0 -135
  349. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/snapshot.h +0 -53
  350. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_dump_tool.h +0 -17
  351. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_file_manager.h +0 -139
  352. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_file_reader.h +0 -61
  353. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_file_writer.h +0 -203
  354. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/sst_partitioner.h +0 -142
  355. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/statistics.h +0 -794
  356. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/stats_history.h +0 -70
  357. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/status.h +0 -609
  358. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/system_clock.h +0 -129
  359. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/table.h +0 -938
  360. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/table_properties.h +0 -380
  361. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/table_reader_caller.h +0 -41
  362. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/thread_status.h +0 -197
  363. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/threadpool.h +0 -67
  364. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/trace_reader_writer.h +0 -52
  365. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/trace_record.h +0 -248
  366. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/trace_record_result.h +0 -187
  367. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/transaction_log.h +0 -128
  368. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/types.h +0 -113
  369. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/unique_id.h +0 -55
  370. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/universal_compaction.h +0 -127
  371. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/user_write_callback.h +0 -29
  372. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/agg_merge.h +0 -138
  373. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/backup_engine.h +0 -689
  374. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/cache_dump_load.h +0 -144
  375. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/checkpoint.h +0 -65
  376. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/convenience.h +0 -10
  377. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/customizable_util.h +0 -321
  378. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/db_ttl.h +0 -70
  379. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/debug.h +0 -46
  380. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/env_mirror.h +0 -179
  381. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/info_log_finder.h +0 -19
  382. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/ldb_cmd.h +0 -338
  383. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/ldb_cmd_execute_result.h +0 -75
  384. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/leveldb_options.h +0 -145
  385. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/lua/rocks_lua_custom_library.h +0 -43
  386. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/lua/rocks_lua_util.h +0 -55
  387. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/memory_util.h +0 -48
  388. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/object_registry.h +0 -583
  389. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/optimistic_transaction_db.h +0 -129
  390. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/option_change_migration.h +0 -24
  391. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/options_type.h +0 -1222
  392. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/options_util.h +0 -105
  393. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/replayer.h +0 -85
  394. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/sim_cache.h +0 -92
  395. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/stackable_db.h +0 -593
  396. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/table_properties_collectors.h +0 -133
  397. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/transaction.h +0 -765
  398. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/transaction_db.h +0 -510
  399. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/transaction_db_mutex.h +0 -89
  400. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/types_util.h +0 -36
  401. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/utilities/write_batch_with_index.h +0 -402
  402. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/version.h +0 -43
  403. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/wal_filter.h +0 -111
  404. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/wide_columns.h +0 -303
  405. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/write_batch.h +0 -518
  406. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/write_batch_base.h +0 -165
  407. package/vendor/librocksdb/vendor/rocksdb/include/rocksdb/write_buffer_manager.h +0 -183
  408. package/vendor/librocksdb/vendor/rocksdb/logging/auto_roll_logger.cc +0 -366
  409. package/vendor/librocksdb/vendor/rocksdb/logging/auto_roll_logger.h +0 -165
  410. package/vendor/librocksdb/vendor/rocksdb/logging/env_logger.h +0 -195
  411. package/vendor/librocksdb/vendor/rocksdb/logging/event_logger.cc +0 -68
  412. package/vendor/librocksdb/vendor/rocksdb/logging/event_logger.h +0 -202
  413. package/vendor/librocksdb/vendor/rocksdb/logging/log_buffer.cc +0 -91
  414. package/vendor/librocksdb/vendor/rocksdb/logging/log_buffer.h +0 -57
  415. package/vendor/librocksdb/vendor/rocksdb/logging/logging.h +0 -62
  416. package/vendor/librocksdb/vendor/rocksdb/memory/allocator.h +0 -58
  417. package/vendor/librocksdb/vendor/rocksdb/memory/arena.cc +0 -170
  418. package/vendor/librocksdb/vendor/rocksdb/memory/arena.h +0 -146
  419. package/vendor/librocksdb/vendor/rocksdb/memory/concurrent_arena.cc +0 -45
  420. package/vendor/librocksdb/vendor/rocksdb/memory/concurrent_arena.h +0 -215
  421. package/vendor/librocksdb/vendor/rocksdb/memory/jemalloc_nodump_allocator.cc +0 -304
  422. package/vendor/librocksdb/vendor/rocksdb/memory/jemalloc_nodump_allocator.h +0 -99
  423. package/vendor/librocksdb/vendor/rocksdb/memory/memkind_kmem_allocator.cc +0 -44
  424. package/vendor/librocksdb/vendor/rocksdb/memory/memkind_kmem_allocator.h +0 -43
  425. package/vendor/librocksdb/vendor/rocksdb/memory/memory_allocator.cc +0 -81
  426. package/vendor/librocksdb/vendor/rocksdb/memory/memory_allocator_impl.h +0 -47
  427. package/vendor/librocksdb/vendor/rocksdb/memory/memory_usage.h +0 -38
  428. package/vendor/librocksdb/vendor/rocksdb/memtable/alloc_tracker.cc +0 -63
  429. package/vendor/librocksdb/vendor/rocksdb/memtable/hash_linklist_rep.cc +0 -925
  430. package/vendor/librocksdb/vendor/rocksdb/memtable/hash_skiplist_rep.cc +0 -392
  431. package/vendor/librocksdb/vendor/rocksdb/memtable/inlineskiplist.h +0 -1051
  432. package/vendor/librocksdb/vendor/rocksdb/memtable/memtablerep_bench.cc +0 -687
  433. package/vendor/librocksdb/vendor/rocksdb/memtable/skiplist.h +0 -498
  434. package/vendor/librocksdb/vendor/rocksdb/memtable/skiplistrep.cc +0 -368
  435. package/vendor/librocksdb/vendor/rocksdb/memtable/stl_wrappers.h +0 -33
  436. package/vendor/librocksdb/vendor/rocksdb/memtable/vectorrep.cc +0 -307
  437. package/vendor/librocksdb/vendor/rocksdb/memtable/write_buffer_manager.cc +0 -185
  438. package/vendor/librocksdb/vendor/rocksdb/monitoring/file_read_sample.h +0 -23
  439. package/vendor/librocksdb/vendor/rocksdb/monitoring/histogram.cc +0 -280
  440. package/vendor/librocksdb/vendor/rocksdb/monitoring/histogram.h +0 -143
  441. package/vendor/librocksdb/vendor/rocksdb/monitoring/histogram_windowing.cc +0 -198
  442. package/vendor/librocksdb/vendor/rocksdb/monitoring/histogram_windowing.h +0 -84
  443. package/vendor/librocksdb/vendor/rocksdb/monitoring/in_memory_stats_history.cc +0 -50
  444. package/vendor/librocksdb/vendor/rocksdb/monitoring/in_memory_stats_history.h +0 -74
  445. package/vendor/librocksdb/vendor/rocksdb/monitoring/instrumented_mutex.cc +0 -90
  446. package/vendor/librocksdb/vendor/rocksdb/monitoring/instrumented_mutex.h +0 -126
  447. package/vendor/librocksdb/vendor/rocksdb/monitoring/iostats_context.cc +0 -78
  448. package/vendor/librocksdb/vendor/rocksdb/monitoring/iostats_context_imp.h +0 -62
  449. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_context.cc +0 -317
  450. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_context_imp.h +0 -103
  451. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_level.cc +0 -23
  452. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_level_imp.h +0 -14
  453. package/vendor/librocksdb/vendor/rocksdb/monitoring/perf_step_timer.h +0 -77
  454. package/vendor/librocksdb/vendor/rocksdb/monitoring/persistent_stats_history.cc +0 -173
  455. package/vendor/librocksdb/vendor/rocksdb/monitoring/persistent_stats_history.h +0 -83
  456. package/vendor/librocksdb/vendor/rocksdb/monitoring/statistics.cc +0 -561
  457. package/vendor/librocksdb/vendor/rocksdb/monitoring/statistics_impl.h +0 -143
  458. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_impl.cc +0 -163
  459. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_updater.cc +0 -328
  460. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_updater.h +0 -226
  461. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_updater_debug.cc +0 -43
  462. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_util.cc +0 -214
  463. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_util.h +0 -139
  464. package/vendor/librocksdb/vendor/rocksdb/monitoring/thread_status_util_debug.cc +0 -60
  465. package/vendor/librocksdb/vendor/rocksdb/options/cf_options.cc +0 -1218
  466. package/vendor/librocksdb/vendor/rocksdb/options/cf_options.h +0 -352
  467. package/vendor/librocksdb/vendor/rocksdb/options/configurable.cc +0 -720
  468. package/vendor/librocksdb/vendor/rocksdb/options/configurable_helper.h +0 -185
  469. package/vendor/librocksdb/vendor/rocksdb/options/configurable_test.h +0 -116
  470. package/vendor/librocksdb/vendor/rocksdb/options/customizable.cc +0 -133
  471. package/vendor/librocksdb/vendor/rocksdb/options/db_options.cc +0 -1113
  472. package/vendor/librocksdb/vendor/rocksdb/options/db_options.h +0 -160
  473. package/vendor/librocksdb/vendor/rocksdb/options/offpeak_time_info.cc +0 -59
  474. package/vendor/librocksdb/vendor/rocksdb/options/offpeak_time_info.h +0 -37
  475. package/vendor/librocksdb/vendor/rocksdb/options/options.cc +0 -717
  476. package/vendor/librocksdb/vendor/rocksdb/options/options_helper.cc +0 -1438
  477. package/vendor/librocksdb/vendor/rocksdb/options/options_helper.h +0 -115
  478. package/vendor/librocksdb/vendor/rocksdb/options/options_parser.cc +0 -745
  479. package/vendor/librocksdb/vendor/rocksdb/options/options_parser.h +0 -151
  480. package/vendor/librocksdb/vendor/rocksdb/port/jemalloc_helper.h +0 -107
  481. package/vendor/librocksdb/vendor/rocksdb/port/lang.h +0 -97
  482. package/vendor/librocksdb/vendor/rocksdb/port/likely.h +0 -18
  483. package/vendor/librocksdb/vendor/rocksdb/port/malloc.h +0 -17
  484. package/vendor/librocksdb/vendor/rocksdb/port/mmap.cc +0 -98
  485. package/vendor/librocksdb/vendor/rocksdb/port/mmap.h +0 -90
  486. package/vendor/librocksdb/vendor/rocksdb/port/port.h +0 -21
  487. package/vendor/librocksdb/vendor/rocksdb/port/port_dirent.h +0 -44
  488. package/vendor/librocksdb/vendor/rocksdb/port/port_example.h +0 -101
  489. package/vendor/librocksdb/vendor/rocksdb/port/port_posix.cc +0 -300
  490. package/vendor/librocksdb/vendor/rocksdb/port/port_posix.h +0 -246
  491. package/vendor/librocksdb/vendor/rocksdb/port/stack_trace.cc +0 -418
  492. package/vendor/librocksdb/vendor/rocksdb/port/stack_trace.h +0 -31
  493. package/vendor/librocksdb/vendor/rocksdb/port/sys_time.h +0 -63
  494. package/vendor/librocksdb/vendor/rocksdb/port/util_logger.h +0 -18
  495. package/vendor/librocksdb/vendor/rocksdb/port/win/env_default.cc +0 -45
  496. package/vendor/librocksdb/vendor/rocksdb/port/win/env_win.cc +0 -1436
  497. package/vendor/librocksdb/vendor/rocksdb/port/win/env_win.h +0 -305
  498. package/vendor/librocksdb/vendor/rocksdb/port/win/io_win.cc +0 -1101
  499. package/vendor/librocksdb/vendor/rocksdb/port/win/io_win.h +0 -504
  500. package/vendor/librocksdb/vendor/rocksdb/port/win/port_win.cc +0 -305
  501. package/vendor/librocksdb/vendor/rocksdb/port/win/port_win.h +0 -382
  502. package/vendor/librocksdb/vendor/rocksdb/port/win/win_jemalloc.cc +0 -80
  503. package/vendor/librocksdb/vendor/rocksdb/port/win/win_logger.cc +0 -192
  504. package/vendor/librocksdb/vendor/rocksdb/port/win/win_logger.h +0 -64
  505. package/vendor/librocksdb/vendor/rocksdb/port/win/win_thread.cc +0 -170
  506. package/vendor/librocksdb/vendor/rocksdb/port/win/win_thread.h +0 -117
  507. package/vendor/librocksdb/vendor/rocksdb/port/win/xpress_win.cc +0 -210
  508. package/vendor/librocksdb/vendor/rocksdb/port/win/xpress_win.h +0 -26
  509. package/vendor/librocksdb/vendor/rocksdb/port/xpress.h +0 -17
  510. package/vendor/librocksdb/vendor/rocksdb/rocksdb.pc.in +0 -10
  511. package/vendor/librocksdb/vendor/rocksdb/table/adaptive/adaptive_table_factory.cc +0 -119
  512. package/vendor/librocksdb/vendor/rocksdb/table/adaptive/adaptive_table_factory.h +0 -56
  513. package/vendor/librocksdb/vendor/rocksdb/table/block_based/binary_search_index_reader.cc +0 -73
  514. package/vendor/librocksdb/vendor/rocksdb/table/block_based/binary_search_index_reader.h +0 -48
  515. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block.cc +0 -1341
  516. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block.h +0 -969
  517. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_builder.cc +0 -2148
  518. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_builder.h +0 -208
  519. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_factory.cc +0 -980
  520. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_factory.h +0 -102
  521. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_iterator.cc +0 -893
  522. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_iterator.h +0 -445
  523. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_reader.cc +0 -3296
  524. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_reader.h +0 -785
  525. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_reader_impl.h +0 -205
  526. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_based_table_reader_sync_and_async.h +0 -819
  527. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_builder.cc +0 -266
  528. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_builder.h +0 -128
  529. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_cache.cc +0 -108
  530. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_cache.h +0 -190
  531. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_prefetcher.cc +0 -158
  532. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_prefetcher.h +0 -74
  533. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_prefix_index.cc +0 -226
  534. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_prefix_index.h +0 -70
  535. package/vendor/librocksdb/vendor/rocksdb/table/block_based/block_type.h +0 -34
  536. package/vendor/librocksdb/vendor/rocksdb/table/block_based/cachable_entry.h +0 -249
  537. package/vendor/librocksdb/vendor/rocksdb/table/block_based/data_block_footer.cc +0 -59
  538. package/vendor/librocksdb/vendor/rocksdb/table/block_based/data_block_footer.h +0 -25
  539. package/vendor/librocksdb/vendor/rocksdb/table/block_based/data_block_hash_index.cc +0 -94
  540. package/vendor/librocksdb/vendor/rocksdb/table/block_based/data_block_hash_index.h +0 -137
  541. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_block.h +0 -189
  542. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_block_reader_common.cc +0 -169
  543. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_block_reader_common.h +0 -79
  544. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_policy.cc +0 -1989
  545. package/vendor/librocksdb/vendor/rocksdb/table/block_based/filter_policy_internal.h +0 -341
  546. package/vendor/librocksdb/vendor/rocksdb/table/block_based/flush_block_policy.cc +0 -132
  547. package/vendor/librocksdb/vendor/rocksdb/table/block_based/flush_block_policy_impl.h +0 -40
  548. package/vendor/librocksdb/vendor/rocksdb/table/block_based/full_filter_block.cc +0 -297
  549. package/vendor/librocksdb/vendor/rocksdb/table/block_based/full_filter_block.h +0 -142
  550. package/vendor/librocksdb/vendor/rocksdb/table/block_based/hash_index_reader.cc +0 -146
  551. package/vendor/librocksdb/vendor/rocksdb/table/block_based/hash_index_reader.h +0 -49
  552. package/vendor/librocksdb/vendor/rocksdb/table/block_based/index_builder.cc +0 -305
  553. package/vendor/librocksdb/vendor/rocksdb/table/block_based/index_builder.h +0 -534
  554. package/vendor/librocksdb/vendor/rocksdb/table/block_based/index_reader_common.cc +0 -62
  555. package/vendor/librocksdb/vendor/rocksdb/table/block_based/index_reader_common.h +0 -94
  556. package/vendor/librocksdb/vendor/rocksdb/table/block_based/mock_block_based_table.h +0 -62
  557. package/vendor/librocksdb/vendor/rocksdb/table/block_based/parsed_full_filter_block.cc +0 -23
  558. package/vendor/librocksdb/vendor/rocksdb/table/block_based/parsed_full_filter_block.h +0 -47
  559. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_filter_block.cc +0 -610
  560. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_filter_block.h +0 -188
  561. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_index_iterator.cc +0 -164
  562. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_index_iterator.h +0 -160
  563. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_index_reader.cc +0 -264
  564. package/vendor/librocksdb/vendor/rocksdb/table/block_based/partitioned_index_reader.h +0 -58
  565. package/vendor/librocksdb/vendor/rocksdb/table/block_based/reader_common.cc +0 -64
  566. package/vendor/librocksdb/vendor/rocksdb/table/block_based/reader_common.h +0 -36
  567. package/vendor/librocksdb/vendor/rocksdb/table/block_based/uncompression_dict_reader.cc +0 -118
  568. package/vendor/librocksdb/vendor/rocksdb/table/block_based/uncompression_dict_reader.h +0 -60
  569. package/vendor/librocksdb/vendor/rocksdb/table/block_fetcher.cc +0 -458
  570. package/vendor/librocksdb/vendor/rocksdb/table/block_fetcher.h +0 -168
  571. package/vendor/librocksdb/vendor/rocksdb/table/compaction_merging_iterator.cc +0 -370
  572. package/vendor/librocksdb/vendor/rocksdb/table/compaction_merging_iterator.h +0 -45
  573. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_builder.cc +0 -555
  574. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_builder.h +0 -136
  575. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_factory.cc +0 -100
  576. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_factory.h +0 -80
  577. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_reader.cc +0 -416
  578. package/vendor/librocksdb/vendor/rocksdb/table/cuckoo/cuckoo_table_reader.h +0 -100
  579. package/vendor/librocksdb/vendor/rocksdb/table/format.cc +0 -708
  580. package/vendor/librocksdb/vendor/rocksdb/table/format.h +0 -439
  581. package/vendor/librocksdb/vendor/rocksdb/table/get_context.cc +0 -622
  582. package/vendor/librocksdb/vendor/rocksdb/table/get_context.h +0 -259
  583. package/vendor/librocksdb/vendor/rocksdb/table/internal_iterator.h +0 -242
  584. package/vendor/librocksdb/vendor/rocksdb/table/iter_heap.h +0 -44
  585. package/vendor/librocksdb/vendor/rocksdb/table/iterator.cc +0 -134
  586. package/vendor/librocksdb/vendor/rocksdb/table/iterator_wrapper.h +0 -225
  587. package/vendor/librocksdb/vendor/rocksdb/table/merging_iterator.cc +0 -1755
  588. package/vendor/librocksdb/vendor/rocksdb/table/merging_iterator.h +0 -100
  589. package/vendor/librocksdb/vendor/rocksdb/table/meta_blocks.cc +0 -590
  590. package/vendor/librocksdb/vendor/rocksdb/table/meta_blocks.h +0 -181
  591. package/vendor/librocksdb/vendor/rocksdb/table/mock_table.cc +0 -355
  592. package/vendor/librocksdb/vendor/rocksdb/table/mock_table.h +0 -92
  593. package/vendor/librocksdb/vendor/rocksdb/table/multiget_context.h +0 -405
  594. package/vendor/librocksdb/vendor/rocksdb/table/persistent_cache_helper.cc +0 -110
  595. package/vendor/librocksdb/vendor/rocksdb/table/persistent_cache_helper.h +0 -46
  596. package/vendor/librocksdb/vendor/rocksdb/table/persistent_cache_options.h +0 -34
  597. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_bloom.cc +0 -78
  598. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_bloom.h +0 -132
  599. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_builder.cc +0 -348
  600. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_builder.h +0 -151
  601. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_factory.cc +0 -295
  602. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_factory.h +0 -180
  603. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_index.cc +0 -211
  604. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_index.h +0 -246
  605. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_key_coding.cc +0 -508
  606. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_key_coding.h +0 -199
  607. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_reader.cc +0 -778
  608. package/vendor/librocksdb/vendor/rocksdb/table/plain/plain_table_reader.h +0 -243
  609. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_dumper.cc +0 -601
  610. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_dumper.h +0 -104
  611. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_reader.cc +0 -166
  612. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_writer.cc +0 -536
  613. package/vendor/librocksdb/vendor/rocksdb/table/sst_file_writer_collectors.h +0 -97
  614. package/vendor/librocksdb/vendor/rocksdb/table/table_builder.h +0 -239
  615. package/vendor/librocksdb/vendor/rocksdb/table/table_factory.cc +0 -52
  616. package/vendor/librocksdb/vendor/rocksdb/table/table_iterator.h +0 -69
  617. package/vendor/librocksdb/vendor/rocksdb/table/table_properties.cc +0 -357
  618. package/vendor/librocksdb/vendor/rocksdb/table/table_properties_internal.h +0 -14
  619. package/vendor/librocksdb/vendor/rocksdb/table/table_reader.h +0 -202
  620. package/vendor/librocksdb/vendor/rocksdb/table/table_reader_bench.cc +0 -341
  621. package/vendor/librocksdb/vendor/rocksdb/table/two_level_iterator.cc +0 -222
  622. package/vendor/librocksdb/vendor/rocksdb/table/two_level_iterator.h +0 -43
  623. package/vendor/librocksdb/vendor/rocksdb/table/unique_id.cc +0 -223
  624. package/vendor/librocksdb/vendor/rocksdb/table/unique_id_impl.h +0 -93
  625. package/vendor/librocksdb/vendor/rocksdb/test_util/mock_time_env.cc +0 -38
  626. package/vendor/librocksdb/vendor/rocksdb/test_util/mock_time_env.h +0 -109
  627. package/vendor/librocksdb/vendor/rocksdb/test_util/secondary_cache_test_util.cc +0 -93
  628. package/vendor/librocksdb/vendor/rocksdb/test_util/secondary_cache_test_util.h +0 -131
  629. package/vendor/librocksdb/vendor/rocksdb/test_util/sync_point.cc +0 -82
  630. package/vendor/librocksdb/vendor/rocksdb/test_util/sync_point.h +0 -182
  631. package/vendor/librocksdb/vendor/rocksdb/test_util/sync_point_impl.cc +0 -152
  632. package/vendor/librocksdb/vendor/rocksdb/test_util/sync_point_impl.h +0 -96
  633. package/vendor/librocksdb/vendor/rocksdb/test_util/testharness.cc +0 -105
  634. package/vendor/librocksdb/vendor/rocksdb/test_util/testharness.h +0 -124
  635. package/vendor/librocksdb/vendor/rocksdb/test_util/testutil.cc +0 -776
  636. package/vendor/librocksdb/vendor/rocksdb/test_util/testutil.h +0 -908
  637. package/vendor/librocksdb/vendor/rocksdb/test_util/transaction_test_util.cc +0 -400
  638. package/vendor/librocksdb/vendor/rocksdb/test_util/transaction_test_util.h +0 -147
  639. package/vendor/librocksdb/vendor/rocksdb/tools/CMakeLists.txt +0 -30
  640. package/vendor/librocksdb/vendor/rocksdb/tools/blob_dump.cc +0 -103
  641. package/vendor/librocksdb/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.cc +0 -2331
  642. package/vendor/librocksdb/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.h +0 -398
  643. package/vendor/librocksdb/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer_tool.cc +0 -17
  644. package/vendor/librocksdb/vendor/rocksdb/tools/db_bench.cc +0 -21
  645. package/vendor/librocksdb/vendor/rocksdb/tools/db_bench_tool.cc +0 -8743
  646. package/vendor/librocksdb/vendor/rocksdb/tools/db_repl_stress.cc +0 -132
  647. package/vendor/librocksdb/vendor/rocksdb/tools/dump/db_dump_tool.cc +0 -264
  648. package/vendor/librocksdb/vendor/rocksdb/tools/dump/rocksdb_dump.cc +0 -60
  649. package/vendor/librocksdb/vendor/rocksdb/tools/dump/rocksdb_undump.cc +0 -59
  650. package/vendor/librocksdb/vendor/rocksdb/tools/io_tracer_parser.cc +0 -17
  651. package/vendor/librocksdb/vendor/rocksdb/tools/io_tracer_parser_tool.cc +0 -142
  652. package/vendor/librocksdb/vendor/rocksdb/tools/io_tracer_parser_tool.h +0 -38
  653. package/vendor/librocksdb/vendor/rocksdb/tools/ldb.cc +0 -13
  654. package/vendor/librocksdb/vendor/rocksdb/tools/ldb_cmd.cc +0 -5044
  655. package/vendor/librocksdb/vendor/rocksdb/tools/ldb_cmd_impl.h +0 -814
  656. package/vendor/librocksdb/vendor/rocksdb/tools/ldb_tool.cc +0 -192
  657. package/vendor/librocksdb/vendor/rocksdb/tools/simulated_hybrid_file_system.cc +0 -244
  658. package/vendor/librocksdb/vendor/rocksdb/tools/simulated_hybrid_file_system.h +0 -124
  659. package/vendor/librocksdb/vendor/rocksdb/tools/sst_dump.cc +0 -12
  660. package/vendor/librocksdb/vendor/rocksdb/tools/sst_dump_tool.cc +0 -588
  661. package/vendor/librocksdb/vendor/rocksdb/tools/trace_analyzer.cc +0 -17
  662. package/vendor/librocksdb/vendor/rocksdb/tools/trace_analyzer_tool.cc +0 -1935
  663. package/vendor/librocksdb/vendor/rocksdb/tools/trace_analyzer_tool.h +0 -329
  664. package/vendor/librocksdb/vendor/rocksdb/tools/write_stress.cc +0 -305
  665. package/vendor/librocksdb/vendor/rocksdb/trace_replay/block_cache_tracer.cc +0 -509
  666. package/vendor/librocksdb/vendor/rocksdb/trace_replay/block_cache_tracer.h +0 -239
  667. package/vendor/librocksdb/vendor/rocksdb/trace_replay/io_tracer.cc +0 -303
  668. package/vendor/librocksdb/vendor/rocksdb/trace_replay/io_tracer.h +0 -185
  669. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_record.cc +0 -206
  670. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_record_handler.cc +0 -190
  671. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_record_handler.h +0 -46
  672. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_record_result.cc +0 -146
  673. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_replay.cc +0 -632
  674. package/vendor/librocksdb/vendor/rocksdb/trace_replay/trace_replay.h +0 -184
  675. package/vendor/librocksdb/vendor/rocksdb/util/aligned_buffer.h +0 -235
  676. package/vendor/librocksdb/vendor/rocksdb/util/aligned_storage.h +0 -24
  677. package/vendor/librocksdb/vendor/rocksdb/util/async_file_reader.cc +0 -84
  678. package/vendor/librocksdb/vendor/rocksdb/util/async_file_reader.h +0 -144
  679. package/vendor/librocksdb/vendor/rocksdb/util/atomic.h +0 -111
  680. package/vendor/librocksdb/vendor/rocksdb/util/autovector.h +0 -397
  681. package/vendor/librocksdb/vendor/rocksdb/util/bloom_impl.h +0 -489
  682. package/vendor/librocksdb/vendor/rocksdb/util/build_version.cc.in +0 -79
  683. package/vendor/librocksdb/vendor/rocksdb/util/cast_util.h +0 -88
  684. package/vendor/librocksdb/vendor/rocksdb/util/channel.h +0 -69
  685. package/vendor/librocksdb/vendor/rocksdb/util/cleanable.cc +0 -181
  686. package/vendor/librocksdb/vendor/rocksdb/util/coding.cc +0 -90
  687. package/vendor/librocksdb/vendor/rocksdb/util/coding.h +0 -385
  688. package/vendor/librocksdb/vendor/rocksdb/util/coding_lean.h +0 -101
  689. package/vendor/librocksdb/vendor/rocksdb/util/compaction_job_stats_impl.cc +0 -94
  690. package/vendor/librocksdb/vendor/rocksdb/util/comparator.cc +0 -443
  691. package/vendor/librocksdb/vendor/rocksdb/util/compression.cc +0 -122
  692. package/vendor/librocksdb/vendor/rocksdb/util/compression.h +0 -1879
  693. package/vendor/librocksdb/vendor/rocksdb/util/compression_context_cache.cc +0 -106
  694. package/vendor/librocksdb/vendor/rocksdb/util/compression_context_cache.h +0 -47
  695. package/vendor/librocksdb/vendor/rocksdb/util/concurrent_task_limiter_impl.cc +0 -64
  696. package/vendor/librocksdb/vendor/rocksdb/util/concurrent_task_limiter_impl.h +0 -67
  697. package/vendor/librocksdb/vendor/rocksdb/util/core_local.h +0 -85
  698. package/vendor/librocksdb/vendor/rocksdb/util/coro_utils.h +0 -112
  699. package/vendor/librocksdb/vendor/rocksdb/util/crc32c.cc +0 -1295
  700. package/vendor/librocksdb/vendor/rocksdb/util/crc32c.h +0 -56
  701. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_arm64.cc +0 -213
  702. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_arm64.h +0 -51
  703. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_ppc.c +0 -94
  704. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_ppc.h +0 -21
  705. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_ppc_asm.S +0 -756
  706. package/vendor/librocksdb/vendor/rocksdb/util/crc32c_ppc_constants.h +0 -900
  707. package/vendor/librocksdb/vendor/rocksdb/util/data_structure.cc +0 -16
  708. package/vendor/librocksdb/vendor/rocksdb/util/defer.h +0 -82
  709. package/vendor/librocksdb/vendor/rocksdb/util/distributed_mutex.h +0 -50
  710. package/vendor/librocksdb/vendor/rocksdb/util/duplicate_detector.h +0 -69
  711. package/vendor/librocksdb/vendor/rocksdb/util/dynamic_bloom.cc +0 -70
  712. package/vendor/librocksdb/vendor/rocksdb/util/dynamic_bloom.h +0 -214
  713. package/vendor/librocksdb/vendor/rocksdb/util/fastrange.h +0 -114
  714. package/vendor/librocksdb/vendor/rocksdb/util/file_checksum_helper.cc +0 -170
  715. package/vendor/librocksdb/vendor/rocksdb/util/file_checksum_helper.h +0 -101
  716. package/vendor/librocksdb/vendor/rocksdb/util/filter_bench.cc +0 -840
  717. package/vendor/librocksdb/vendor/rocksdb/util/gflags_compat.h +0 -29
  718. package/vendor/librocksdb/vendor/rocksdb/util/hash.cc +0 -201
  719. package/vendor/librocksdb/vendor/rocksdb/util/hash.h +0 -141
  720. package/vendor/librocksdb/vendor/rocksdb/util/hash128.h +0 -26
  721. package/vendor/librocksdb/vendor/rocksdb/util/hash_containers.h +0 -51
  722. package/vendor/librocksdb/vendor/rocksdb/util/hash_map.h +0 -67
  723. package/vendor/librocksdb/vendor/rocksdb/util/heap.h +0 -174
  724. package/vendor/librocksdb/vendor/rocksdb/util/kv_map.h +0 -33
  725. package/vendor/librocksdb/vendor/rocksdb/util/log_write_bench.cc +0 -88
  726. package/vendor/librocksdb/vendor/rocksdb/util/math.h +0 -351
  727. package/vendor/librocksdb/vendor/rocksdb/util/math128.h +0 -338
  728. package/vendor/librocksdb/vendor/rocksdb/util/murmurhash.cc +0 -196
  729. package/vendor/librocksdb/vendor/rocksdb/util/murmurhash.h +0 -43
  730. package/vendor/librocksdb/vendor/rocksdb/util/mutexlock.h +0 -189
  731. package/vendor/librocksdb/vendor/rocksdb/util/overload.h +0 -23
  732. package/vendor/librocksdb/vendor/rocksdb/util/ppc-opcode.h +0 -27
  733. package/vendor/librocksdb/vendor/rocksdb/util/random.cc +0 -63
  734. package/vendor/librocksdb/vendor/rocksdb/util/random.h +0 -190
  735. package/vendor/librocksdb/vendor/rocksdb/util/rate_limiter.cc +0 -391
  736. package/vendor/librocksdb/vendor/rocksdb/util/rate_limiter_impl.h +0 -156
  737. package/vendor/librocksdb/vendor/rocksdb/util/repeatable_thread.h +0 -149
  738. package/vendor/librocksdb/vendor/rocksdb/util/ribbon_alg.h +0 -1225
  739. package/vendor/librocksdb/vendor/rocksdb/util/ribbon_config.cc +0 -498
  740. package/vendor/librocksdb/vendor/rocksdb/util/ribbon_config.h +0 -182
  741. package/vendor/librocksdb/vendor/rocksdb/util/ribbon_impl.h +0 -1137
  742. package/vendor/librocksdb/vendor/rocksdb/util/set_comparator.h +0 -24
  743. package/vendor/librocksdb/vendor/rocksdb/util/single_thread_executor.h +0 -57
  744. package/vendor/librocksdb/vendor/rocksdb/util/slice.cc +0 -366
  745. package/vendor/librocksdb/vendor/rocksdb/util/status.cc +0 -163
  746. package/vendor/librocksdb/vendor/rocksdb/util/stderr_logger.cc +0 -62
  747. package/vendor/librocksdb/vendor/rocksdb/util/stderr_logger.h +0 -41
  748. package/vendor/librocksdb/vendor/rocksdb/util/stop_watch.h +0 -136
  749. package/vendor/librocksdb/vendor/rocksdb/util/string_util.cc +0 -554
  750. package/vendor/librocksdb/vendor/rocksdb/util/string_util.h +0 -185
  751. package/vendor/librocksdb/vendor/rocksdb/util/thread_guard.h +0 -41
  752. package/vendor/librocksdb/vendor/rocksdb/util/thread_local.cc +0 -521
  753. package/vendor/librocksdb/vendor/rocksdb/util/thread_local.h +0 -100
  754. package/vendor/librocksdb/vendor/rocksdb/util/thread_operation.h +0 -122
  755. package/vendor/librocksdb/vendor/rocksdb/util/threadpool_imp.cc +0 -550
  756. package/vendor/librocksdb/vendor/rocksdb/util/threadpool_imp.h +0 -120
  757. package/vendor/librocksdb/vendor/rocksdb/util/timer.h +0 -340
  758. package/vendor/librocksdb/vendor/rocksdb/util/timer_queue.h +0 -231
  759. package/vendor/librocksdb/vendor/rocksdb/util/udt_util.cc +0 -418
  760. package/vendor/librocksdb/vendor/rocksdb/util/udt_util.h +0 -275
  761. package/vendor/librocksdb/vendor/rocksdb/util/user_comparator_wrapper.h +0 -64
  762. package/vendor/librocksdb/vendor/rocksdb/util/vector_iterator.h +0 -114
  763. package/vendor/librocksdb/vendor/rocksdb/util/work_queue.h +0 -150
  764. package/vendor/librocksdb/vendor/rocksdb/util/write_batch_util.cc +0 -25
  765. package/vendor/librocksdb/vendor/rocksdb/util/write_batch_util.h +0 -90
  766. package/vendor/librocksdb/vendor/rocksdb/util/xxhash.cc +0 -48
  767. package/vendor/librocksdb/vendor/rocksdb/util/xxhash.h +0 -6364
  768. package/vendor/librocksdb/vendor/rocksdb/util/xxph3.h +0 -1760
  769. package/vendor/librocksdb/vendor/rocksdb/utilities/agg_merge/agg_merge.cc +0 -237
  770. package/vendor/librocksdb/vendor/rocksdb/utilities/agg_merge/agg_merge_impl.h +0 -49
  771. package/vendor/librocksdb/vendor/rocksdb/utilities/agg_merge/test_agg_merge.cc +0 -103
  772. package/vendor/librocksdb/vendor/rocksdb/utilities/agg_merge/test_agg_merge.h +0 -47
  773. package/vendor/librocksdb/vendor/rocksdb/utilities/backup/backup_engine.cc +0 -3357
  774. package/vendor/librocksdb/vendor/rocksdb/utilities/backup/backup_engine_impl.h +0 -34
  775. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_compaction_filter.cc +0 -490
  776. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_compaction_filter.h +0 -202
  777. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db.cc +0 -109
  778. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db.h +0 -231
  779. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_gc_stats.h +0 -54
  780. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_impl.cc +0 -2269
  781. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_impl.h +0 -514
  782. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_impl_filesnapshot.cc +0 -127
  783. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_iterator.h +0 -148
  784. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_db_listener.h +0 -71
  785. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_dump_tool.cc +0 -276
  786. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_dump_tool.h +0 -56
  787. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_file.cc +0 -311
  788. package/vendor/librocksdb/vendor/rocksdb/utilities/blob_db/blob_file.h +0 -245
  789. package/vendor/librocksdb/vendor/rocksdb/utilities/cache_dump_load.cc +0 -67
  790. package/vendor/librocksdb/vendor/rocksdb/utilities/cache_dump_load_impl.cc +0 -389
  791. package/vendor/librocksdb/vendor/rocksdb/utilities/cache_dump_load_impl.h +0 -368
  792. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/cassandra_compaction_filter.cc +0 -104
  793. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/cassandra_compaction_filter.h +0 -57
  794. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/cassandra_options.h +0 -41
  795. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/format.cc +0 -365
  796. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/format.h +0 -183
  797. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/merge_operator.cc +0 -76
  798. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/merge_operator.h +0 -43
  799. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/serialize.h +0 -81
  800. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/test_utils.cc +0 -67
  801. package/vendor/librocksdb/vendor/rocksdb/utilities/cassandra/test_utils.h +0 -42
  802. package/vendor/librocksdb/vendor/rocksdb/utilities/checkpoint/checkpoint_impl.cc +0 -472
  803. package/vendor/librocksdb/vendor/rocksdb/utilities/checkpoint/checkpoint_impl.h +0 -64
  804. package/vendor/librocksdb/vendor/rocksdb/utilities/compaction_filters/layered_compaction_filter_base.h +0 -41
  805. package/vendor/librocksdb/vendor/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.cc +0 -24
  806. package/vendor/librocksdb/vendor/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.h +0 -26
  807. package/vendor/librocksdb/vendor/rocksdb/utilities/compaction_filters.cc +0 -52
  808. package/vendor/librocksdb/vendor/rocksdb/utilities/convenience/info_log_finder.cc +0 -26
  809. package/vendor/librocksdb/vendor/rocksdb/utilities/counted_fs.cc +0 -379
  810. package/vendor/librocksdb/vendor/rocksdb/utilities/counted_fs.h +0 -158
  811. package/vendor/librocksdb/vendor/rocksdb/utilities/debug.cc +0 -134
  812. package/vendor/librocksdb/vendor/rocksdb/utilities/env_mirror.cc +0 -280
  813. package/vendor/librocksdb/vendor/rocksdb/utilities/env_timed.cc +0 -181
  814. package/vendor/librocksdb/vendor/rocksdb/utilities/env_timed.h +0 -95
  815. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_env.cc +0 -555
  816. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_env.h +0 -252
  817. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_fs.cc +0 -1507
  818. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_fs.h +0 -760
  819. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_secondary_cache.cc +0 -138
  820. package/vendor/librocksdb/vendor/rocksdb/utilities/fault_injection_secondary_cache.h +0 -115
  821. package/vendor/librocksdb/vendor/rocksdb/utilities/leveldb_options/leveldb_options.cc +0 -57
  822. package/vendor/librocksdb/vendor/rocksdb/utilities/memory/memory_util.cc +0 -50
  823. package/vendor/librocksdb/vendor/rocksdb/utilities/memory_allocators.h +0 -103
  824. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/bytesxor.cc +0 -57
  825. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/bytesxor.h +0 -39
  826. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/max.cc +0 -64
  827. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/max_operator.h +0 -35
  828. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/put.cc +0 -74
  829. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/put_operator.h +0 -56
  830. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/sortlist.cc +0 -97
  831. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/sortlist.h +0 -42
  832. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/string_append/stringappend.cc +0 -76
  833. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/string_append/stringappend.h +0 -32
  834. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/string_append/stringappend2.cc +0 -129
  835. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/string_append/stringappend2.h +0 -51
  836. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/uint64add.cc +0 -56
  837. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators/uint64add.h +0 -35
  838. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators.cc +0 -115
  839. package/vendor/librocksdb/vendor/rocksdb/utilities/merge_operators.h +0 -36
  840. package/vendor/librocksdb/vendor/rocksdb/utilities/object_registry.cc +0 -381
  841. package/vendor/librocksdb/vendor/rocksdb/utilities/option_change_migration/option_change_migration.cc +0 -169
  842. package/vendor/librocksdb/vendor/rocksdb/utilities/options/options_util.cc +0 -117
  843. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier.cc +0 -420
  844. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier.h +0 -154
  845. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc +0 -607
  846. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file.h +0 -291
  847. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file_buffer.h +0 -127
  848. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.cc +0 -84
  849. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.h +0 -122
  850. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/hash_table.h +0 -237
  851. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/hash_table_bench.cc +0 -310
  852. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/hash_table_evictable.h +0 -166
  853. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/lrulist.h +0 -172
  854. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_bench.cc +0 -355
  855. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_test.h +0 -284
  856. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_tier.cc +0 -165
  857. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_tier.h +0 -340
  858. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/persistent_cache_util.h +0 -67
  859. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc +0 -138
  860. package/vendor/librocksdb/vendor/rocksdb/utilities/persistent_cache/volatile_tier_impl.h +0 -139
  861. package/vendor/librocksdb/vendor/rocksdb/utilities/simulator_cache/cache_simulator.cc +0 -287
  862. package/vendor/librocksdb/vendor/rocksdb/utilities/simulator_cache/cache_simulator.h +0 -231
  863. package/vendor/librocksdb/vendor/rocksdb/utilities/simulator_cache/sim_cache.cc +0 -375
  864. package/vendor/librocksdb/vendor/rocksdb/utilities/table_properties_collectors/compact_for_tiering_collector.cc +0 -144
  865. package/vendor/librocksdb/vendor/rocksdb/utilities/table_properties_collectors/compact_for_tiering_collector.h +0 -45
  866. package/vendor/librocksdb/vendor/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.cc +0 -233
  867. package/vendor/librocksdb/vendor/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.h +0 -65
  868. package/vendor/librocksdb/vendor/rocksdb/utilities/trace/file_trace_reader_writer.cc +0 -132
  869. package/vendor/librocksdb/vendor/rocksdb/utilities/trace/file_trace_reader_writer.h +0 -48
  870. package/vendor/librocksdb/vendor/rocksdb/utilities/trace/replayer_impl.cc +0 -313
  871. package/vendor/librocksdb/vendor/rocksdb/utilities/trace/replayer_impl.h +0 -84
  872. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/lock_manager.cc +0 -27
  873. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/lock_manager.h +0 -80
  874. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/lock_tracker.h +0 -207
  875. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager.cc +0 -718
  876. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager.h +0 -222
  877. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager_test.h +0 -324
  878. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_tracker.cc +0 -255
  879. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/point/point_lock_tracker.h +0 -97
  880. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_lock_manager.h +0 -34
  881. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/db.h +0 -81
  882. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/ft/comparator.h +0 -138
  883. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/ft/ft-status.h +0 -102
  884. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/concurrent_tree.cc +0 -137
  885. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/concurrent_tree.h +0 -174
  886. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/keyrange.cc +0 -220
  887. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/keyrange.h +0 -141
  888. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/lock_request.cc +0 -525
  889. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/lock_request.h +0 -255
  890. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/locktree.cc +0 -1021
  891. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/locktree.h +0 -580
  892. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/manager.cc +0 -525
  893. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/range_buffer.cc +0 -263
  894. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/range_buffer.h +0 -178
  895. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/treenode.cc +0 -518
  896. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/treenode.h +0 -302
  897. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/txnid_set.cc +0 -118
  898. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/txnid_set.h +0 -92
  899. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/wfg.cc +0 -211
  900. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/wfg.h +0 -124
  901. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/memory.h +0 -215
  902. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_assert_subst.h +0 -43
  903. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_atomic.h +0 -130
  904. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_external_pthread.h +0 -87
  905. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_instrumentation.h +0 -286
  906. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_portability.h +0 -87
  907. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_pthread.h +0 -520
  908. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_race_tools.h +0 -179
  909. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_time.h +0 -197
  910. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/txn_subst.h +0 -31
  911. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/standalone_port.cc +0 -139
  912. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/dbt.cc +0 -165
  913. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/dbt.h +0 -98
  914. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/growable_array.h +0 -144
  915. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/memarena.cc +0 -199
  916. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/memarena.h +0 -141
  917. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/omt.h +0 -794
  918. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/omt_impl.h +0 -1295
  919. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/partitioned_counter.h +0 -165
  920. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/status.h +0 -76
  921. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_manager.cc +0 -501
  922. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_manager.h +0 -135
  923. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_tracker.cc +0 -156
  924. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_tracker.h +0 -146
  925. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/optimistic_transaction.cc +0 -208
  926. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/optimistic_transaction.h +0 -99
  927. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/optimistic_transaction_db_impl.cc +0 -111
  928. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/optimistic_transaction_db_impl.h +0 -110
  929. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/pessimistic_transaction.cc +0 -1278
  930. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/pessimistic_transaction.h +0 -345
  931. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/pessimistic_transaction_db.cc +0 -845
  932. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/pessimistic_transaction_db.h +0 -345
  933. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/snapshot_checker.cc +0 -37
  934. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_base.cc +0 -912
  935. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_base.h +0 -455
  936. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_db_mutex_impl.cc +0 -133
  937. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_db_mutex_impl.h +0 -24
  938. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_test.h +0 -589
  939. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_util.cc +0 -207
  940. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/transaction_util.h +0 -86
  941. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_prepared_txn.cc +0 -548
  942. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_prepared_txn.h +0 -118
  943. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_prepared_txn_db.cc +0 -1100
  944. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_prepared_txn_db.h +0 -1149
  945. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_unprepared_txn.cc +0 -1089
  946. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_unprepared_txn.h +0 -333
  947. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_unprepared_txn_db.cc +0 -486
  948. package/vendor/librocksdb/vendor/rocksdb/utilities/transactions/write_unprepared_txn_db.h +0 -105
  949. package/vendor/librocksdb/vendor/rocksdb/utilities/ttl/db_ttl_impl.cc +0 -638
  950. package/vendor/librocksdb/vendor/rocksdb/utilities/ttl/db_ttl_impl.h +0 -239
  951. package/vendor/librocksdb/vendor/rocksdb/utilities/types_util.cc +0 -88
  952. package/vendor/librocksdb/vendor/rocksdb/utilities/wal_filter.cc +0 -22
  953. package/vendor/librocksdb/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index.cc +0 -1134
  954. package/vendor/librocksdb/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.cc +0 -934
  955. package/vendor/librocksdb/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.h +0 -468
@@ -1,1859 +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/column_family.h"
11
-
12
- #include <algorithm>
13
- #include <cinttypes>
14
- #include <limits>
15
- #include <sstream>
16
- #include <string>
17
- #include <vector>
18
-
19
- #include "db/blob/blob_file_cache.h"
20
- #include "db/blob/blob_source.h"
21
- #include "db/compaction/compaction_picker.h"
22
- #include "db/compaction/compaction_picker_fifo.h"
23
- #include "db/compaction/compaction_picker_level.h"
24
- #include "db/compaction/compaction_picker_universal.h"
25
- #include "db/db_impl/db_impl.h"
26
- #include "db/internal_stats.h"
27
- #include "db/job_context.h"
28
- #include "db/range_del_aggregator.h"
29
- #include "db/table_properties_collector.h"
30
- #include "db/version_set.h"
31
- #include "db/write_controller.h"
32
- #include "file/sst_file_manager_impl.h"
33
- #include "logging/logging.h"
34
- #include "monitoring/thread_status_util.h"
35
- #include "options/options_helper.h"
36
- #include "port/port.h"
37
- #include "rocksdb/convenience.h"
38
- #include "rocksdb/table.h"
39
- #include "table/merging_iterator.h"
40
- #include "util/autovector.h"
41
- #include "util/cast_util.h"
42
- #include "util/compression.h"
43
-
44
- namespace ROCKSDB_NAMESPACE {
45
-
46
- ColumnFamilyHandleImpl::ColumnFamilyHandleImpl(
47
- ColumnFamilyData* column_family_data, DBImpl* db, InstrumentedMutex* mutex)
48
- : cfd_(column_family_data), db_(db), mutex_(mutex) {
49
- if (cfd_ != nullptr) {
50
- cfd_->Ref();
51
- }
52
- }
53
-
54
- ColumnFamilyHandleImpl::~ColumnFamilyHandleImpl() {
55
- if (cfd_ != nullptr) {
56
- for (auto& listener : cfd_->ioptions()->listeners) {
57
- listener->OnColumnFamilyHandleDeletionStarted(this);
58
- }
59
- // Job id == 0 means that this is not our background process, but rather
60
- // user thread
61
- // Need to hold some shared pointers owned by the initial_cf_options
62
- // before final cleaning up finishes.
63
- ColumnFamilyOptions initial_cf_options_copy = cfd_->initial_cf_options();
64
- JobContext job_context(0);
65
- mutex_->Lock();
66
- bool dropped = cfd_->IsDropped();
67
- if (cfd_->UnrefAndTryDelete()) {
68
- if (dropped) {
69
- db_->FindObsoleteFiles(&job_context, false, true);
70
- }
71
- }
72
- mutex_->Unlock();
73
- if (job_context.HaveSomethingToDelete()) {
74
- bool defer_purge =
75
- db_->immutable_db_options().avoid_unnecessary_blocking_io;
76
- db_->PurgeObsoleteFiles(job_context, defer_purge);
77
- }
78
- job_context.Clean();
79
- }
80
- }
81
-
82
- uint32_t ColumnFamilyHandleImpl::GetID() const { return cfd()->GetID(); }
83
-
84
- const std::string& ColumnFamilyHandleImpl::GetName() const {
85
- return cfd()->GetName();
86
- }
87
-
88
- Status ColumnFamilyHandleImpl::GetDescriptor(ColumnFamilyDescriptor* desc) {
89
- // accessing mutable cf-options requires db mutex.
90
- InstrumentedMutexLock l(mutex_);
91
- *desc = ColumnFamilyDescriptor(cfd()->GetName(), cfd()->GetLatestCFOptions());
92
- return Status::OK();
93
- }
94
-
95
- const Comparator* ColumnFamilyHandleImpl::GetComparator() const {
96
- return cfd()->user_comparator();
97
- }
98
-
99
- void GetInternalTblPropCollFactory(
100
- const ImmutableCFOptions& ioptions,
101
- InternalTblPropCollFactories* internal_tbl_prop_coll_factories) {
102
- assert(internal_tbl_prop_coll_factories);
103
-
104
- auto& collector_factories = ioptions.table_properties_collector_factories;
105
- for (size_t i = 0; i < ioptions.table_properties_collector_factories.size();
106
- ++i) {
107
- assert(collector_factories[i]);
108
- internal_tbl_prop_coll_factories->emplace_back(
109
- new UserKeyTablePropertiesCollectorFactory(collector_factories[i]));
110
- }
111
- }
112
-
113
- Status CheckCompressionSupported(const ColumnFamilyOptions& cf_options) {
114
- if (!cf_options.compression_per_level.empty()) {
115
- for (size_t level = 0; level < cf_options.compression_per_level.size();
116
- ++level) {
117
- if (!CompressionTypeSupported(cf_options.compression_per_level[level])) {
118
- return Status::InvalidArgument(
119
- "Compression type " +
120
- CompressionTypeToString(cf_options.compression_per_level[level]) +
121
- " is not linked with the binary.");
122
- }
123
- }
124
- } else {
125
- if (!CompressionTypeSupported(cf_options.compression)) {
126
- return Status::InvalidArgument(
127
- "Compression type " +
128
- CompressionTypeToString(cf_options.compression) +
129
- " is not linked with the binary.");
130
- }
131
- }
132
- if (cf_options.compression_opts.zstd_max_train_bytes > 0) {
133
- if (cf_options.compression_opts.use_zstd_dict_trainer) {
134
- if (!ZSTD_TrainDictionarySupported()) {
135
- return Status::InvalidArgument(
136
- "zstd dictionary trainer cannot be used because ZSTD 1.1.3+ "
137
- "is not linked with the binary.");
138
- }
139
- } else if (!ZSTD_FinalizeDictionarySupported()) {
140
- return Status::InvalidArgument(
141
- "zstd finalizeDictionary cannot be used because ZSTD 1.4.5+ "
142
- "is not linked with the binary.");
143
- }
144
- if (cf_options.compression_opts.max_dict_bytes == 0) {
145
- return Status::InvalidArgument(
146
- "The dictionary size limit (`CompressionOptions::max_dict_bytes`) "
147
- "should be nonzero if we're using zstd's dictionary generator.");
148
- }
149
- }
150
-
151
- if (!CompressionTypeSupported(cf_options.blob_compression_type)) {
152
- std::ostringstream oss;
153
- oss << "The specified blob compression type "
154
- << CompressionTypeToString(cf_options.blob_compression_type)
155
- << " is not available.";
156
-
157
- return Status::InvalidArgument(oss.str());
158
- }
159
-
160
- return Status::OK();
161
- }
162
-
163
- Status CheckConcurrentWritesSupported(const ColumnFamilyOptions& cf_options) {
164
- if (cf_options.inplace_update_support) {
165
- return Status::InvalidArgument(
166
- "In-place memtable updates (inplace_update_support) is not compatible "
167
- "with concurrent writes (allow_concurrent_memtable_write)");
168
- }
169
- if (!cf_options.memtable_factory->IsInsertConcurrentlySupported()) {
170
- return Status::InvalidArgument(
171
- "Memtable doesn't concurrent writes (allow_concurrent_memtable_write)");
172
- }
173
- return Status::OK();
174
- }
175
-
176
- Status CheckCFPathsSupported(const DBOptions& db_options,
177
- const ColumnFamilyOptions& cf_options) {
178
- // More than one cf_paths are supported only in universal
179
- // and level compaction styles. This function also checks the case
180
- // in which cf_paths is not specified, which results in db_paths
181
- // being used.
182
- if ((cf_options.compaction_style != kCompactionStyleUniversal) &&
183
- (cf_options.compaction_style != kCompactionStyleLevel)) {
184
- if (cf_options.cf_paths.size() > 1) {
185
- return Status::NotSupported(
186
- "More than one CF paths are only supported in "
187
- "universal and level compaction styles. ");
188
- } else if (cf_options.cf_paths.empty() && db_options.db_paths.size() > 1) {
189
- return Status::NotSupported(
190
- "More than one DB paths are only supported in "
191
- "universal and level compaction styles. ");
192
- }
193
- }
194
- return Status::OK();
195
- }
196
-
197
- namespace {
198
- const uint64_t kDefaultTtl = 0xfffffffffffffffe;
199
- const uint64_t kDefaultPeriodicCompSecs = 0xfffffffffffffffe;
200
- } // anonymous namespace
201
-
202
- ColumnFamilyOptions SanitizeOptions(const ImmutableDBOptions& db_options,
203
- const ColumnFamilyOptions& src) {
204
- ColumnFamilyOptions result = src;
205
- size_t clamp_max = std::conditional<
206
- sizeof(size_t) == 4, std::integral_constant<size_t, 0xffffffff>,
207
- std::integral_constant<uint64_t, 64ull << 30>>::type::value;
208
- ClipToRange(&result.write_buffer_size, (static_cast<size_t>(64)) << 10,
209
- clamp_max);
210
- // if user sets arena_block_size, we trust user to use this value. Otherwise,
211
- // calculate a proper value from writer_buffer_size;
212
- if (result.arena_block_size <= 0) {
213
- result.arena_block_size =
214
- std::min(size_t{1024 * 1024}, result.write_buffer_size / 8);
215
-
216
- // Align up to 4k
217
- const size_t align = 4 * 1024;
218
- result.arena_block_size =
219
- ((result.arena_block_size + align - 1) / align) * align;
220
- }
221
- result.min_write_buffer_number_to_merge =
222
- std::min(result.min_write_buffer_number_to_merge,
223
- result.max_write_buffer_number - 1);
224
- if (result.min_write_buffer_number_to_merge < 1) {
225
- result.min_write_buffer_number_to_merge = 1;
226
- }
227
-
228
- if (db_options.atomic_flush && result.min_write_buffer_number_to_merge > 1) {
229
- ROCKS_LOG_WARN(
230
- db_options.logger,
231
- "Currently, if atomic_flush is true, then triggering flush for any "
232
- "column family internally (non-manual flush) will trigger flushing "
233
- "all column families even if the number of memtables is smaller "
234
- "min_write_buffer_number_to_merge. Therefore, configuring "
235
- "min_write_buffer_number_to_merge > 1 is not compatible and should "
236
- "be satinized to 1. Not doing so will lead to data loss and "
237
- "inconsistent state across multiple column families when WAL is "
238
- "disabled, which is a common setting for atomic flush");
239
-
240
- result.min_write_buffer_number_to_merge = 1;
241
- }
242
-
243
- if (result.num_levels < 1) {
244
- result.num_levels = 1;
245
- }
246
- if (result.compaction_style == kCompactionStyleLevel &&
247
- result.num_levels < 2) {
248
- result.num_levels = 2;
249
- }
250
-
251
- if (result.compaction_style == kCompactionStyleUniversal &&
252
- db_options.allow_ingest_behind && result.num_levels < 3) {
253
- result.num_levels = 3;
254
- }
255
-
256
- if (result.max_write_buffer_number < 2) {
257
- result.max_write_buffer_number = 2;
258
- }
259
- // fall back max_write_buffer_number_to_maintain if
260
- // max_write_buffer_size_to_maintain is not set
261
- if (result.max_write_buffer_size_to_maintain < 0) {
262
- result.max_write_buffer_size_to_maintain =
263
- result.max_write_buffer_number *
264
- static_cast<int64_t>(result.write_buffer_size);
265
- } else if (result.max_write_buffer_size_to_maintain == 0 &&
266
- result.max_write_buffer_number_to_maintain < 0) {
267
- result.max_write_buffer_number_to_maintain = result.max_write_buffer_number;
268
- }
269
- // bloom filter size shouldn't exceed 1/4 of memtable size.
270
- if (result.memtable_prefix_bloom_size_ratio > 0.25) {
271
- result.memtable_prefix_bloom_size_ratio = 0.25;
272
- } else if (result.memtable_prefix_bloom_size_ratio < 0) {
273
- result.memtable_prefix_bloom_size_ratio = 0;
274
- }
275
-
276
- if (!result.prefix_extractor) {
277
- assert(result.memtable_factory);
278
- Slice name = result.memtable_factory->Name();
279
- if (name.compare("HashSkipListRepFactory") == 0 ||
280
- name.compare("HashLinkListRepFactory") == 0) {
281
- result.memtable_factory = std::make_shared<SkipListFactory>();
282
- }
283
- }
284
-
285
- if (result.compaction_style == kCompactionStyleFIFO) {
286
- // since we delete level0 files in FIFO compaction when there are too many
287
- // of them, these options don't really mean anything
288
- result.level0_slowdown_writes_trigger = std::numeric_limits<int>::max();
289
- result.level0_stop_writes_trigger = std::numeric_limits<int>::max();
290
- }
291
-
292
- if (result.max_bytes_for_level_multiplier <= 0) {
293
- result.max_bytes_for_level_multiplier = 1;
294
- }
295
-
296
- if (result.level0_file_num_compaction_trigger == 0) {
297
- ROCKS_LOG_WARN(db_options.logger,
298
- "level0_file_num_compaction_trigger cannot be 0");
299
- result.level0_file_num_compaction_trigger = 1;
300
- }
301
-
302
- if (result.level0_stop_writes_trigger <
303
- result.level0_slowdown_writes_trigger ||
304
- result.level0_slowdown_writes_trigger <
305
- result.level0_file_num_compaction_trigger) {
306
- ROCKS_LOG_WARN(db_options.logger,
307
- "This condition must be satisfied: "
308
- "level0_stop_writes_trigger(%d) >= "
309
- "level0_slowdown_writes_trigger(%d) >= "
310
- "level0_file_num_compaction_trigger(%d)",
311
- result.level0_stop_writes_trigger,
312
- result.level0_slowdown_writes_trigger,
313
- result.level0_file_num_compaction_trigger);
314
- if (result.level0_slowdown_writes_trigger <
315
- result.level0_file_num_compaction_trigger) {
316
- result.level0_slowdown_writes_trigger =
317
- result.level0_file_num_compaction_trigger;
318
- }
319
- if (result.level0_stop_writes_trigger <
320
- result.level0_slowdown_writes_trigger) {
321
- result.level0_stop_writes_trigger = result.level0_slowdown_writes_trigger;
322
- }
323
- ROCKS_LOG_WARN(db_options.logger,
324
- "Adjust the value to "
325
- "level0_stop_writes_trigger(%d) "
326
- "level0_slowdown_writes_trigger(%d) "
327
- "level0_file_num_compaction_trigger(%d)",
328
- result.level0_stop_writes_trigger,
329
- result.level0_slowdown_writes_trigger,
330
- result.level0_file_num_compaction_trigger);
331
- }
332
-
333
- if (result.soft_pending_compaction_bytes_limit == 0) {
334
- result.soft_pending_compaction_bytes_limit =
335
- result.hard_pending_compaction_bytes_limit;
336
- } else if (result.hard_pending_compaction_bytes_limit > 0 &&
337
- result.soft_pending_compaction_bytes_limit >
338
- result.hard_pending_compaction_bytes_limit) {
339
- result.soft_pending_compaction_bytes_limit =
340
- result.hard_pending_compaction_bytes_limit;
341
- }
342
-
343
- // When the DB is stopped, it's possible that there are some .trash files that
344
- // were not deleted yet, when we open the DB we will find these .trash files
345
- // and schedule them to be deleted (or delete immediately if SstFileManager
346
- // was not used)
347
- auto sfm =
348
- static_cast<SstFileManagerImpl*>(db_options.sst_file_manager.get());
349
- for (size_t i = 0; i < result.cf_paths.size(); i++) {
350
- DeleteScheduler::CleanupDirectory(db_options.env, sfm,
351
- result.cf_paths[i].path)
352
- .PermitUncheckedError();
353
- }
354
-
355
- if (result.cf_paths.empty()) {
356
- result.cf_paths = db_options.db_paths;
357
- }
358
-
359
- if (result.level_compaction_dynamic_level_bytes) {
360
- if (result.compaction_style != kCompactionStyleLevel) {
361
- ROCKS_LOG_INFO(db_options.info_log.get(),
362
- "level_compaction_dynamic_level_bytes only makes sense "
363
- "for level-based compaction");
364
- result.level_compaction_dynamic_level_bytes = false;
365
- } else if (result.cf_paths.size() > 1U) {
366
- // we don't yet know how to make both of this feature and multiple
367
- // DB path work.
368
- ROCKS_LOG_WARN(db_options.info_log.get(),
369
- "multiple cf_paths/db_paths and "
370
- "level_compaction_dynamic_level_bytes "
371
- "can't be used together");
372
- result.level_compaction_dynamic_level_bytes = false;
373
- }
374
- }
375
-
376
- if (result.max_compaction_bytes == 0) {
377
- result.max_compaction_bytes = result.target_file_size_base * 25;
378
- }
379
-
380
- bool is_block_based_table = (result.table_factory->IsInstanceOf(
381
- TableFactory::kBlockBasedTableName()));
382
-
383
- const uint64_t kAdjustedTtl = 30 * 24 * 60 * 60;
384
- if (result.ttl == kDefaultTtl) {
385
- if (is_block_based_table) {
386
- // FIFO also requires max_open_files=-1, which is checked in
387
- // ValidateOptions().
388
- result.ttl = kAdjustedTtl;
389
- } else {
390
- result.ttl = 0;
391
- }
392
- }
393
-
394
- const uint64_t kAdjustedPeriodicCompSecs = 30 * 24 * 60 * 60;
395
- if (result.compaction_style == kCompactionStyleLevel) {
396
- if ((result.compaction_filter != nullptr ||
397
- result.compaction_filter_factory != nullptr) &&
398
- result.periodic_compaction_seconds == kDefaultPeriodicCompSecs &&
399
- is_block_based_table) {
400
- result.periodic_compaction_seconds = kAdjustedPeriodicCompSecs;
401
- }
402
- } else if (result.compaction_style == kCompactionStyleUniversal) {
403
- if (result.periodic_compaction_seconds == kDefaultPeriodicCompSecs &&
404
- is_block_based_table) {
405
- result.periodic_compaction_seconds = kAdjustedPeriodicCompSecs;
406
- }
407
- } else if (result.compaction_style == kCompactionStyleFIFO) {
408
- if (result.periodic_compaction_seconds != kDefaultPeriodicCompSecs) {
409
- ROCKS_LOG_WARN(
410
- db_options.info_log.get(),
411
- "periodic_compaction_seconds does not support FIFO compaction. You"
412
- "may want to set option TTL instead.");
413
- }
414
- if (result.last_level_temperature != Temperature::kUnknown) {
415
- ROCKS_LOG_WARN(
416
- db_options.info_log.get(),
417
- "last_level_temperature is ignored with FIFO compaction. Consider "
418
- "CompactionOptionsFIFO::file_temperature_age_thresholds.");
419
- result.last_level_temperature = Temperature::kUnknown;
420
- }
421
- }
422
-
423
- // For universal compaction, `ttl` and `periodic_compaction_seconds` mean the
424
- // same thing, take the stricter value.
425
- if (result.compaction_style == kCompactionStyleUniversal) {
426
- if (result.periodic_compaction_seconds == 0) {
427
- result.periodic_compaction_seconds = result.ttl;
428
- } else if (result.ttl != 0) {
429
- result.periodic_compaction_seconds =
430
- std::min(result.ttl, result.periodic_compaction_seconds);
431
- }
432
- }
433
-
434
- if (result.periodic_compaction_seconds == kDefaultPeriodicCompSecs) {
435
- result.periodic_compaction_seconds = 0;
436
- }
437
-
438
- return result;
439
- }
440
-
441
- int SuperVersion::dummy = 0;
442
- void* const SuperVersion::kSVInUse = &SuperVersion::dummy;
443
- void* const SuperVersion::kSVObsolete = nullptr;
444
-
445
- SuperVersion::~SuperVersion() {
446
- for (auto td : to_delete) {
447
- delete td;
448
- }
449
- }
450
-
451
- SuperVersion* SuperVersion::Ref() {
452
- refs.fetch_add(1, std::memory_order_relaxed);
453
- return this;
454
- }
455
-
456
- bool SuperVersion::Unref() {
457
- // fetch_sub returns the previous value of ref
458
- uint32_t previous_refs = refs.fetch_sub(1);
459
- assert(previous_refs > 0);
460
- return previous_refs == 1;
461
- }
462
-
463
- void SuperVersion::Cleanup() {
464
- assert(refs.load(std::memory_order_relaxed) == 0);
465
- // Since this SuperVersion object is being deleted,
466
- // decrement reference to the immutable MemtableList
467
- // this SV object was pointing to.
468
- imm->Unref(&to_delete);
469
- MemTable* m = mem->Unref();
470
- if (m != nullptr) {
471
- auto* memory_usage = current->cfd()->imm()->current_memory_usage();
472
- assert(*memory_usage >= m->ApproximateMemoryUsage());
473
- *memory_usage -= m->ApproximateMemoryUsage();
474
- to_delete.push_back(m);
475
- }
476
- current->Unref();
477
- cfd->UnrefAndTryDelete();
478
- }
479
-
480
- void SuperVersion::Init(
481
- ColumnFamilyData* new_cfd, MemTable* new_mem, MemTableListVersion* new_imm,
482
- Version* new_current,
483
- std::shared_ptr<const SeqnoToTimeMapping> new_seqno_to_time_mapping) {
484
- cfd = new_cfd;
485
- mem = new_mem;
486
- imm = new_imm;
487
- current = new_current;
488
- full_history_ts_low = cfd->GetFullHistoryTsLow();
489
- seqno_to_time_mapping = std::move(new_seqno_to_time_mapping);
490
- cfd->Ref();
491
- mem->Ref();
492
- imm->Ref();
493
- current->Ref();
494
- refs.store(1, std::memory_order_relaxed);
495
- }
496
-
497
- namespace {
498
- void SuperVersionUnrefHandle(void* ptr) {
499
- // UnrefHandle is called when a thread exits or a ThreadLocalPtr gets
500
- // destroyed. When the former happens, the thread shouldn't see kSVInUse.
501
- // When the latter happens, only super_version_ holds a reference
502
- // to ColumnFamilyData, so no further queries are possible.
503
- SuperVersion* sv = static_cast<SuperVersion*>(ptr);
504
- bool was_last_ref __attribute__((__unused__));
505
- was_last_ref = sv->Unref();
506
- // Thread-local SuperVersions can't outlive ColumnFamilyData::super_version_.
507
- // This is important because we can't do SuperVersion cleanup here.
508
- // That would require locking DB mutex, which would deadlock because
509
- // SuperVersionUnrefHandle is called with locked ThreadLocalPtr mutex.
510
- assert(!was_last_ref);
511
- }
512
- } // anonymous namespace
513
-
514
- std::vector<std::string> ColumnFamilyData::GetDbPaths() const {
515
- std::vector<std::string> paths;
516
- paths.reserve(ioptions_.cf_paths.size());
517
- for (const DbPath& db_path : ioptions_.cf_paths) {
518
- paths.emplace_back(db_path.path);
519
- }
520
- return paths;
521
- }
522
-
523
- const uint32_t ColumnFamilyData::kDummyColumnFamilyDataId =
524
- std::numeric_limits<uint32_t>::max();
525
-
526
- ColumnFamilyData::ColumnFamilyData(
527
- uint32_t id, const std::string& name, Version* _dummy_versions,
528
- Cache* _table_cache, WriteBufferManager* write_buffer_manager,
529
- const ColumnFamilyOptions& cf_options, const ImmutableDBOptions& db_options,
530
- const FileOptions* file_options, ColumnFamilySet* column_family_set,
531
- BlockCacheTracer* const block_cache_tracer,
532
- const std::shared_ptr<IOTracer>& io_tracer, const std::string& db_id,
533
- const std::string& db_session_id)
534
- : id_(id),
535
- name_(name),
536
- dummy_versions_(_dummy_versions),
537
- current_(nullptr),
538
- refs_(0),
539
- initialized_(false),
540
- dropped_(false),
541
- flush_skip_reschedule_(false),
542
- internal_comparator_(cf_options.comparator),
543
- initial_cf_options_(SanitizeOptions(db_options, cf_options)),
544
- ioptions_(db_options, initial_cf_options_),
545
- mutable_cf_options_(initial_cf_options_),
546
- is_delete_range_supported_(
547
- cf_options.table_factory->IsDeleteRangeSupported()),
548
- write_buffer_manager_(write_buffer_manager),
549
- mem_(nullptr),
550
- imm_(ioptions_.min_write_buffer_number_to_merge,
551
- ioptions_.max_write_buffer_number_to_maintain,
552
- ioptions_.max_write_buffer_size_to_maintain),
553
- super_version_(nullptr),
554
- super_version_number_(0),
555
- local_sv_(new ThreadLocalPtr(&SuperVersionUnrefHandle)),
556
- next_(nullptr),
557
- prev_(nullptr),
558
- log_number_(0),
559
- column_family_set_(column_family_set),
560
- queued_for_flush_(false),
561
- queued_for_compaction_(false),
562
- prev_compaction_needed_bytes_(0),
563
- allow_2pc_(db_options.allow_2pc),
564
- last_memtable_id_(0),
565
- db_paths_registered_(false),
566
- mempurge_used_(false),
567
- next_epoch_number_(1) {
568
- if (id_ != kDummyColumnFamilyDataId) {
569
- // TODO(cc): RegisterDbPaths can be expensive, considering moving it
570
- // outside of this constructor which might be called with db mutex held.
571
- // TODO(cc): considering using ioptions_.fs, currently some tests rely on
572
- // EnvWrapper, that's the main reason why we use env here.
573
- Status s = ioptions_.env->RegisterDbPaths(GetDbPaths());
574
- if (s.ok()) {
575
- db_paths_registered_ = true;
576
- } else {
577
- ROCKS_LOG_ERROR(
578
- ioptions_.logger,
579
- "Failed to register data paths of column family (id: %d, name: %s)",
580
- id_, name_.c_str());
581
- }
582
- }
583
- Ref();
584
-
585
- // Convert user defined table properties collector factories to internal ones.
586
- GetInternalTblPropCollFactory(ioptions_, &internal_tbl_prop_coll_factories_);
587
-
588
- // if _dummy_versions is nullptr, then this is a dummy column family.
589
- if (_dummy_versions != nullptr) {
590
- internal_stats_.reset(
591
- new InternalStats(ioptions_.num_levels, ioptions_.clock, this));
592
- table_cache_.reset(new TableCache(ioptions_, file_options, _table_cache,
593
- block_cache_tracer, io_tracer,
594
- db_session_id));
595
- blob_file_cache_.reset(
596
- new BlobFileCache(_table_cache, ioptions(), soptions(), id_,
597
- internal_stats_->GetBlobFileReadHist(), io_tracer));
598
- blob_source_.reset(new BlobSource(ioptions(), db_id, db_session_id,
599
- blob_file_cache_.get()));
600
-
601
- if (ioptions_.compaction_style == kCompactionStyleLevel) {
602
- compaction_picker_.reset(
603
- new LevelCompactionPicker(ioptions_, &internal_comparator_));
604
- } else if (ioptions_.compaction_style == kCompactionStyleUniversal) {
605
- compaction_picker_.reset(
606
- new UniversalCompactionPicker(ioptions_, &internal_comparator_));
607
- } else if (ioptions_.compaction_style == kCompactionStyleFIFO) {
608
- compaction_picker_.reset(
609
- new FIFOCompactionPicker(ioptions_, &internal_comparator_));
610
- } else if (ioptions_.compaction_style == kCompactionStyleNone) {
611
- compaction_picker_.reset(
612
- new NullCompactionPicker(ioptions_, &internal_comparator_));
613
- ROCKS_LOG_WARN(ioptions_.logger,
614
- "Column family %s does not use any background compaction. "
615
- "Compactions can only be done via CompactFiles\n",
616
- GetName().c_str());
617
- } else {
618
- ROCKS_LOG_ERROR(ioptions_.logger,
619
- "Unable to recognize the specified compaction style %d. "
620
- "Column family %s will use kCompactionStyleLevel.\n",
621
- ioptions_.compaction_style, GetName().c_str());
622
- compaction_picker_.reset(
623
- new LevelCompactionPicker(ioptions_, &internal_comparator_));
624
- }
625
-
626
- if (column_family_set_->NumberOfColumnFamilies() < 10) {
627
- ROCKS_LOG_INFO(ioptions_.logger,
628
- "--------------- Options for column family [%s]:\n",
629
- name.c_str());
630
- initial_cf_options_.Dump(ioptions_.logger);
631
- } else {
632
- ROCKS_LOG_INFO(ioptions_.logger, "\t(skipping printing options)\n");
633
- }
634
- }
635
-
636
- RecalculateWriteStallConditions(mutable_cf_options_);
637
-
638
- if (cf_options.table_factory->IsInstanceOf(
639
- TableFactory::kBlockBasedTableName()) &&
640
- cf_options.table_factory->GetOptions<BlockBasedTableOptions>()) {
641
- const BlockBasedTableOptions* bbto =
642
- cf_options.table_factory->GetOptions<BlockBasedTableOptions>();
643
- const auto& options_overrides = bbto->cache_usage_options.options_overrides;
644
- const auto file_metadata_charged =
645
- options_overrides.at(CacheEntryRole::kFileMetadata).charged;
646
- if (bbto->block_cache &&
647
- file_metadata_charged == CacheEntryRoleOptions::Decision::kEnabled) {
648
- // TODO(hx235): Add a `ConcurrentCacheReservationManager` at DB scope
649
- // responsible for reservation of `ObsoleteFileInfo` so that we can keep
650
- // this `file_metadata_cache_res_mgr_` nonconcurrent
651
- file_metadata_cache_res_mgr_.reset(new ConcurrentCacheReservationManager(
652
- std::make_shared<
653
- CacheReservationManagerImpl<CacheEntryRole::kFileMetadata>>(
654
- bbto->block_cache)));
655
- }
656
- }
657
- }
658
-
659
- // DB mutex held
660
- ColumnFamilyData::~ColumnFamilyData() {
661
- assert(refs_.load(std::memory_order_relaxed) == 0);
662
- // remove from linked list
663
- auto prev = prev_;
664
- auto next = next_;
665
- prev->next_ = next;
666
- next->prev_ = prev;
667
-
668
- if (!dropped_ && column_family_set_ != nullptr) {
669
- // If it's dropped, it's already removed from column family set
670
- // If column_family_set_ == nullptr, this is dummy CFD and not in
671
- // ColumnFamilySet
672
- column_family_set_->RemoveColumnFamily(this);
673
- }
674
-
675
- if (current_ != nullptr) {
676
- current_->Unref();
677
- }
678
-
679
- // It would be wrong if this ColumnFamilyData is in flush_queue_ or
680
- // compaction_queue_ and we destroyed it
681
- assert(!queued_for_flush_);
682
- assert(!queued_for_compaction_);
683
- assert(super_version_ == nullptr);
684
-
685
- if (dummy_versions_ != nullptr) {
686
- // List must be empty
687
- assert(dummy_versions_->Next() == dummy_versions_);
688
- bool deleted __attribute__((__unused__));
689
- deleted = dummy_versions_->Unref();
690
- assert(deleted);
691
- }
692
-
693
- if (mem_ != nullptr) {
694
- delete mem_->Unref();
695
- }
696
- autovector<MemTable*> to_delete;
697
- imm_.current()->Unref(&to_delete);
698
- for (MemTable* m : to_delete) {
699
- delete m;
700
- }
701
-
702
- if (db_paths_registered_) {
703
- // TODO(cc): considering using ioptions_.fs, currently some tests rely on
704
- // EnvWrapper, that's the main reason why we use env here.
705
- Status s = ioptions_.env->UnregisterDbPaths(GetDbPaths());
706
- if (!s.ok()) {
707
- ROCKS_LOG_ERROR(
708
- ioptions_.logger,
709
- "Failed to unregister data paths of column family (id: %d, name: %s)",
710
- id_, name_.c_str());
711
- }
712
- }
713
- }
714
-
715
- bool ColumnFamilyData::UnrefAndTryDelete() {
716
- int old_refs = refs_.fetch_sub(1);
717
- assert(old_refs > 0);
718
-
719
- if (old_refs == 1) {
720
- assert(super_version_ == nullptr);
721
- delete this;
722
- return true;
723
- }
724
-
725
- if (old_refs == 2 && super_version_ != nullptr) {
726
- // Only the super_version_ holds me
727
- SuperVersion* sv = super_version_;
728
- super_version_ = nullptr;
729
-
730
- // Release SuperVersion references kept in ThreadLocalPtr.
731
- local_sv_.reset();
732
-
733
- if (sv->Unref()) {
734
- // Note: sv will delete this ColumnFamilyData during Cleanup()
735
- assert(sv->cfd == this);
736
- sv->Cleanup();
737
- delete sv;
738
- return true;
739
- }
740
- }
741
- return false;
742
- }
743
-
744
- void ColumnFamilyData::SetDropped() {
745
- // can't drop default CF
746
- assert(id_ != 0);
747
- dropped_ = true;
748
- write_controller_token_.reset();
749
-
750
- // remove from column_family_set
751
- column_family_set_->RemoveColumnFamily(this);
752
- }
753
-
754
- ColumnFamilyOptions ColumnFamilyData::GetLatestCFOptions() const {
755
- return BuildColumnFamilyOptions(initial_cf_options_, mutable_cf_options_);
756
- }
757
-
758
- uint64_t ColumnFamilyData::OldestLogToKeep() {
759
- auto current_log = GetLogNumber();
760
-
761
- if (allow_2pc_) {
762
- auto imm_prep_log = imm()->PrecomputeMinLogContainingPrepSection();
763
- auto mem_prep_log = mem()->GetMinLogContainingPrepSection();
764
-
765
- if (imm_prep_log > 0 && imm_prep_log < current_log) {
766
- current_log = imm_prep_log;
767
- }
768
-
769
- if (mem_prep_log > 0 && mem_prep_log < current_log) {
770
- current_log = mem_prep_log;
771
- }
772
- }
773
-
774
- return current_log;
775
- }
776
-
777
- const double kIncSlowdownRatio = 0.8;
778
- const double kDecSlowdownRatio = 1 / kIncSlowdownRatio;
779
- const double kNearStopSlowdownRatio = 0.6;
780
- const double kDelayRecoverSlowdownRatio = 1.4;
781
-
782
- namespace {
783
- // If penalize_stop is true, we further reduce slowdown rate.
784
- std::unique_ptr<WriteControllerToken> SetupDelay(
785
- WriteController* write_controller, uint64_t compaction_needed_bytes,
786
- uint64_t prev_compaction_need_bytes, bool penalize_stop,
787
- bool auto_compactions_disabled) {
788
- const uint64_t kMinWriteRate = 16 * 1024u; // Minimum write rate 16KB/s.
789
-
790
- uint64_t max_write_rate = write_controller->max_delayed_write_rate();
791
- uint64_t write_rate = write_controller->delayed_write_rate();
792
-
793
- if (auto_compactions_disabled) {
794
- // When auto compaction is disabled, always use the value user gave.
795
- write_rate = max_write_rate;
796
- } else if (write_controller->NeedsDelay() && max_write_rate > kMinWriteRate) {
797
- // If user gives rate less than kMinWriteRate, don't adjust it.
798
- //
799
- // If already delayed, need to adjust based on previous compaction debt.
800
- // When there are two or more column families require delay, we always
801
- // increase or reduce write rate based on information for one single
802
- // column family. It is likely to be OK but we can improve if there is a
803
- // problem.
804
- // Ignore compaction_needed_bytes = 0 case because compaction_needed_bytes
805
- // is only available in level-based compaction
806
- //
807
- // If the compaction debt stays the same as previously, we also further slow
808
- // down. It usually means a mem table is full. It's mainly for the case
809
- // where both of flush and compaction are much slower than the speed we
810
- // insert to mem tables, so we need to actively slow down before we get
811
- // feedback signal from compaction and flushes to avoid the full stop
812
- // because of hitting the max write buffer number.
813
- //
814
- // If DB just falled into the stop condition, we need to further reduce
815
- // the write rate to avoid the stop condition.
816
- if (penalize_stop) {
817
- // Penalize the near stop or stop condition by more aggressive slowdown.
818
- // This is to provide the long term slowdown increase signal.
819
- // The penalty is more than the reward of recovering to the normal
820
- // condition.
821
- write_rate = static_cast<uint64_t>(static_cast<double>(write_rate) *
822
- kNearStopSlowdownRatio);
823
- if (write_rate < kMinWriteRate) {
824
- write_rate = kMinWriteRate;
825
- }
826
- } else if (prev_compaction_need_bytes > 0 &&
827
- prev_compaction_need_bytes <= compaction_needed_bytes) {
828
- write_rate = static_cast<uint64_t>(static_cast<double>(write_rate) *
829
- kIncSlowdownRatio);
830
- if (write_rate < kMinWriteRate) {
831
- write_rate = kMinWriteRate;
832
- }
833
- } else if (prev_compaction_need_bytes > compaction_needed_bytes) {
834
- // We are speeding up by ratio of kSlowdownRatio when we have paid
835
- // compaction debt. But we'll never speed up to faster than the write rate
836
- // given by users.
837
- write_rate = static_cast<uint64_t>(static_cast<double>(write_rate) *
838
- kDecSlowdownRatio);
839
- if (write_rate > max_write_rate) {
840
- write_rate = max_write_rate;
841
- }
842
- }
843
- }
844
- return write_controller->GetDelayToken(write_rate);
845
- }
846
-
847
- int GetL0FileCountForCompactionSpeedup(int level0_file_num_compaction_trigger,
848
- int level0_slowdown_writes_trigger) {
849
- // SanitizeOptions() ensures it.
850
- assert(level0_file_num_compaction_trigger <= level0_slowdown_writes_trigger);
851
-
852
- if (level0_file_num_compaction_trigger < 0) {
853
- return std::numeric_limits<int>::max();
854
- }
855
-
856
- const int64_t twice_level0_trigger =
857
- static_cast<int64_t>(level0_file_num_compaction_trigger) * 2;
858
-
859
- const int64_t one_fourth_trigger_slowdown =
860
- static_cast<int64_t>(level0_file_num_compaction_trigger) +
861
- ((level0_slowdown_writes_trigger - level0_file_num_compaction_trigger) /
862
- 4);
863
-
864
- assert(twice_level0_trigger >= 0);
865
- assert(one_fourth_trigger_slowdown >= 0);
866
-
867
- // 1/4 of the way between L0 compaction trigger threshold and slowdown
868
- // condition.
869
- // Or twice as compaction trigger, if it is smaller.
870
- int64_t res = std::min(twice_level0_trigger, one_fourth_trigger_slowdown);
871
- if (res >= std::numeric_limits<int32_t>::max()) {
872
- return std::numeric_limits<int32_t>::max();
873
- } else {
874
- // res fits in int
875
- return static_cast<int>(res);
876
- }
877
- }
878
-
879
- uint64_t GetPendingCompactionBytesForCompactionSpeedup(
880
- const MutableCFOptions& mutable_cf_options,
881
- const VersionStorageInfo* vstorage) {
882
- // Compaction debt relatively large compared to the stable (bottommost) data
883
- // size indicates compaction fell behind.
884
- const uint64_t kBottommostSizeDivisor = 8;
885
- // Meaningful progress toward the slowdown trigger is another good indication.
886
- const uint64_t kSlowdownTriggerDivisor = 4;
887
-
888
- uint64_t bottommost_files_size = 0;
889
- for (const auto& level_and_file : vstorage->BottommostFiles()) {
890
- bottommost_files_size += level_and_file.second->fd.GetFileSize();
891
- }
892
-
893
- // Slowdown trigger might be zero but that means compaction speedup should
894
- // always happen (undocumented/historical), so no special treatment is needed.
895
- uint64_t slowdown_threshold =
896
- mutable_cf_options.soft_pending_compaction_bytes_limit /
897
- kSlowdownTriggerDivisor;
898
-
899
- // Size of zero, however, should not be used to decide to speedup compaction.
900
- if (bottommost_files_size == 0) {
901
- return slowdown_threshold;
902
- }
903
-
904
- uint64_t size_threshold = bottommost_files_size / kBottommostSizeDivisor;
905
- return std::min(size_threshold, slowdown_threshold);
906
- }
907
-
908
- uint64_t GetMarkedFileCountForCompactionSpeedup() {
909
- // When just one file is marked, it is not clear that parallel compaction will
910
- // help the compaction that the user nicely requested to happen sooner. When
911
- // multiple files are marked, however, it is pretty clearly helpful, except
912
- // for the rare case in which a single compaction grabs all the marked files.
913
- return 2;
914
- }
915
- } // anonymous namespace
916
-
917
- std::pair<WriteStallCondition, WriteStallCause>
918
- ColumnFamilyData::GetWriteStallConditionAndCause(
919
- int num_unflushed_memtables, int num_l0_files,
920
- uint64_t num_compaction_needed_bytes,
921
- const MutableCFOptions& mutable_cf_options,
922
- const ImmutableCFOptions& immutable_cf_options) {
923
- if (num_unflushed_memtables >= mutable_cf_options.max_write_buffer_number) {
924
- return {WriteStallCondition::kStopped, WriteStallCause::kMemtableLimit};
925
- } else if (!mutable_cf_options.disable_auto_compactions &&
926
- num_l0_files >= mutable_cf_options.level0_stop_writes_trigger) {
927
- return {WriteStallCondition::kStopped, WriteStallCause::kL0FileCountLimit};
928
- } else if (!mutable_cf_options.disable_auto_compactions &&
929
- mutable_cf_options.hard_pending_compaction_bytes_limit > 0 &&
930
- num_compaction_needed_bytes >=
931
- mutable_cf_options.hard_pending_compaction_bytes_limit) {
932
- return {WriteStallCondition::kStopped,
933
- WriteStallCause::kPendingCompactionBytes};
934
- } else if (mutable_cf_options.max_write_buffer_number > 3 &&
935
- num_unflushed_memtables >=
936
- mutable_cf_options.max_write_buffer_number - 1 &&
937
- num_unflushed_memtables - 1 >=
938
- immutable_cf_options.min_write_buffer_number_to_merge) {
939
- return {WriteStallCondition::kDelayed, WriteStallCause::kMemtableLimit};
940
- } else if (!mutable_cf_options.disable_auto_compactions &&
941
- mutable_cf_options.level0_slowdown_writes_trigger >= 0 &&
942
- num_l0_files >=
943
- mutable_cf_options.level0_slowdown_writes_trigger) {
944
- return {WriteStallCondition::kDelayed, WriteStallCause::kL0FileCountLimit};
945
- } else if (!mutable_cf_options.disable_auto_compactions &&
946
- mutable_cf_options.soft_pending_compaction_bytes_limit > 0 &&
947
- num_compaction_needed_bytes >=
948
- mutable_cf_options.soft_pending_compaction_bytes_limit) {
949
- return {WriteStallCondition::kDelayed,
950
- WriteStallCause::kPendingCompactionBytes};
951
- }
952
- return {WriteStallCondition::kNormal, WriteStallCause::kNone};
953
- }
954
-
955
- WriteStallCondition ColumnFamilyData::RecalculateWriteStallConditions(
956
- const MutableCFOptions& mutable_cf_options) {
957
- auto write_stall_condition = WriteStallCondition::kNormal;
958
- if (current_ != nullptr) {
959
- auto* vstorage = current_->storage_info();
960
- auto write_controller = column_family_set_->write_controller_;
961
- uint64_t compaction_needed_bytes =
962
- vstorage->estimated_compaction_needed_bytes();
963
-
964
- auto write_stall_condition_and_cause = GetWriteStallConditionAndCause(
965
- imm()->NumNotFlushed(), vstorage->l0_delay_trigger_count(),
966
- vstorage->estimated_compaction_needed_bytes(), mutable_cf_options,
967
- *ioptions());
968
- write_stall_condition = write_stall_condition_and_cause.first;
969
- auto write_stall_cause = write_stall_condition_and_cause.second;
970
-
971
- bool was_stopped = write_controller->IsStopped();
972
- bool needed_delay = write_controller->NeedsDelay();
973
-
974
- if (write_stall_condition == WriteStallCondition::kStopped &&
975
- write_stall_cause == WriteStallCause::kMemtableLimit) {
976
- write_controller_token_ = write_controller->GetStopToken();
977
- internal_stats_->AddCFStats(InternalStats::MEMTABLE_LIMIT_STOPS, 1);
978
- ROCKS_LOG_WARN(
979
- ioptions_.logger,
980
- "[%s] Stopping writes because we have %d immutable memtables "
981
- "(waiting for flush), max_write_buffer_number is set to %d",
982
- name_.c_str(), imm()->NumNotFlushed(),
983
- mutable_cf_options.max_write_buffer_number);
984
- } else if (write_stall_condition == WriteStallCondition::kStopped &&
985
- write_stall_cause == WriteStallCause::kL0FileCountLimit) {
986
- write_controller_token_ = write_controller->GetStopToken();
987
- internal_stats_->AddCFStats(InternalStats::L0_FILE_COUNT_LIMIT_STOPS, 1);
988
- if (compaction_picker_->IsLevel0CompactionInProgress()) {
989
- internal_stats_->AddCFStats(
990
- InternalStats::L0_FILE_COUNT_LIMIT_STOPS_WITH_ONGOING_COMPACTION,
991
- 1);
992
- }
993
- ROCKS_LOG_WARN(ioptions_.logger,
994
- "[%s] Stopping writes because we have %d level-0 files",
995
- name_.c_str(), vstorage->l0_delay_trigger_count());
996
- } else if (write_stall_condition == WriteStallCondition::kStopped &&
997
- write_stall_cause == WriteStallCause::kPendingCompactionBytes) {
998
- write_controller_token_ = write_controller->GetStopToken();
999
- internal_stats_->AddCFStats(
1000
- InternalStats::PENDING_COMPACTION_BYTES_LIMIT_STOPS, 1);
1001
- ROCKS_LOG_WARN(
1002
- ioptions_.logger,
1003
- "[%s] Stopping writes because of estimated pending compaction "
1004
- "bytes %" PRIu64,
1005
- name_.c_str(), compaction_needed_bytes);
1006
- } else if (write_stall_condition == WriteStallCondition::kDelayed &&
1007
- write_stall_cause == WriteStallCause::kMemtableLimit) {
1008
- write_controller_token_ =
1009
- SetupDelay(write_controller, compaction_needed_bytes,
1010
- prev_compaction_needed_bytes_, was_stopped,
1011
- mutable_cf_options.disable_auto_compactions);
1012
- internal_stats_->AddCFStats(InternalStats::MEMTABLE_LIMIT_DELAYS, 1);
1013
- ROCKS_LOG_WARN(
1014
- ioptions_.logger,
1015
- "[%s] Stalling writes because we have %d immutable memtables "
1016
- "(waiting for flush), max_write_buffer_number is set to %d "
1017
- "rate %" PRIu64,
1018
- name_.c_str(), imm()->NumNotFlushed(),
1019
- mutable_cf_options.max_write_buffer_number,
1020
- write_controller->delayed_write_rate());
1021
- } else if (write_stall_condition == WriteStallCondition::kDelayed &&
1022
- write_stall_cause == WriteStallCause::kL0FileCountLimit) {
1023
- // L0 is the last two files from stopping.
1024
- bool near_stop = vstorage->l0_delay_trigger_count() >=
1025
- mutable_cf_options.level0_stop_writes_trigger - 2;
1026
- write_controller_token_ =
1027
- SetupDelay(write_controller, compaction_needed_bytes,
1028
- prev_compaction_needed_bytes_, was_stopped || near_stop,
1029
- mutable_cf_options.disable_auto_compactions);
1030
- internal_stats_->AddCFStats(InternalStats::L0_FILE_COUNT_LIMIT_DELAYS, 1);
1031
- if (compaction_picker_->IsLevel0CompactionInProgress()) {
1032
- internal_stats_->AddCFStats(
1033
- InternalStats::L0_FILE_COUNT_LIMIT_DELAYS_WITH_ONGOING_COMPACTION,
1034
- 1);
1035
- }
1036
- ROCKS_LOG_WARN(ioptions_.logger,
1037
- "[%s] Stalling writes because we have %d level-0 files "
1038
- "rate %" PRIu64,
1039
- name_.c_str(), vstorage->l0_delay_trigger_count(),
1040
- write_controller->delayed_write_rate());
1041
- } else if (write_stall_condition == WriteStallCondition::kDelayed &&
1042
- write_stall_cause == WriteStallCause::kPendingCompactionBytes) {
1043
- // If the distance to hard limit is less than 1/4 of the gap between soft
1044
- // and
1045
- // hard bytes limit, we think it is near stop and speed up the slowdown.
1046
- bool near_stop =
1047
- mutable_cf_options.hard_pending_compaction_bytes_limit > 0 &&
1048
- (compaction_needed_bytes -
1049
- mutable_cf_options.soft_pending_compaction_bytes_limit) >
1050
- 3 *
1051
- (mutable_cf_options.hard_pending_compaction_bytes_limit -
1052
- mutable_cf_options.soft_pending_compaction_bytes_limit) /
1053
- 4;
1054
-
1055
- write_controller_token_ =
1056
- SetupDelay(write_controller, compaction_needed_bytes,
1057
- prev_compaction_needed_bytes_, was_stopped || near_stop,
1058
- mutable_cf_options.disable_auto_compactions);
1059
- internal_stats_->AddCFStats(
1060
- InternalStats::PENDING_COMPACTION_BYTES_LIMIT_DELAYS, 1);
1061
- ROCKS_LOG_WARN(
1062
- ioptions_.logger,
1063
- "[%s] Stalling writes because of estimated pending compaction "
1064
- "bytes %" PRIu64 " rate %" PRIu64,
1065
- name_.c_str(), vstorage->estimated_compaction_needed_bytes(),
1066
- write_controller->delayed_write_rate());
1067
- } else {
1068
- assert(write_stall_condition == WriteStallCondition::kNormal);
1069
- if (vstorage->l0_delay_trigger_count() >=
1070
- GetL0FileCountForCompactionSpeedup(
1071
- mutable_cf_options.level0_file_num_compaction_trigger,
1072
- mutable_cf_options.level0_slowdown_writes_trigger)) {
1073
- write_controller_token_ =
1074
- write_controller->GetCompactionPressureToken();
1075
- ROCKS_LOG_INFO(
1076
- ioptions_.logger,
1077
- "[%s] Increasing compaction threads because we have %d level-0 "
1078
- "files ",
1079
- name_.c_str(), vstorage->l0_delay_trigger_count());
1080
- } else if (mutable_cf_options.soft_pending_compaction_bytes_limit == 0) {
1081
- // If soft pending compaction byte limit is not set, always speed up
1082
- // compaction.
1083
- write_controller_token_ =
1084
- write_controller->GetCompactionPressureToken();
1085
- } else if (vstorage->estimated_compaction_needed_bytes() >=
1086
- GetPendingCompactionBytesForCompactionSpeedup(
1087
- mutable_cf_options, vstorage)) {
1088
- write_controller_token_ =
1089
- write_controller->GetCompactionPressureToken();
1090
- ROCKS_LOG_INFO(
1091
- ioptions_.logger,
1092
- "[%s] Increasing compaction threads because of estimated pending "
1093
- "compaction "
1094
- "bytes %" PRIu64,
1095
- name_.c_str(), vstorage->estimated_compaction_needed_bytes());
1096
- } else if (uint64_t(vstorage->FilesMarkedForCompaction().size()) >=
1097
- GetMarkedFileCountForCompactionSpeedup()) {
1098
- write_controller_token_ =
1099
- write_controller->GetCompactionPressureToken();
1100
- ROCKS_LOG_INFO(
1101
- ioptions_.logger,
1102
- "[%s] Increasing compaction threads because we have %" PRIu64
1103
- " files marked for compaction",
1104
- name_.c_str(),
1105
- uint64_t(vstorage->FilesMarkedForCompaction().size()));
1106
- } else {
1107
- write_controller_token_.reset();
1108
- }
1109
- // If the DB recovers from delay conditions, we reward with reducing
1110
- // double the slowdown ratio. This is to balance the long term slowdown
1111
- // increase signal.
1112
- if (needed_delay) {
1113
- uint64_t write_rate = write_controller->delayed_write_rate();
1114
- write_controller->set_delayed_write_rate(static_cast<uint64_t>(
1115
- static_cast<double>(write_rate) * kDelayRecoverSlowdownRatio));
1116
- // Set the low pri limit to be 1/4 the delayed write rate.
1117
- // Note we don't reset this value even after delay condition is relased.
1118
- // Low-pri rate will continue to apply if there is a compaction
1119
- // pressure.
1120
- write_controller->low_pri_rate_limiter()->SetBytesPerSecond(write_rate /
1121
- 4);
1122
- }
1123
- }
1124
- prev_compaction_needed_bytes_ = compaction_needed_bytes;
1125
- }
1126
- return write_stall_condition;
1127
- }
1128
-
1129
- const FileOptions* ColumnFamilyData::soptions() const {
1130
- return &(column_family_set_->file_options_);
1131
- }
1132
-
1133
- void ColumnFamilyData::SetCurrent(Version* current_version) {
1134
- current_ = current_version;
1135
- }
1136
-
1137
- uint64_t ColumnFamilyData::GetNumLiveVersions() const {
1138
- return VersionSet::GetNumLiveVersions(dummy_versions_);
1139
- }
1140
-
1141
- uint64_t ColumnFamilyData::GetTotalSstFilesSize() const {
1142
- return VersionSet::GetTotalSstFilesSize(dummy_versions_);
1143
- }
1144
-
1145
- uint64_t ColumnFamilyData::GetTotalBlobFileSize() const {
1146
- return VersionSet::GetTotalBlobFileSize(dummy_versions_);
1147
- }
1148
-
1149
- uint64_t ColumnFamilyData::GetLiveSstFilesSize() const {
1150
- return current_->GetSstFilesSize();
1151
- }
1152
-
1153
- MemTable* ColumnFamilyData::ConstructNewMemtable(
1154
- const MutableCFOptions& mutable_cf_options, SequenceNumber earliest_seq) {
1155
- return new MemTable(internal_comparator_, ioptions_, mutable_cf_options,
1156
- write_buffer_manager_, earliest_seq, id_);
1157
- }
1158
-
1159
- void ColumnFamilyData::CreateNewMemtable(
1160
- const MutableCFOptions& mutable_cf_options, SequenceNumber earliest_seq) {
1161
- if (mem_ != nullptr) {
1162
- delete mem_->Unref();
1163
- }
1164
- SetMemtable(ConstructNewMemtable(mutable_cf_options, earliest_seq));
1165
- mem_->Ref();
1166
- }
1167
-
1168
- bool ColumnFamilyData::NeedsCompaction() const {
1169
- return !mutable_cf_options_.disable_auto_compactions &&
1170
- compaction_picker_->NeedsCompaction(current_->storage_info());
1171
- }
1172
-
1173
- Compaction* ColumnFamilyData::PickCompaction(
1174
- const MutableCFOptions& mutable_options,
1175
- const MutableDBOptions& mutable_db_options, LogBuffer* log_buffer) {
1176
- auto* result = compaction_picker_->PickCompaction(
1177
- GetName(), mutable_options, mutable_db_options, current_->storage_info(),
1178
- log_buffer);
1179
- if (result != nullptr) {
1180
- result->FinalizeInputInfo(current_);
1181
- }
1182
- return result;
1183
- }
1184
-
1185
- bool ColumnFamilyData::RangeOverlapWithCompaction(
1186
- const Slice& smallest_user_key, const Slice& largest_user_key,
1187
- int level) const {
1188
- return compaction_picker_->RangeOverlapWithCompaction(
1189
- smallest_user_key, largest_user_key, level);
1190
- }
1191
-
1192
- Status ColumnFamilyData::RangesOverlapWithMemtables(
1193
- const autovector<UserKeyRange>& ranges, SuperVersion* super_version,
1194
- bool allow_data_in_errors, bool* overlap) {
1195
- assert(overlap != nullptr);
1196
- *overlap = false;
1197
- // Create an InternalIterator over all unflushed memtables
1198
- Arena arena;
1199
- // TODO: plumb Env::IOActivity, Env::IOPriority
1200
- ReadOptions read_opts;
1201
- read_opts.total_order_seek = true;
1202
- MergeIteratorBuilder merge_iter_builder(&internal_comparator_, &arena);
1203
- merge_iter_builder.AddIterator(super_version->mem->NewIterator(
1204
- read_opts, /*seqno_to_time_mapping=*/nullptr, &arena));
1205
- super_version->imm->AddIterators(read_opts, /*seqno_to_time_mapping=*/nullptr,
1206
- &merge_iter_builder,
1207
- false /* add_range_tombstone_iter */);
1208
- ScopedArenaPtr<InternalIterator> memtable_iter(merge_iter_builder.Finish());
1209
-
1210
- auto read_seq = super_version->current->version_set()->LastSequence();
1211
- ReadRangeDelAggregator range_del_agg(&internal_comparator_, read_seq);
1212
- auto* active_range_del_iter = super_version->mem->NewRangeTombstoneIterator(
1213
- read_opts, read_seq, false /* immutable_memtable */);
1214
- range_del_agg.AddTombstones(
1215
- std::unique_ptr<FragmentedRangeTombstoneIterator>(active_range_del_iter));
1216
- Status status;
1217
- status = super_version->imm->AddRangeTombstoneIterators(
1218
- read_opts, nullptr /* arena */, &range_del_agg);
1219
- // AddRangeTombstoneIterators always return Status::OK.
1220
- assert(status.ok());
1221
-
1222
- for (size_t i = 0; i < ranges.size() && status.ok() && !*overlap; ++i) {
1223
- auto* vstorage = super_version->current->storage_info();
1224
- auto* ucmp = vstorage->InternalComparator()->user_comparator();
1225
- InternalKey range_start(ranges[i].start, kMaxSequenceNumber,
1226
- kValueTypeForSeek);
1227
- memtable_iter->Seek(range_start.Encode());
1228
- status = memtable_iter->status();
1229
- ParsedInternalKey seek_result;
1230
-
1231
- if (status.ok() && memtable_iter->Valid()) {
1232
- status = ParseInternalKey(memtable_iter->key(), &seek_result,
1233
- allow_data_in_errors);
1234
- }
1235
-
1236
- if (status.ok()) {
1237
- if (memtable_iter->Valid() &&
1238
- ucmp->CompareWithoutTimestamp(seek_result.user_key,
1239
- ranges[i].limit) <= 0) {
1240
- *overlap = true;
1241
- } else if (range_del_agg.IsRangeOverlapped(ranges[i].start,
1242
- ranges[i].limit)) {
1243
- *overlap = true;
1244
- }
1245
- }
1246
- }
1247
- return status;
1248
- }
1249
-
1250
- const int ColumnFamilyData::kCompactAllLevels = -1;
1251
- const int ColumnFamilyData::kCompactToBaseLevel = -2;
1252
-
1253
- Compaction* ColumnFamilyData::CompactRange(
1254
- const MutableCFOptions& mutable_cf_options,
1255
- const MutableDBOptions& mutable_db_options, int input_level,
1256
- int output_level, const CompactRangeOptions& compact_range_options,
1257
- const InternalKey* begin, const InternalKey* end,
1258
- InternalKey** compaction_end, bool* conflict,
1259
- uint64_t max_file_num_to_ignore, const std::string& trim_ts) {
1260
- auto* result = compaction_picker_->CompactRange(
1261
- GetName(), mutable_cf_options, mutable_db_options,
1262
- current_->storage_info(), input_level, output_level,
1263
- compact_range_options, begin, end, compaction_end, conflict,
1264
- max_file_num_to_ignore, trim_ts);
1265
- if (result != nullptr) {
1266
- result->FinalizeInputInfo(current_);
1267
- }
1268
- TEST_SYNC_POINT("ColumnFamilyData::CompactRange:Return");
1269
- return result;
1270
- }
1271
-
1272
- SuperVersion* ColumnFamilyData::GetReferencedSuperVersion(DBImpl* db) {
1273
- SuperVersion* sv = GetThreadLocalSuperVersion(db);
1274
- sv->Ref();
1275
- if (!ReturnThreadLocalSuperVersion(sv)) {
1276
- // This Unref() corresponds to the Ref() in GetThreadLocalSuperVersion()
1277
- // when the thread-local pointer was populated. So, the Ref() earlier in
1278
- // this function still prevents the returned SuperVersion* from being
1279
- // deleted out from under the caller.
1280
- sv->Unref();
1281
- }
1282
- return sv;
1283
- }
1284
-
1285
- SuperVersion* ColumnFamilyData::GetThreadLocalSuperVersion(DBImpl* db) {
1286
- // The SuperVersion is cached in thread local storage to avoid acquiring
1287
- // mutex when SuperVersion does not change since the last use. When a new
1288
- // SuperVersion is installed, the compaction or flush thread cleans up
1289
- // cached SuperVersion in all existing thread local storage. To avoid
1290
- // acquiring mutex for this operation, we use atomic Swap() on the thread
1291
- // local pointer to guarantee exclusive access. If the thread local pointer
1292
- // is being used while a new SuperVersion is installed, the cached
1293
- // SuperVersion can become stale. In that case, the background thread would
1294
- // have swapped in kSVObsolete. We re-check the value at when returning
1295
- // SuperVersion back to thread local, with an atomic compare and swap.
1296
- // The superversion will need to be released if detected to be stale.
1297
- void* ptr = local_sv_->Swap(SuperVersion::kSVInUse);
1298
- // Invariant:
1299
- // (1) Scrape (always) installs kSVObsolete in ThreadLocal storage
1300
- // (2) the Swap above (always) installs kSVInUse, ThreadLocal storage
1301
- // should only keep kSVInUse before ReturnThreadLocalSuperVersion call
1302
- // (if no Scrape happens).
1303
- assert(ptr != SuperVersion::kSVInUse);
1304
- SuperVersion* sv = static_cast<SuperVersion*>(ptr);
1305
- if (sv == SuperVersion::kSVObsolete) {
1306
- RecordTick(ioptions_.stats, NUMBER_SUPERVERSION_ACQUIRES);
1307
- db->mutex()->Lock();
1308
- sv = super_version_->Ref();
1309
- db->mutex()->Unlock();
1310
- }
1311
- assert(sv != nullptr);
1312
- return sv;
1313
- }
1314
-
1315
- bool ColumnFamilyData::ReturnThreadLocalSuperVersion(SuperVersion* sv) {
1316
- assert(sv != nullptr);
1317
- // Put the SuperVersion back
1318
- void* expected = SuperVersion::kSVInUse;
1319
- if (local_sv_->CompareAndSwap(static_cast<void*>(sv), expected)) {
1320
- // When we see kSVInUse in the ThreadLocal, we are sure ThreadLocal
1321
- // storage has not been altered and no Scrape has happened. The
1322
- // SuperVersion is still current.
1323
- return true;
1324
- } else {
1325
- // ThreadLocal scrape happened in the process of this GetImpl call (after
1326
- // thread local Swap() at the beginning and before CompareAndSwap()).
1327
- // This means the SuperVersion it holds is obsolete.
1328
- assert(expected == SuperVersion::kSVObsolete);
1329
- }
1330
- return false;
1331
- }
1332
-
1333
- void ColumnFamilyData::InstallSuperVersion(SuperVersionContext* sv_context,
1334
- InstrumentedMutex* db_mutex) {
1335
- db_mutex->AssertHeld();
1336
- return InstallSuperVersion(sv_context, mutable_cf_options_);
1337
- }
1338
-
1339
- void ColumnFamilyData::InstallSuperVersion(
1340
- SuperVersionContext* sv_context,
1341
- const MutableCFOptions& mutable_cf_options) {
1342
- SuperVersion* new_superversion = sv_context->new_superversion.release();
1343
- new_superversion->mutable_cf_options = mutable_cf_options;
1344
- new_superversion->Init(this, mem_, imm_.current(), current_,
1345
- sv_context->new_seqno_to_time_mapping
1346
- ? std::move(sv_context->new_seqno_to_time_mapping)
1347
- : super_version_
1348
- ? super_version_->ShareSeqnoToTimeMapping()
1349
- : nullptr);
1350
- SuperVersion* old_superversion = super_version_;
1351
- super_version_ = new_superversion;
1352
- if (old_superversion == nullptr || old_superversion->current != current() ||
1353
- old_superversion->mem != mem_ ||
1354
- old_superversion->imm != imm_.current()) {
1355
- // Should not recalculate slow down condition if nothing has changed, since
1356
- // currently RecalculateWriteStallConditions() treats it as further slowing
1357
- // down is needed.
1358
- super_version_->write_stall_condition =
1359
- RecalculateWriteStallConditions(mutable_cf_options);
1360
- } else {
1361
- super_version_->write_stall_condition =
1362
- old_superversion->write_stall_condition;
1363
- }
1364
- if (old_superversion != nullptr) {
1365
- // Reset SuperVersions cached in thread local storage.
1366
- // This should be done before old_superversion->Unref(). That's to ensure
1367
- // that local_sv_ never holds the last reference to SuperVersion, since
1368
- // it has no means to safely do SuperVersion cleanup.
1369
- ResetThreadLocalSuperVersions();
1370
-
1371
- if (old_superversion->mutable_cf_options.write_buffer_size !=
1372
- mutable_cf_options.write_buffer_size) {
1373
- mem_->UpdateWriteBufferSize(mutable_cf_options.write_buffer_size);
1374
- }
1375
- if (old_superversion->write_stall_condition !=
1376
- new_superversion->write_stall_condition) {
1377
- sv_context->PushWriteStallNotification(
1378
- old_superversion->write_stall_condition,
1379
- new_superversion->write_stall_condition, GetName(), ioptions());
1380
- }
1381
- if (old_superversion->Unref()) {
1382
- old_superversion->Cleanup();
1383
- sv_context->superversions_to_free.push_back(old_superversion);
1384
- }
1385
- }
1386
- ++super_version_number_;
1387
- super_version_->version_number = super_version_number_;
1388
- }
1389
-
1390
- void ColumnFamilyData::ResetThreadLocalSuperVersions() {
1391
- autovector<void*> sv_ptrs;
1392
- local_sv_->Scrape(&sv_ptrs, SuperVersion::kSVObsolete);
1393
- for (auto ptr : sv_ptrs) {
1394
- assert(ptr);
1395
- if (ptr == SuperVersion::kSVInUse) {
1396
- continue;
1397
- }
1398
- auto sv = static_cast<SuperVersion*>(ptr);
1399
- bool was_last_ref __attribute__((__unused__));
1400
- was_last_ref = sv->Unref();
1401
- // sv couldn't have been the last reference because
1402
- // ResetThreadLocalSuperVersions() is called before
1403
- // unref'ing super_version_.
1404
- assert(!was_last_ref);
1405
- }
1406
- }
1407
-
1408
- Status ColumnFamilyData::ValidateOptions(
1409
- const DBOptions& db_options, const ColumnFamilyOptions& cf_options) {
1410
- Status s;
1411
- s = CheckCompressionSupported(cf_options);
1412
- if (s.ok() && db_options.allow_concurrent_memtable_write) {
1413
- s = CheckConcurrentWritesSupported(cf_options);
1414
- }
1415
- if (s.ok() && db_options.unordered_write &&
1416
- cf_options.max_successive_merges != 0) {
1417
- s = Status::InvalidArgument(
1418
- "max_successive_merges > 0 is incompatible with unordered_write");
1419
- }
1420
- if (s.ok()) {
1421
- s = CheckCFPathsSupported(db_options, cf_options);
1422
- }
1423
- if (!s.ok()) {
1424
- return s;
1425
- }
1426
-
1427
- if (cf_options.ttl > 0 && cf_options.ttl != kDefaultTtl) {
1428
- if (!cf_options.table_factory->IsInstanceOf(
1429
- TableFactory::kBlockBasedTableName())) {
1430
- return Status::NotSupported(
1431
- "TTL is only supported in Block-Based Table format. ");
1432
- }
1433
- }
1434
-
1435
- if (cf_options.periodic_compaction_seconds > 0 &&
1436
- cf_options.periodic_compaction_seconds != kDefaultPeriodicCompSecs) {
1437
- if (!cf_options.table_factory->IsInstanceOf(
1438
- TableFactory::kBlockBasedTableName())) {
1439
- return Status::NotSupported(
1440
- "Periodic Compaction is only supported in "
1441
- "Block-Based Table format. ");
1442
- }
1443
- }
1444
-
1445
- const auto* ucmp = cf_options.comparator;
1446
- assert(ucmp);
1447
- if (ucmp->timestamp_size() > 0 &&
1448
- !cf_options.persist_user_defined_timestamps) {
1449
- if (db_options.atomic_flush) {
1450
- return Status::NotSupported(
1451
- "Not persisting user-defined timestamps feature is not supported"
1452
- "in combination with atomic flush.");
1453
- }
1454
- if (db_options.allow_concurrent_memtable_write) {
1455
- return Status::NotSupported(
1456
- "Not persisting user-defined timestamps feature is not supported"
1457
- " in combination with concurrent memtable write.");
1458
- }
1459
- const char* comparator_name = cf_options.comparator->Name();
1460
- size_t name_size = strlen(comparator_name);
1461
- const char* suffix = ".u64ts";
1462
- size_t suffix_size = strlen(suffix);
1463
- if (name_size <= suffix_size ||
1464
- strcmp(comparator_name + name_size - suffix_size, suffix) != 0) {
1465
- return Status::NotSupported(
1466
- "Not persisting user-defined timestamps"
1467
- "feature only support user-defined timestamps formatted as "
1468
- "uint64_t.");
1469
- }
1470
- }
1471
-
1472
- if (cf_options.enable_blob_garbage_collection) {
1473
- if (cf_options.blob_garbage_collection_age_cutoff < 0.0 ||
1474
- cf_options.blob_garbage_collection_age_cutoff > 1.0) {
1475
- return Status::InvalidArgument(
1476
- "The age cutoff for blob garbage collection should be in the range "
1477
- "[0.0, 1.0].");
1478
- }
1479
- if (cf_options.blob_garbage_collection_force_threshold < 0.0 ||
1480
- cf_options.blob_garbage_collection_force_threshold > 1.0) {
1481
- return Status::InvalidArgument(
1482
- "The garbage ratio threshold for forcing blob garbage collection "
1483
- "should be in the range [0.0, 1.0].");
1484
- }
1485
- }
1486
-
1487
- if (cf_options.compaction_style == kCompactionStyleFIFO &&
1488
- db_options.max_open_files != -1 && cf_options.ttl > 0) {
1489
- return Status::NotSupported(
1490
- "FIFO compaction only supported with max_open_files = -1.");
1491
- }
1492
-
1493
- std::vector<uint32_t> supported{0, 1, 2, 4, 8};
1494
- if (std::find(supported.begin(), supported.end(),
1495
- cf_options.memtable_protection_bytes_per_key) ==
1496
- supported.end()) {
1497
- return Status::NotSupported(
1498
- "Memtable per key-value checksum protection only supports 0, 1, 2, 4 "
1499
- "or 8 bytes per key.");
1500
- }
1501
- if (std::find(supported.begin(), supported.end(),
1502
- cf_options.block_protection_bytes_per_key) == supported.end()) {
1503
- return Status::NotSupported(
1504
- "Block per key-value checksum protection only supports 0, 1, 2, 4 "
1505
- "or 8 bytes per key.");
1506
- }
1507
-
1508
- if (!cf_options.compaction_options_fifo.file_temperature_age_thresholds
1509
- .empty()) {
1510
- if (cf_options.compaction_style != kCompactionStyleFIFO) {
1511
- return Status::NotSupported(
1512
- "Option file_temperature_age_thresholds only supports FIFO "
1513
- "compaction.");
1514
- } else if (cf_options.num_levels > 1) {
1515
- return Status::NotSupported(
1516
- "Option file_temperature_age_thresholds is only supported when "
1517
- "num_levels = 1.");
1518
- } else {
1519
- const auto& ages =
1520
- cf_options.compaction_options_fifo.file_temperature_age_thresholds;
1521
- assert(ages.size() >= 1);
1522
- // check that age is sorted
1523
- for (size_t i = 0; i < ages.size() - 1; ++i) {
1524
- if (ages[i].age >= ages[i + 1].age) {
1525
- return Status::NotSupported(
1526
- "Option file_temperature_age_thresholds requires elements to be "
1527
- "sorted in increasing order with respect to `age` field.");
1528
- }
1529
- }
1530
- }
1531
- }
1532
-
1533
- if (cf_options.compaction_style == kCompactionStyleUniversal) {
1534
- int max_read_amp = cf_options.compaction_options_universal.max_read_amp;
1535
- if (max_read_amp < -1) {
1536
- return Status::NotSupported(
1537
- "CompactionOptionsUniversal::max_read_amp should be at least -1.");
1538
- } else if (0 < max_read_amp &&
1539
- max_read_amp < cf_options.level0_file_num_compaction_trigger) {
1540
- return Status::NotSupported(
1541
- "CompactionOptionsUniversal::max_read_amp limits the number of sorted"
1542
- " runs but is smaller than the compaction trigger "
1543
- "level0_file_num_compaction_trigger.");
1544
- }
1545
- }
1546
- return s;
1547
- }
1548
-
1549
- Status ColumnFamilyData::SetOptions(
1550
- const DBOptions& db_opts,
1551
- const std::unordered_map<std::string, std::string>& options_map) {
1552
- ColumnFamilyOptions cf_opts =
1553
- BuildColumnFamilyOptions(initial_cf_options_, mutable_cf_options_);
1554
- ConfigOptions config_opts;
1555
- config_opts.mutable_options_only = true;
1556
- Status s = GetColumnFamilyOptionsFromMap(config_opts, cf_opts, options_map,
1557
- &cf_opts);
1558
- if (s.ok()) {
1559
- s = ValidateOptions(db_opts, cf_opts);
1560
- }
1561
- if (s.ok()) {
1562
- mutable_cf_options_ = MutableCFOptions(cf_opts);
1563
- mutable_cf_options_.RefreshDerivedOptions(ioptions_);
1564
- }
1565
- return s;
1566
- }
1567
-
1568
- // REQUIRES: DB mutex held
1569
- Env::WriteLifeTimeHint ColumnFamilyData::CalculateSSTWriteHint(int level) {
1570
- if (initial_cf_options_.compaction_style != kCompactionStyleLevel) {
1571
- return Env::WLTH_NOT_SET;
1572
- }
1573
- if (level == 0) {
1574
- return Env::WLTH_MEDIUM;
1575
- }
1576
- int base_level = current_->storage_info()->base_level();
1577
-
1578
- // L1: medium, L2: long, ...
1579
- if (level - base_level >= 2) {
1580
- return Env::WLTH_EXTREME;
1581
- } else if (level < base_level) {
1582
- // There is no restriction which prevents level passed in to be smaller
1583
- // than base_level.
1584
- return Env::WLTH_MEDIUM;
1585
- }
1586
- return static_cast<Env::WriteLifeTimeHint>(
1587
- level - base_level + static_cast<int>(Env::WLTH_MEDIUM));
1588
- }
1589
-
1590
- Status ColumnFamilyData::AddDirectories(
1591
- std::map<std::string, std::shared_ptr<FSDirectory>>* created_dirs) {
1592
- Status s;
1593
- assert(created_dirs != nullptr);
1594
- assert(data_dirs_.empty());
1595
- for (auto& p : ioptions_.cf_paths) {
1596
- auto existing_dir = created_dirs->find(p.path);
1597
-
1598
- if (existing_dir == created_dirs->end()) {
1599
- std::unique_ptr<FSDirectory> path_directory;
1600
- s = DBImpl::CreateAndNewDirectory(ioptions_.fs.get(), p.path,
1601
- &path_directory);
1602
- if (!s.ok()) {
1603
- return s;
1604
- }
1605
- assert(path_directory != nullptr);
1606
- data_dirs_.emplace_back(path_directory.release());
1607
- (*created_dirs)[p.path] = data_dirs_.back();
1608
- } else {
1609
- data_dirs_.emplace_back(existing_dir->second);
1610
- }
1611
- }
1612
- assert(data_dirs_.size() == ioptions_.cf_paths.size());
1613
- return s;
1614
- }
1615
-
1616
- FSDirectory* ColumnFamilyData::GetDataDir(size_t path_id) const {
1617
- if (data_dirs_.empty()) {
1618
- return nullptr;
1619
- }
1620
-
1621
- assert(path_id < data_dirs_.size());
1622
- return data_dirs_[path_id].get();
1623
- }
1624
-
1625
- void ColumnFamilyData::SetFlushSkipReschedule() {
1626
- const Comparator* ucmp = user_comparator();
1627
- const size_t ts_sz = ucmp->timestamp_size();
1628
- if (ts_sz == 0 || ioptions_.persist_user_defined_timestamps) {
1629
- return;
1630
- }
1631
- flush_skip_reschedule_.store(true);
1632
- }
1633
-
1634
- bool ColumnFamilyData::GetAndClearFlushSkipReschedule() {
1635
- return flush_skip_reschedule_.exchange(false);
1636
- }
1637
-
1638
- bool ColumnFamilyData::ShouldPostponeFlushToRetainUDT(
1639
- uint64_t max_memtable_id) {
1640
- const Comparator* ucmp = user_comparator();
1641
- const size_t ts_sz = ucmp->timestamp_size();
1642
- if (ts_sz == 0 || ioptions_.persist_user_defined_timestamps) {
1643
- return false;
1644
- }
1645
- // If users set the `persist_user_defined_timestamps` flag to false, they
1646
- // should also set the `full_history_ts_low` flag to indicate the range of
1647
- // user-defined timestamps to retain in memory. Otherwise, we do not
1648
- // explicitly postpone flush to retain UDTs.
1649
- const std::string& full_history_ts_low = GetFullHistoryTsLow();
1650
- if (full_history_ts_low.empty()) {
1651
- return false;
1652
- }
1653
- for (const Slice& table_newest_udt :
1654
- imm()->GetTablesNewestUDT(max_memtable_id)) {
1655
- assert(table_newest_udt.size() == full_history_ts_low.size());
1656
- // Checking the newest UDT contained in MemTable with ascending ID up to
1657
- // `max_memtable_id`. Return immediately on finding the first MemTable that
1658
- // needs postponing.
1659
- if (ucmp->CompareTimestamp(table_newest_udt, full_history_ts_low) >= 0) {
1660
- return true;
1661
- }
1662
- }
1663
- return false;
1664
- }
1665
-
1666
- void ColumnFamilyData::RecoverEpochNumbers() {
1667
- assert(current_);
1668
- auto* vstorage = current_->storage_info();
1669
- assert(vstorage);
1670
- vstorage->RecoverEpochNumbers(this);
1671
- }
1672
-
1673
- ColumnFamilySet::ColumnFamilySet(const std::string& dbname,
1674
- const ImmutableDBOptions* db_options,
1675
- const FileOptions& file_options,
1676
- Cache* table_cache,
1677
- WriteBufferManager* _write_buffer_manager,
1678
- WriteController* _write_controller,
1679
- BlockCacheTracer* const block_cache_tracer,
1680
- const std::shared_ptr<IOTracer>& io_tracer,
1681
- const std::string& db_id,
1682
- const std::string& db_session_id)
1683
- : max_column_family_(0),
1684
- file_options_(file_options),
1685
- dummy_cfd_(new ColumnFamilyData(
1686
- ColumnFamilyData::kDummyColumnFamilyDataId, "", nullptr, nullptr,
1687
- nullptr, ColumnFamilyOptions(), *db_options, &file_options_, nullptr,
1688
- block_cache_tracer, io_tracer, db_id, db_session_id)),
1689
- default_cfd_cache_(nullptr),
1690
- db_name_(dbname),
1691
- db_options_(db_options),
1692
- table_cache_(table_cache),
1693
- write_buffer_manager_(_write_buffer_manager),
1694
- write_controller_(_write_controller),
1695
- block_cache_tracer_(block_cache_tracer),
1696
- io_tracer_(io_tracer),
1697
- db_id_(db_id),
1698
- db_session_id_(db_session_id) {
1699
- // initialize linked list
1700
- dummy_cfd_->prev_ = dummy_cfd_;
1701
- dummy_cfd_->next_ = dummy_cfd_;
1702
- }
1703
-
1704
- ColumnFamilySet::~ColumnFamilySet() {
1705
- while (column_family_data_.size() > 0) {
1706
- // cfd destructor will delete itself from column_family_data_
1707
- auto cfd = column_family_data_.begin()->second;
1708
- bool last_ref __attribute__((__unused__));
1709
- last_ref = cfd->UnrefAndTryDelete();
1710
- assert(last_ref);
1711
- }
1712
- bool dummy_last_ref __attribute__((__unused__));
1713
- dummy_last_ref = dummy_cfd_->UnrefAndTryDelete();
1714
- assert(dummy_last_ref);
1715
- }
1716
-
1717
- ColumnFamilyData* ColumnFamilySet::GetDefault() const {
1718
- assert(default_cfd_cache_ != nullptr);
1719
- return default_cfd_cache_;
1720
- }
1721
-
1722
- ColumnFamilyData* ColumnFamilySet::GetColumnFamily(uint32_t id) const {
1723
- auto cfd_iter = column_family_data_.find(id);
1724
- if (cfd_iter != column_family_data_.end()) {
1725
- return cfd_iter->second;
1726
- } else {
1727
- return nullptr;
1728
- }
1729
- }
1730
-
1731
- ColumnFamilyData* ColumnFamilySet::GetColumnFamily(
1732
- const std::string& name) const {
1733
- auto cfd_iter = column_families_.find(name);
1734
- if (cfd_iter != column_families_.end()) {
1735
- auto cfd = GetColumnFamily(cfd_iter->second);
1736
- assert(cfd != nullptr);
1737
- return cfd;
1738
- } else {
1739
- return nullptr;
1740
- }
1741
- }
1742
-
1743
- uint32_t ColumnFamilySet::GetNextColumnFamilyID() {
1744
- return ++max_column_family_;
1745
- }
1746
-
1747
- uint32_t ColumnFamilySet::GetMaxColumnFamily() { return max_column_family_; }
1748
-
1749
- void ColumnFamilySet::UpdateMaxColumnFamily(uint32_t new_max_column_family) {
1750
- max_column_family_ = std::max(new_max_column_family, max_column_family_);
1751
- }
1752
-
1753
- size_t ColumnFamilySet::NumberOfColumnFamilies() const {
1754
- return column_families_.size();
1755
- }
1756
-
1757
- // under a DB mutex AND write thread
1758
- ColumnFamilyData* ColumnFamilySet::CreateColumnFamily(
1759
- const std::string& name, uint32_t id, Version* dummy_versions,
1760
- const ColumnFamilyOptions& options) {
1761
- assert(column_families_.find(name) == column_families_.end());
1762
- ColumnFamilyData* new_cfd = new ColumnFamilyData(
1763
- id, name, dummy_versions, table_cache_, write_buffer_manager_, options,
1764
- *db_options_, &file_options_, this, block_cache_tracer_, io_tracer_,
1765
- db_id_, db_session_id_);
1766
- column_families_.insert({name, id});
1767
- column_family_data_.insert({id, new_cfd});
1768
- auto ucmp = new_cfd->user_comparator();
1769
- assert(ucmp);
1770
- size_t ts_sz = ucmp->timestamp_size();
1771
- running_ts_sz_.insert({id, ts_sz});
1772
- if (ts_sz > 0) {
1773
- ts_sz_for_record_.insert({id, ts_sz});
1774
- }
1775
- max_column_family_ = std::max(max_column_family_, id);
1776
- // add to linked list
1777
- new_cfd->next_ = dummy_cfd_;
1778
- auto prev = dummy_cfd_->prev_;
1779
- new_cfd->prev_ = prev;
1780
- prev->next_ = new_cfd;
1781
- dummy_cfd_->prev_ = new_cfd;
1782
- if (id == 0) {
1783
- default_cfd_cache_ = new_cfd;
1784
- }
1785
- return new_cfd;
1786
- }
1787
-
1788
- // under a DB mutex AND from a write thread
1789
- void ColumnFamilySet::RemoveColumnFamily(ColumnFamilyData* cfd) {
1790
- uint32_t cf_id = cfd->GetID();
1791
- auto cfd_iter = column_family_data_.find(cf_id);
1792
- assert(cfd_iter != column_family_data_.end());
1793
- column_family_data_.erase(cfd_iter);
1794
- column_families_.erase(cfd->GetName());
1795
- running_ts_sz_.erase(cf_id);
1796
- ts_sz_for_record_.erase(cf_id);
1797
- }
1798
-
1799
- // under a DB mutex OR from a write thread
1800
- bool ColumnFamilyMemTablesImpl::Seek(uint32_t column_family_id) {
1801
- if (column_family_id == 0) {
1802
- // optimization for common case
1803
- current_ = column_family_set_->GetDefault();
1804
- } else {
1805
- current_ = column_family_set_->GetColumnFamily(column_family_id);
1806
- }
1807
- handle_.SetCFD(current_);
1808
- return current_ != nullptr;
1809
- }
1810
-
1811
- uint64_t ColumnFamilyMemTablesImpl::GetLogNumber() const {
1812
- assert(current_ != nullptr);
1813
- return current_->GetLogNumber();
1814
- }
1815
-
1816
- MemTable* ColumnFamilyMemTablesImpl::GetMemTable() const {
1817
- assert(current_ != nullptr);
1818
- return current_->mem();
1819
- }
1820
-
1821
- ColumnFamilyHandle* ColumnFamilyMemTablesImpl::GetColumnFamilyHandle() {
1822
- assert(current_ != nullptr);
1823
- return &handle_;
1824
- }
1825
-
1826
- uint32_t GetColumnFamilyID(ColumnFamilyHandle* column_family) {
1827
- uint32_t column_family_id = 0;
1828
- if (column_family != nullptr) {
1829
- auto cfh = static_cast_with_check<ColumnFamilyHandleImpl>(column_family);
1830
- column_family_id = cfh->GetID();
1831
- }
1832
- return column_family_id;
1833
- }
1834
-
1835
- const Comparator* GetColumnFamilyUserComparator(
1836
- ColumnFamilyHandle* column_family) {
1837
- if (column_family != nullptr) {
1838
- return column_family->GetComparator();
1839
- }
1840
- return nullptr;
1841
- }
1842
-
1843
- const ImmutableOptions& GetImmutableOptions(ColumnFamilyHandle* column_family) {
1844
- assert(column_family);
1845
-
1846
- ColumnFamilyHandleImpl* const handle =
1847
- static_cast_with_check<ColumnFamilyHandleImpl>(column_family);
1848
- assert(handle);
1849
-
1850
- const ColumnFamilyData* const cfd = handle->cfd();
1851
- assert(cfd);
1852
-
1853
- const ImmutableOptions* ioptions = cfd->ioptions();
1854
- assert(ioptions);
1855
-
1856
- return *ioptions;
1857
- }
1858
-
1859
- } // namespace ROCKSDB_NAMESPACE