rocksdb-native 0.0.0

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 (1951) hide show
  1. package/.clang-format +15 -0
  2. package/.github/workflows/test-node.yml +23 -0
  3. package/.gitmodules +4 -0
  4. package/CMakeLists.txt +33 -0
  5. package/LICENSE +201 -0
  6. package/NOTICE +13 -0
  7. package/README.md +15 -0
  8. package/binding.c +470 -0
  9. package/binding.js +1 -0
  10. package/index.js +276 -0
  11. package/package.json +19 -0
  12. package/vendor/rocksdb/.circleci/config.yml +892 -0
  13. package/vendor/rocksdb/.circleci/ubsan_suppression_list.txt +6 -0
  14. package/vendor/rocksdb/.clang-format +5 -0
  15. package/vendor/rocksdb/.github/workflows/sanity_check.yml +47 -0
  16. package/vendor/rocksdb/.lgtm.yml +4 -0
  17. package/vendor/rocksdb/AUTHORS +12 -0
  18. package/vendor/rocksdb/CMakeLists.txt +1591 -0
  19. package/vendor/rocksdb/CODE_OF_CONDUCT.md +77 -0
  20. package/vendor/rocksdb/CONTRIBUTING.md +17 -0
  21. package/vendor/rocksdb/COPYING +339 -0
  22. package/vendor/rocksdb/DEFAULT_OPTIONS_HISTORY.md +24 -0
  23. package/vendor/rocksdb/DUMP_FORMAT.md +16 -0
  24. package/vendor/rocksdb/HISTORY.md +2399 -0
  25. package/vendor/rocksdb/INSTALL.md +220 -0
  26. package/vendor/rocksdb/LANGUAGE-BINDINGS.md +26 -0
  27. package/vendor/rocksdb/LICENSE.Apache +202 -0
  28. package/vendor/rocksdb/LICENSE.leveldb +29 -0
  29. package/vendor/rocksdb/Makefile +2579 -0
  30. package/vendor/rocksdb/PLUGINS.md +8 -0
  31. package/vendor/rocksdb/README.md +29 -0
  32. package/vendor/rocksdb/TARGETS +5599 -0
  33. package/vendor/rocksdb/USERS.md +165 -0
  34. package/vendor/rocksdb/Vagrantfile +39 -0
  35. package/vendor/rocksdb/WINDOWS_PORT.md +228 -0
  36. package/vendor/rocksdb/buckifier/bench-slow.json +6163 -0
  37. package/vendor/rocksdb/buckifier/bench.json +1594 -0
  38. package/vendor/rocksdb/buckifier/buckify_rocksdb.py +333 -0
  39. package/vendor/rocksdb/buckifier/check_buck_targets.sh +32 -0
  40. package/vendor/rocksdb/buckifier/rocks_test_runner.sh +6 -0
  41. package/vendor/rocksdb/buckifier/targets_builder.py +150 -0
  42. package/vendor/rocksdb/buckifier/targets_cfg.py +41 -0
  43. package/vendor/rocksdb/buckifier/util.py +118 -0
  44. package/vendor/rocksdb/build_tools/amalgamate.py +168 -0
  45. package/vendor/rocksdb/build_tools/benchmark_log_tool.py +238 -0
  46. package/vendor/rocksdb/build_tools/build_detect_platform +804 -0
  47. package/vendor/rocksdb/build_tools/check-sources.sh +48 -0
  48. package/vendor/rocksdb/build_tools/dependencies_platform010.sh +22 -0
  49. package/vendor/rocksdb/build_tools/dockerbuild.sh +3 -0
  50. package/vendor/rocksdb/build_tools/error_filter.py +181 -0
  51. package/vendor/rocksdb/build_tools/fb_compile_mongo.sh +55 -0
  52. package/vendor/rocksdb/build_tools/fbcode_config.sh +175 -0
  53. package/vendor/rocksdb/build_tools/fbcode_config_platform010.sh +175 -0
  54. package/vendor/rocksdb/build_tools/format-diff.sh +203 -0
  55. package/vendor/rocksdb/build_tools/gnu_parallel +7971 -0
  56. package/vendor/rocksdb/build_tools/make_package.sh +129 -0
  57. package/vendor/rocksdb/build_tools/ps_with_stack +38 -0
  58. package/vendor/rocksdb/build_tools/regression_build_test.sh +396 -0
  59. package/vendor/rocksdb/build_tools/run_ci_db_test.ps1 +493 -0
  60. package/vendor/rocksdb/build_tools/setup_centos7.sh +45 -0
  61. package/vendor/rocksdb/build_tools/ubuntu20_image/Dockerfile +57 -0
  62. package/vendor/rocksdb/build_tools/update_dependencies.sh +106 -0
  63. package/vendor/rocksdb/build_tools/version.sh +23 -0
  64. package/vendor/rocksdb/cache/cache.cc +158 -0
  65. package/vendor/rocksdb/cache/cache_bench.cc +20 -0
  66. package/vendor/rocksdb/cache/cache_bench_tool.cc +969 -0
  67. package/vendor/rocksdb/cache/cache_entry_roles.cc +104 -0
  68. package/vendor/rocksdb/cache/cache_entry_roles.h +20 -0
  69. package/vendor/rocksdb/cache/cache_entry_stats.h +182 -0
  70. package/vendor/rocksdb/cache/cache_helpers.cc +40 -0
  71. package/vendor/rocksdb/cache/cache_helpers.h +139 -0
  72. package/vendor/rocksdb/cache/cache_key.cc +364 -0
  73. package/vendor/rocksdb/cache/cache_key.h +143 -0
  74. package/vendor/rocksdb/cache/cache_reservation_manager.cc +184 -0
  75. package/vendor/rocksdb/cache/cache_reservation_manager.h +317 -0
  76. package/vendor/rocksdb/cache/cache_reservation_manager_test.cc +469 -0
  77. package/vendor/rocksdb/cache/cache_test.cc +1061 -0
  78. package/vendor/rocksdb/cache/charged_cache.cc +109 -0
  79. package/vendor/rocksdb/cache/charged_cache.h +59 -0
  80. package/vendor/rocksdb/cache/clock_cache.cc +1482 -0
  81. package/vendor/rocksdb/cache/clock_cache.h +707 -0
  82. package/vendor/rocksdb/cache/compressed_secondary_cache.cc +304 -0
  83. package/vendor/rocksdb/cache/compressed_secondary_cache.h +132 -0
  84. package/vendor/rocksdb/cache/compressed_secondary_cache_test.cc +983 -0
  85. package/vendor/rocksdb/cache/lru_cache.cc +723 -0
  86. package/vendor/rocksdb/cache/lru_cache.h +467 -0
  87. package/vendor/rocksdb/cache/lru_cache_test.cc +2559 -0
  88. package/vendor/rocksdb/cache/secondary_cache.cc +44 -0
  89. package/vendor/rocksdb/cache/secondary_cache_adapter.cc +295 -0
  90. package/vendor/rocksdb/cache/secondary_cache_adapter.h +52 -0
  91. package/vendor/rocksdb/cache/sharded_cache.cc +137 -0
  92. package/vendor/rocksdb/cache/sharded_cache.h +309 -0
  93. package/vendor/rocksdb/cache/typed_cache.h +375 -0
  94. package/vendor/rocksdb/cmake/RocksDBConfig.cmake.in +54 -0
  95. package/vendor/rocksdb/common.mk +30 -0
  96. package/vendor/rocksdb/crash_test.mk +107 -0
  97. package/vendor/rocksdb/db/arena_wrapped_db_iter.cc +163 -0
  98. package/vendor/rocksdb/db/arena_wrapped_db_iter.h +127 -0
  99. package/vendor/rocksdb/db/blob/blob_constants.h +16 -0
  100. package/vendor/rocksdb/db/blob/blob_contents.cc +42 -0
  101. package/vendor/rocksdb/db/blob/blob_contents.h +59 -0
  102. package/vendor/rocksdb/db/blob/blob_counting_iterator.h +150 -0
  103. package/vendor/rocksdb/db/blob/blob_counting_iterator_test.cc +327 -0
  104. package/vendor/rocksdb/db/blob/blob_fetcher.cc +34 -0
  105. package/vendor/rocksdb/db/blob/blob_fetcher.h +37 -0
  106. package/vendor/rocksdb/db/blob/blob_file_addition.cc +156 -0
  107. package/vendor/rocksdb/db/blob/blob_file_addition.h +67 -0
  108. package/vendor/rocksdb/db/blob/blob_file_addition_test.cc +211 -0
  109. package/vendor/rocksdb/db/blob/blob_file_builder.cc +426 -0
  110. package/vendor/rocksdb/db/blob/blob_file_builder.h +112 -0
  111. package/vendor/rocksdb/db/blob/blob_file_builder_test.cc +680 -0
  112. package/vendor/rocksdb/db/blob/blob_file_cache.cc +101 -0
  113. package/vendor/rocksdb/db/blob/blob_file_cache.h +56 -0
  114. package/vendor/rocksdb/db/blob/blob_file_cache_test.cc +278 -0
  115. package/vendor/rocksdb/db/blob/blob_file_completion_callback.h +84 -0
  116. package/vendor/rocksdb/db/blob/blob_file_garbage.cc +134 -0
  117. package/vendor/rocksdb/db/blob/blob_file_garbage.h +57 -0
  118. package/vendor/rocksdb/db/blob/blob_file_garbage_test.cc +174 -0
  119. package/vendor/rocksdb/db/blob/blob_file_meta.cc +62 -0
  120. package/vendor/rocksdb/db/blob/blob_file_meta.h +170 -0
  121. package/vendor/rocksdb/db/blob/blob_file_reader.cc +624 -0
  122. package/vendor/rocksdb/db/blob/blob_file_reader.h +112 -0
  123. package/vendor/rocksdb/db/blob/blob_file_reader_test.cc +1023 -0
  124. package/vendor/rocksdb/db/blob/blob_garbage_meter.cc +100 -0
  125. package/vendor/rocksdb/db/blob/blob_garbage_meter.h +102 -0
  126. package/vendor/rocksdb/db/blob/blob_garbage_meter_test.cc +197 -0
  127. package/vendor/rocksdb/db/blob/blob_index.h +187 -0
  128. package/vendor/rocksdb/db/blob/blob_log_format.cc +143 -0
  129. package/vendor/rocksdb/db/blob/blob_log_format.h +164 -0
  130. package/vendor/rocksdb/db/blob/blob_log_sequential_reader.cc +134 -0
  131. package/vendor/rocksdb/db/blob/blob_log_sequential_reader.h +83 -0
  132. package/vendor/rocksdb/db/blob/blob_log_writer.cc +178 -0
  133. package/vendor/rocksdb/db/blob/blob_log_writer.h +83 -0
  134. package/vendor/rocksdb/db/blob/blob_read_request.h +58 -0
  135. package/vendor/rocksdb/db/blob/blob_source.cc +459 -0
  136. package/vendor/rocksdb/db/blob/blob_source.h +161 -0
  137. package/vendor/rocksdb/db/blob/blob_source_test.cc +1611 -0
  138. package/vendor/rocksdb/db/blob/db_blob_basic_test.cc +2237 -0
  139. package/vendor/rocksdb/db/blob/db_blob_compaction_test.cc +899 -0
  140. package/vendor/rocksdb/db/blob/db_blob_corruption_test.cc +80 -0
  141. package/vendor/rocksdb/db/blob/db_blob_index_test.cc +596 -0
  142. package/vendor/rocksdb/db/blob/prefetch_buffer_collection.cc +21 -0
  143. package/vendor/rocksdb/db/blob/prefetch_buffer_collection.h +38 -0
  144. package/vendor/rocksdb/db/builder.cc +447 -0
  145. package/vendor/rocksdb/db/builder.h +78 -0
  146. package/vendor/rocksdb/db/c.cc +6559 -0
  147. package/vendor/rocksdb/db/c_test.c +3609 -0
  148. package/vendor/rocksdb/db/column_family.cc +1708 -0
  149. package/vendor/rocksdb/db/column_family.h +851 -0
  150. package/vendor/rocksdb/db/column_family_test.cc +3382 -0
  151. package/vendor/rocksdb/db/compact_files_test.cc +492 -0
  152. package/vendor/rocksdb/db/compaction/clipping_iterator.h +281 -0
  153. package/vendor/rocksdb/db/compaction/clipping_iterator_test.cc +259 -0
  154. package/vendor/rocksdb/db/compaction/compaction.cc +857 -0
  155. package/vendor/rocksdb/db/compaction/compaction.h +565 -0
  156. package/vendor/rocksdb/db/compaction/compaction_iteration_stats.h +49 -0
  157. package/vendor/rocksdb/db/compaction/compaction_iterator.cc +1445 -0
  158. package/vendor/rocksdb/db/compaction/compaction_iterator.h +530 -0
  159. package/vendor/rocksdb/db/compaction/compaction_iterator_test.cc +1618 -0
  160. package/vendor/rocksdb/db/compaction/compaction_job.cc +2054 -0
  161. package/vendor/rocksdb/db/compaction/compaction_job.h +504 -0
  162. package/vendor/rocksdb/db/compaction/compaction_job_stats_test.cc +965 -0
  163. package/vendor/rocksdb/db/compaction/compaction_job_test.cc +2444 -0
  164. package/vendor/rocksdb/db/compaction/compaction_outputs.cc +784 -0
  165. package/vendor/rocksdb/db/compaction/compaction_outputs.h +403 -0
  166. package/vendor/rocksdb/db/compaction/compaction_picker.cc +1225 -0
  167. package/vendor/rocksdb/db/compaction/compaction_picker.h +318 -0
  168. package/vendor/rocksdb/db/compaction/compaction_picker_fifo.cc +471 -0
  169. package/vendor/rocksdb/db/compaction/compaction_picker_fifo.h +60 -0
  170. package/vendor/rocksdb/db/compaction/compaction_picker_level.cc +888 -0
  171. package/vendor/rocksdb/db/compaction/compaction_picker_level.h +33 -0
  172. package/vendor/rocksdb/db/compaction/compaction_picker_test.cc +4074 -0
  173. package/vendor/rocksdb/db/compaction/compaction_picker_universal.cc +1452 -0
  174. package/vendor/rocksdb/db/compaction/compaction_picker_universal.h +30 -0
  175. package/vendor/rocksdb/db/compaction/compaction_service_job.cc +833 -0
  176. package/vendor/rocksdb/db/compaction/compaction_service_test.cc +954 -0
  177. package/vendor/rocksdb/db/compaction/compaction_state.cc +46 -0
  178. package/vendor/rocksdb/db/compaction/compaction_state.h +42 -0
  179. package/vendor/rocksdb/db/compaction/file_pri.h +92 -0
  180. package/vendor/rocksdb/db/compaction/sst_partitioner.cc +83 -0
  181. package/vendor/rocksdb/db/compaction/subcompaction_state.cc +106 -0
  182. package/vendor/rocksdb/db/compaction/subcompaction_state.h +220 -0
  183. package/vendor/rocksdb/db/compaction/tiered_compaction_test.cc +2149 -0
  184. package/vendor/rocksdb/db/comparator_db_test.cc +678 -0
  185. package/vendor/rocksdb/db/convenience.cc +81 -0
  186. package/vendor/rocksdb/db/corruption_test.cc +1670 -0
  187. package/vendor/rocksdb/db/cuckoo_table_db_test.cc +351 -0
  188. package/vendor/rocksdb/db/db_basic_test.cc +4777 -0
  189. package/vendor/rocksdb/db/db_block_cache_test.cc +1972 -0
  190. package/vendor/rocksdb/db/db_bloom_filter_test.cc +3513 -0
  191. package/vendor/rocksdb/db/db_clip_test.cc +142 -0
  192. package/vendor/rocksdb/db/db_compaction_filter_test.cc +1030 -0
  193. package/vendor/rocksdb/db/db_compaction_test.cc +9424 -0
  194. package/vendor/rocksdb/db/db_dynamic_level_test.cc +499 -0
  195. package/vendor/rocksdb/db/db_encryption_test.cc +126 -0
  196. package/vendor/rocksdb/db/db_filesnapshot.cc +436 -0
  197. package/vendor/rocksdb/db/db_flush_test.cc +3202 -0
  198. package/vendor/rocksdb/db/db_impl/compacted_db_impl.cc +260 -0
  199. package/vendor/rocksdb/db/db_impl/compacted_db_impl.h +157 -0
  200. package/vendor/rocksdb/db/db_impl/db_impl.cc +6132 -0
  201. package/vendor/rocksdb/db/db_impl/db_impl.h +2841 -0
  202. package/vendor/rocksdb/db/db_impl/db_impl_compaction_flush.cc +3980 -0
  203. package/vendor/rocksdb/db/db_impl/db_impl_debug.cc +314 -0
  204. package/vendor/rocksdb/db/db_impl/db_impl_experimental.cc +159 -0
  205. package/vendor/rocksdb/db/db_impl/db_impl_files.cc +1014 -0
  206. package/vendor/rocksdb/db/db_impl/db_impl_open.cc +2202 -0
  207. package/vendor/rocksdb/db/db_impl/db_impl_readonly.cc +334 -0
  208. package/vendor/rocksdb/db/db_impl/db_impl_readonly.h +173 -0
  209. package/vendor/rocksdb/db/db_impl/db_impl_secondary.cc +964 -0
  210. package/vendor/rocksdb/db/db_impl/db_impl_secondary.h +406 -0
  211. package/vendor/rocksdb/db/db_impl/db_impl_write.cc +2487 -0
  212. package/vendor/rocksdb/db/db_info_dumper.cc +147 -0
  213. package/vendor/rocksdb/db/db_info_dumper.h +15 -0
  214. package/vendor/rocksdb/db/db_inplace_update_test.cc +262 -0
  215. package/vendor/rocksdb/db/db_io_failure_test.cc +589 -0
  216. package/vendor/rocksdb/db/db_iter.cc +1708 -0
  217. package/vendor/rocksdb/db/db_iter.h +411 -0
  218. package/vendor/rocksdb/db/db_iter_stress_test.cc +658 -0
  219. package/vendor/rocksdb/db/db_iter_test.cc +3195 -0
  220. package/vendor/rocksdb/db/db_iterator_test.cc +3304 -0
  221. package/vendor/rocksdb/db/db_kv_checksum_test.cc +885 -0
  222. package/vendor/rocksdb/db/db_log_iter_test.cc +297 -0
  223. package/vendor/rocksdb/db/db_logical_block_size_cache_test.cc +505 -0
  224. package/vendor/rocksdb/db/db_memtable_test.cc +344 -0
  225. package/vendor/rocksdb/db/db_merge_operand_test.cc +488 -0
  226. package/vendor/rocksdb/db/db_merge_operator_test.cc +866 -0
  227. package/vendor/rocksdb/db/db_options_test.cc +1330 -0
  228. package/vendor/rocksdb/db/db_properties_test.cc +2377 -0
  229. package/vendor/rocksdb/db/db_range_del_test.cc +3414 -0
  230. package/vendor/rocksdb/db/db_rate_limiter_test.cc +437 -0
  231. package/vendor/rocksdb/db/db_readonly_with_timestamp_test.cc +956 -0
  232. package/vendor/rocksdb/db/db_secondary_test.cc +1691 -0
  233. package/vendor/rocksdb/db/db_sst_test.cc +1865 -0
  234. package/vendor/rocksdb/db/db_statistics_test.cc +292 -0
  235. package/vendor/rocksdb/db/db_table_properties_test.cc +623 -0
  236. package/vendor/rocksdb/db/db_tailing_iter_test.cc +595 -0
  237. package/vendor/rocksdb/db/db_test.cc +7359 -0
  238. package/vendor/rocksdb/db/db_test2.cc +7679 -0
  239. package/vendor/rocksdb/db/db_test_util.cc +1759 -0
  240. package/vendor/rocksdb/db/db_test_util.h +1340 -0
  241. package/vendor/rocksdb/db/db_universal_compaction_test.cc +2227 -0
  242. package/vendor/rocksdb/db/db_wal_test.cc +2433 -0
  243. package/vendor/rocksdb/db/db_with_timestamp_basic_test.cc +4016 -0
  244. package/vendor/rocksdb/db/db_with_timestamp_compaction_test.cc +353 -0
  245. package/vendor/rocksdb/db/db_with_timestamp_test_util.cc +96 -0
  246. package/vendor/rocksdb/db/db_with_timestamp_test_util.h +126 -0
  247. package/vendor/rocksdb/db/db_write_buffer_manager_test.cc +927 -0
  248. package/vendor/rocksdb/db/db_write_test.cc +795 -0
  249. package/vendor/rocksdb/db/dbformat.cc +213 -0
  250. package/vendor/rocksdb/db/dbformat.h +869 -0
  251. package/vendor/rocksdb/db/dbformat_test.cc +214 -0
  252. package/vendor/rocksdb/db/deletefile_test.cc +603 -0
  253. package/vendor/rocksdb/db/error_handler.cc +792 -0
  254. package/vendor/rocksdb/db/error_handler.h +124 -0
  255. package/vendor/rocksdb/db/error_handler_fs_test.cc +2862 -0
  256. package/vendor/rocksdb/db/event_helpers.cc +323 -0
  257. package/vendor/rocksdb/db/event_helpers.h +78 -0
  258. package/vendor/rocksdb/db/experimental.cc +144 -0
  259. package/vendor/rocksdb/db/external_sst_file_basic_test.cc +2084 -0
  260. package/vendor/rocksdb/db/external_sst_file_ingestion_job.cc +1104 -0
  261. package/vendor/rocksdb/db/external_sst_file_ingestion_job.h +238 -0
  262. package/vendor/rocksdb/db/external_sst_file_test.cc +2859 -0
  263. package/vendor/rocksdb/db/fault_injection_test.cc +637 -0
  264. package/vendor/rocksdb/db/file_indexer.cc +218 -0
  265. package/vendor/rocksdb/db/file_indexer.h +140 -0
  266. package/vendor/rocksdb/db/file_indexer_test.cc +352 -0
  267. package/vendor/rocksdb/db/filename_test.cc +241 -0
  268. package/vendor/rocksdb/db/flush_job.cc +1097 -0
  269. package/vendor/rocksdb/db/flush_job.h +200 -0
  270. package/vendor/rocksdb/db/flush_job_test.cc +743 -0
  271. package/vendor/rocksdb/db/flush_scheduler.cc +86 -0
  272. package/vendor/rocksdb/db/flush_scheduler.h +55 -0
  273. package/vendor/rocksdb/db/forward_iterator.cc +1070 -0
  274. package/vendor/rocksdb/db/forward_iterator.h +166 -0
  275. package/vendor/rocksdb/db/forward_iterator_bench.cc +378 -0
  276. package/vendor/rocksdb/db/history_trimming_iterator.h +95 -0
  277. package/vendor/rocksdb/db/import_column_family_job.cc +364 -0
  278. package/vendor/rocksdb/db/import_column_family_job.h +82 -0
  279. package/vendor/rocksdb/db/import_column_family_test.cc +748 -0
  280. package/vendor/rocksdb/db/internal_stats.cc +2121 -0
  281. package/vendor/rocksdb/db/internal_stats.h +875 -0
  282. package/vendor/rocksdb/db/job_context.h +237 -0
  283. package/vendor/rocksdb/db/kv_checksum.h +484 -0
  284. package/vendor/rocksdb/db/listener_test.cc +1598 -0
  285. package/vendor/rocksdb/db/log_format.h +55 -0
  286. package/vendor/rocksdb/db/log_reader.cc +934 -0
  287. package/vendor/rocksdb/db/log_reader.h +241 -0
  288. package/vendor/rocksdb/db/log_test.cc +1216 -0
  289. package/vendor/rocksdb/db/log_writer.cc +279 -0
  290. package/vendor/rocksdb/db/log_writer.h +144 -0
  291. package/vendor/rocksdb/db/logs_with_prep_tracker.cc +67 -0
  292. package/vendor/rocksdb/db/logs_with_prep_tracker.h +62 -0
  293. package/vendor/rocksdb/db/lookup_key.h +68 -0
  294. package/vendor/rocksdb/db/malloc_stats.cc +53 -0
  295. package/vendor/rocksdb/db/malloc_stats.h +22 -0
  296. package/vendor/rocksdb/db/manual_compaction_test.cc +308 -0
  297. package/vendor/rocksdb/db/memtable.cc +1675 -0
  298. package/vendor/rocksdb/db/memtable.h +660 -0
  299. package/vendor/rocksdb/db/memtable_list.cc +987 -0
  300. package/vendor/rocksdb/db/memtable_list.h +471 -0
  301. package/vendor/rocksdb/db/memtable_list_test.cc +1037 -0
  302. package/vendor/rocksdb/db/merge_context.h +147 -0
  303. package/vendor/rocksdb/db/merge_helper.cc +606 -0
  304. package/vendor/rocksdb/db/merge_helper.h +224 -0
  305. package/vendor/rocksdb/db/merge_helper_test.cc +298 -0
  306. package/vendor/rocksdb/db/merge_operator.cc +85 -0
  307. package/vendor/rocksdb/db/merge_test.cc +621 -0
  308. package/vendor/rocksdb/db/obsolete_files_test.cc +317 -0
  309. package/vendor/rocksdb/db/options_file_test.cc +110 -0
  310. package/vendor/rocksdb/db/output_validator.cc +33 -0
  311. package/vendor/rocksdb/db/output_validator.h +48 -0
  312. package/vendor/rocksdb/db/perf_context_test.cc +1158 -0
  313. package/vendor/rocksdb/db/periodic_task_scheduler.cc +111 -0
  314. package/vendor/rocksdb/db/periodic_task_scheduler.h +108 -0
  315. package/vendor/rocksdb/db/periodic_task_scheduler_test.cc +229 -0
  316. package/vendor/rocksdb/db/pinned_iterators_manager.h +92 -0
  317. package/vendor/rocksdb/db/plain_table_db_test.cc +1348 -0
  318. package/vendor/rocksdb/db/post_memtable_callback.h +25 -0
  319. package/vendor/rocksdb/db/pre_release_callback.h +37 -0
  320. package/vendor/rocksdb/db/prefix_test.cc +894 -0
  321. package/vendor/rocksdb/db/range_del_aggregator.cc +555 -0
  322. package/vendor/rocksdb/db/range_del_aggregator.h +478 -0
  323. package/vendor/rocksdb/db/range_del_aggregator_bench.cc +280 -0
  324. package/vendor/rocksdb/db/range_del_aggregator_test.cc +713 -0
  325. package/vendor/rocksdb/db/range_tombstone_fragmenter.cc +502 -0
  326. package/vendor/rocksdb/db/range_tombstone_fragmenter.h +356 -0
  327. package/vendor/rocksdb/db/range_tombstone_fragmenter_test.cc +555 -0
  328. package/vendor/rocksdb/db/read_callback.h +54 -0
  329. package/vendor/rocksdb/db/repair.cc +839 -0
  330. package/vendor/rocksdb/db/repair_test.cc +484 -0
  331. package/vendor/rocksdb/db/seqno_time_test.cc +994 -0
  332. package/vendor/rocksdb/db/seqno_to_time_mapping.cc +341 -0
  333. package/vendor/rocksdb/db/seqno_to_time_mapping.h +189 -0
  334. package/vendor/rocksdb/db/snapshot_checker.h +58 -0
  335. package/vendor/rocksdb/db/snapshot_impl.cc +25 -0
  336. package/vendor/rocksdb/db/snapshot_impl.h +239 -0
  337. package/vendor/rocksdb/db/table_cache.cc +710 -0
  338. package/vendor/rocksdb/db/table_cache.h +283 -0
  339. package/vendor/rocksdb/db/table_cache_sync_and_async.h +130 -0
  340. package/vendor/rocksdb/db/table_properties_collector.cc +74 -0
  341. package/vendor/rocksdb/db/table_properties_collector.h +177 -0
  342. package/vendor/rocksdb/db/table_properties_collector_test.cc +512 -0
  343. package/vendor/rocksdb/db/transaction_log_impl.cc +296 -0
  344. package/vendor/rocksdb/db/transaction_log_impl.h +128 -0
  345. package/vendor/rocksdb/db/trim_history_scheduler.cc +54 -0
  346. package/vendor/rocksdb/db/trim_history_scheduler.h +46 -0
  347. package/vendor/rocksdb/db/version_builder.cc +1426 -0
  348. package/vendor/rocksdb/db/version_builder.h +93 -0
  349. package/vendor/rocksdb/db/version_builder_test.cc +1840 -0
  350. package/vendor/rocksdb/db/version_edit.cc +1059 -0
  351. package/vendor/rocksdb/db/version_edit.h +702 -0
  352. package/vendor/rocksdb/db/version_edit_handler.cc +1017 -0
  353. package/vendor/rocksdb/db/version_edit_handler.h +334 -0
  354. package/vendor/rocksdb/db/version_edit_test.cc +732 -0
  355. package/vendor/rocksdb/db/version_set.cc +7286 -0
  356. package/vendor/rocksdb/db/version_set.h +1714 -0
  357. package/vendor/rocksdb/db/version_set_sync_and_async.h +172 -0
  358. package/vendor/rocksdb/db/version_set_test.cc +3659 -0
  359. package/vendor/rocksdb/db/version_util.h +72 -0
  360. package/vendor/rocksdb/db/wal_edit.cc +211 -0
  361. package/vendor/rocksdb/db/wal_edit.h +177 -0
  362. package/vendor/rocksdb/db/wal_edit_test.cc +213 -0
  363. package/vendor/rocksdb/db/wal_manager.cc +527 -0
  364. package/vendor/rocksdb/db/wal_manager.h +136 -0
  365. package/vendor/rocksdb/db/wal_manager_test.cc +336 -0
  366. package/vendor/rocksdb/db/wide/db_wide_basic_test.cc +1042 -0
  367. package/vendor/rocksdb/db/wide/wide_column_serialization.cc +182 -0
  368. package/vendor/rocksdb/db/wide/wide_column_serialization.h +77 -0
  369. package/vendor/rocksdb/db/wide/wide_column_serialization_test.cc +338 -0
  370. package/vendor/rocksdb/db/wide/wide_columns.cc +22 -0
  371. package/vendor/rocksdb/db/write_batch.cc +3142 -0
  372. package/vendor/rocksdb/db/write_batch_base.cc +94 -0
  373. package/vendor/rocksdb/db/write_batch_internal.h +401 -0
  374. package/vendor/rocksdb/db/write_batch_test.cc +1112 -0
  375. package/vendor/rocksdb/db/write_callback.h +27 -0
  376. package/vendor/rocksdb/db/write_callback_test.cc +454 -0
  377. package/vendor/rocksdb/db/write_controller.cc +121 -0
  378. package/vendor/rocksdb/db/write_controller.h +148 -0
  379. package/vendor/rocksdb/db/write_controller_test.cc +248 -0
  380. package/vendor/rocksdb/db/write_stall_stats.cc +179 -0
  381. package/vendor/rocksdb/db/write_stall_stats.h +47 -0
  382. package/vendor/rocksdb/db/write_thread.cc +844 -0
  383. package/vendor/rocksdb/db/write_thread.h +464 -0
  384. package/vendor/rocksdb/db_stress_tool/CMakeLists.txt +18 -0
  385. package/vendor/rocksdb/db_stress_tool/batched_ops_stress.cc +593 -0
  386. package/vendor/rocksdb/db_stress_tool/cf_consistency_stress.cc +892 -0
  387. package/vendor/rocksdb/db_stress_tool/db_stress.cc +25 -0
  388. package/vendor/rocksdb/db_stress_tool/db_stress_common.cc +491 -0
  389. package/vendor/rocksdb/db_stress_tool/db_stress_common.h +674 -0
  390. package/vendor/rocksdb/db_stress_tool/db_stress_compaction_filter.h +96 -0
  391. package/vendor/rocksdb/db_stress_tool/db_stress_driver.cc +216 -0
  392. package/vendor/rocksdb/db_stress_tool/db_stress_driver.h +18 -0
  393. package/vendor/rocksdb/db_stress_tool/db_stress_env_wrapper.h +78 -0
  394. package/vendor/rocksdb/db_stress_tool/db_stress_gflags.cc +1094 -0
  395. package/vendor/rocksdb/db_stress_tool/db_stress_listener.cc +189 -0
  396. package/vendor/rocksdb/db_stress_tool/db_stress_listener.h +269 -0
  397. package/vendor/rocksdb/db_stress_tool/db_stress_shared_state.cc +17 -0
  398. package/vendor/rocksdb/db_stress_tool/db_stress_shared_state.h +437 -0
  399. package/vendor/rocksdb/db_stress_tool/db_stress_stat.cc +17 -0
  400. package/vendor/rocksdb/db_stress_tool/db_stress_stat.h +219 -0
  401. package/vendor/rocksdb/db_stress_tool/db_stress_table_properties_collector.h +65 -0
  402. package/vendor/rocksdb/db_stress_tool/db_stress_test_base.cc +3294 -0
  403. package/vendor/rocksdb/db_stress_tool/db_stress_test_base.h +327 -0
  404. package/vendor/rocksdb/db_stress_tool/db_stress_tool.cc +371 -0
  405. package/vendor/rocksdb/db_stress_tool/expected_state.cc +780 -0
  406. package/vendor/rocksdb/db_stress_tool/expected_state.h +329 -0
  407. package/vendor/rocksdb/db_stress_tool/expected_value.cc +122 -0
  408. package/vendor/rocksdb/db_stress_tool/expected_value.h +206 -0
  409. package/vendor/rocksdb/db_stress_tool/multi_ops_txns_stress.cc +1761 -0
  410. package/vendor/rocksdb/db_stress_tool/multi_ops_txns_stress.h +446 -0
  411. package/vendor/rocksdb/db_stress_tool/no_batched_ops_stress.cc +1906 -0
  412. package/vendor/rocksdb/docs/CNAME +1 -0
  413. package/vendor/rocksdb/docs/CONTRIBUTING.md +115 -0
  414. package/vendor/rocksdb/docs/Gemfile +4 -0
  415. package/vendor/rocksdb/docs/LICENSE-DOCUMENTATION +385 -0
  416. package/vendor/rocksdb/docs/README.md +80 -0
  417. package/vendor/rocksdb/docs/TEMPLATE-INFORMATION.md +17 -0
  418. package/vendor/rocksdb/docs/_config.yml +85 -0
  419. package/vendor/rocksdb/docs/_data/authors.yml +81 -0
  420. package/vendor/rocksdb/docs/_data/features.yml +19 -0
  421. package/vendor/rocksdb/docs/_data/nav.yml +30 -0
  422. package/vendor/rocksdb/docs/_data/nav_docs.yml +3 -0
  423. package/vendor/rocksdb/docs/_data/powered_by.yml +1 -0
  424. package/vendor/rocksdb/docs/_data/powered_by_highlight.yml +1 -0
  425. package/vendor/rocksdb/docs/_data/promo.yml +6 -0
  426. package/vendor/rocksdb/docs/_docs/faq.md +48 -0
  427. package/vendor/rocksdb/docs/_docs/getting-started.md +78 -0
  428. package/vendor/rocksdb/docs/_includes/blog_pagination.html +28 -0
  429. package/vendor/rocksdb/docs/_includes/content/gridblocks.html +5 -0
  430. package/vendor/rocksdb/docs/_includes/content/items/gridblock.html +37 -0
  431. package/vendor/rocksdb/docs/_includes/doc.html +25 -0
  432. package/vendor/rocksdb/docs/_includes/doc_paging.html +0 -0
  433. package/vendor/rocksdb/docs/_includes/footer.html +34 -0
  434. package/vendor/rocksdb/docs/_includes/head.html +23 -0
  435. package/vendor/rocksdb/docs/_includes/header.html +19 -0
  436. package/vendor/rocksdb/docs/_includes/hero.html +0 -0
  437. package/vendor/rocksdb/docs/_includes/home_header.html +22 -0
  438. package/vendor/rocksdb/docs/_includes/katex_import.html +3 -0
  439. package/vendor/rocksdb/docs/_includes/katex_render.html +210 -0
  440. package/vendor/rocksdb/docs/_includes/nav/collection_nav.html +64 -0
  441. package/vendor/rocksdb/docs/_includes/nav/collection_nav_group.html +19 -0
  442. package/vendor/rocksdb/docs/_includes/nav/collection_nav_group_item.html +1 -0
  443. package/vendor/rocksdb/docs/_includes/nav/header_nav.html +30 -0
  444. package/vendor/rocksdb/docs/_includes/nav.html +37 -0
  445. package/vendor/rocksdb/docs/_includes/nav_search.html +15 -0
  446. package/vendor/rocksdb/docs/_includes/plugins/all_share.html +3 -0
  447. package/vendor/rocksdb/docs/_includes/plugins/ascii_cinema.html +2 -0
  448. package/vendor/rocksdb/docs/_includes/plugins/button.html +6 -0
  449. package/vendor/rocksdb/docs/_includes/plugins/github_star.html +4 -0
  450. package/vendor/rocksdb/docs/_includes/plugins/github_watch.html +4 -0
  451. package/vendor/rocksdb/docs/_includes/plugins/google_share.html +5 -0
  452. package/vendor/rocksdb/docs/_includes/plugins/iframe.html +6 -0
  453. package/vendor/rocksdb/docs/_includes/plugins/like_button.html +18 -0
  454. package/vendor/rocksdb/docs/_includes/plugins/plugin_row.html +5 -0
  455. package/vendor/rocksdb/docs/_includes/plugins/post_social_plugins.html +41 -0
  456. package/vendor/rocksdb/docs/_includes/plugins/slideshow.html +88 -0
  457. package/vendor/rocksdb/docs/_includes/plugins/twitter_follow.html +12 -0
  458. package/vendor/rocksdb/docs/_includes/plugins/twitter_share.html +11 -0
  459. package/vendor/rocksdb/docs/_includes/post.html +40 -0
  460. package/vendor/rocksdb/docs/_includes/powered_by.html +28 -0
  461. package/vendor/rocksdb/docs/_includes/social_plugins.html +31 -0
  462. package/vendor/rocksdb/docs/_includes/ui/button.html +1 -0
  463. package/vendor/rocksdb/docs/_layouts/basic.html +12 -0
  464. package/vendor/rocksdb/docs/_layouts/blog.html +11 -0
  465. package/vendor/rocksdb/docs/_layouts/blog_default.html +14 -0
  466. package/vendor/rocksdb/docs/_layouts/default.html +12 -0
  467. package/vendor/rocksdb/docs/_layouts/doc_default.html +14 -0
  468. package/vendor/rocksdb/docs/_layouts/doc_page.html +10 -0
  469. package/vendor/rocksdb/docs/_layouts/docs.html +5 -0
  470. package/vendor/rocksdb/docs/_layouts/home.html +26 -0
  471. package/vendor/rocksdb/docs/_layouts/page.html +3 -0
  472. package/vendor/rocksdb/docs/_layouts/plain.html +10 -0
  473. package/vendor/rocksdb/docs/_layouts/post.html +8 -0
  474. package/vendor/rocksdb/docs/_layouts/redirect.html +6 -0
  475. package/vendor/rocksdb/docs/_layouts/top-level.html +10 -0
  476. package/vendor/rocksdb/docs/_posts/2014-03-27-how-to-backup-rocksdb.markdown +135 -0
  477. package/vendor/rocksdb/docs/_posts/2014-03-27-how-to-persist-in-memory-rocksdb-database.markdown +54 -0
  478. package/vendor/rocksdb/docs/_posts/2014-04-02-the-1st-rocksdb-local-meetup-held-on-march-27-2014.markdown +53 -0
  479. package/vendor/rocksdb/docs/_posts/2014-04-07-rocksdb-2-8-release.markdown +40 -0
  480. package/vendor/rocksdb/docs/_posts/2014-04-21-indexing-sst-files-for-better-lookup-performance.markdown +28 -0
  481. package/vendor/rocksdb/docs/_posts/2014-05-14-lock.markdown +88 -0
  482. package/vendor/rocksdb/docs/_posts/2014-05-19-rocksdb-3-0-release.markdown +24 -0
  483. package/vendor/rocksdb/docs/_posts/2014-05-22-rocksdb-3-1-release.markdown +20 -0
  484. package/vendor/rocksdb/docs/_posts/2014-06-23-plaintable-a-new-file-format.markdown +47 -0
  485. package/vendor/rocksdb/docs/_posts/2014-06-27-avoid-expensive-locks-in-get.markdown +89 -0
  486. package/vendor/rocksdb/docs/_posts/2014-06-27-rocksdb-3-2-release.markdown +30 -0
  487. package/vendor/rocksdb/docs/_posts/2014-07-29-rocksdb-3-3-release.markdown +34 -0
  488. package/vendor/rocksdb/docs/_posts/2014-09-12-cuckoo.markdown +74 -0
  489. package/vendor/rocksdb/docs/_posts/2014-09-12-new-bloom-filter-format.markdown +52 -0
  490. package/vendor/rocksdb/docs/_posts/2014-09-15-rocksdb-3-5-release.markdown +38 -0
  491. package/vendor/rocksdb/docs/_posts/2015-01-16-migrating-from-leveldb-to-rocksdb-2.markdown +112 -0
  492. package/vendor/rocksdb/docs/_posts/2015-02-24-reading-rocksdb-options-from-a-file.markdown +41 -0
  493. package/vendor/rocksdb/docs/_posts/2015-02-27-write-batch-with-index.markdown +20 -0
  494. package/vendor/rocksdb/docs/_posts/2015-04-22-integrating-rocksdb-with-mongodb-2.markdown +16 -0
  495. package/vendor/rocksdb/docs/_posts/2015-06-12-rocksdb-in-osquery.markdown +10 -0
  496. package/vendor/rocksdb/docs/_posts/2015-07-15-rocksdb-2015-h2-roadmap.markdown +92 -0
  497. package/vendor/rocksdb/docs/_posts/2015-07-17-spatial-indexing-in-rocksdb.markdown +78 -0
  498. package/vendor/rocksdb/docs/_posts/2015-07-22-rocksdb-is-now-available-in-windows-platform.markdown +30 -0
  499. package/vendor/rocksdb/docs/_posts/2015-07-23-dynamic-level.markdown +29 -0
  500. package/vendor/rocksdb/docs/_posts/2015-10-27-getthreadlist.markdown +193 -0
  501. package/vendor/rocksdb/docs/_posts/2015-11-10-use-checkpoints-for-efficient-snapshots.markdown +45 -0
  502. package/vendor/rocksdb/docs/_posts/2015-11-16-analysis-file-read-latency-by-level.markdown +244 -0
  503. package/vendor/rocksdb/docs/_posts/2016-01-29-compaction_pri.markdown +51 -0
  504. package/vendor/rocksdb/docs/_posts/2016-02-24-rocksdb-4-2-release.markdown +41 -0
  505. package/vendor/rocksdb/docs/_posts/2016-02-25-rocksdb-ama.markdown +20 -0
  506. package/vendor/rocksdb/docs/_posts/2016-03-07-rocksdb-options-file.markdown +24 -0
  507. package/vendor/rocksdb/docs/_posts/2016-04-26-rocksdb-4-5-1-released.markdown +60 -0
  508. package/vendor/rocksdb/docs/_posts/2016-07-26-rocksdb-4-8-released.markdown +48 -0
  509. package/vendor/rocksdb/docs/_posts/2016-09-28-rocksdb-4-11-2-released.markdown +49 -0
  510. package/vendor/rocksdb/docs/_posts/2017-01-06-rocksdb-5-0-1-released.markdown +26 -0
  511. package/vendor/rocksdb/docs/_posts/2017-02-07-rocksdb-5-1-2-released.markdown +15 -0
  512. package/vendor/rocksdb/docs/_posts/2017-02-17-bulkoad-ingest-sst-file.markdown +50 -0
  513. package/vendor/rocksdb/docs/_posts/2017-03-02-rocksdb-5-2-1-released.markdown +22 -0
  514. package/vendor/rocksdb/docs/_posts/2017-05-12-partitioned-index-filter.markdown +34 -0
  515. package/vendor/rocksdb/docs/_posts/2017-05-14-core-local-stats.markdown +106 -0
  516. package/vendor/rocksdb/docs/_posts/2017-05-26-rocksdb-5-4-5-released.markdown +39 -0
  517. package/vendor/rocksdb/docs/_posts/2017-06-26-17-level-based-changes.markdown +60 -0
  518. package/vendor/rocksdb/docs/_posts/2017-06-29-rocksdb-5-5-1-released.markdown +22 -0
  519. package/vendor/rocksdb/docs/_posts/2017-07-25-rocksdb-5-6-1-released.markdown +22 -0
  520. package/vendor/rocksdb/docs/_posts/2017-08-24-pinnableslice.markdown +37 -0
  521. package/vendor/rocksdb/docs/_posts/2017-08-25-flushwal.markdown +26 -0
  522. package/vendor/rocksdb/docs/_posts/2017-09-28-rocksdb-5-8-released.markdown +25 -0
  523. package/vendor/rocksdb/docs/_posts/2017-12-18-17-auto-tuned-rate-limiter.markdown +28 -0
  524. package/vendor/rocksdb/docs/_posts/2017-12-19-write-prepared-txn.markdown +41 -0
  525. package/vendor/rocksdb/docs/_posts/2018-02-05-rocksdb-5-10-2-released.markdown +22 -0
  526. package/vendor/rocksdb/docs/_posts/2018-08-01-rocksdb-tuning-advisor.markdown +58 -0
  527. package/vendor/rocksdb/docs/_posts/2018-08-23-data-block-hash-index.markdown +118 -0
  528. package/vendor/rocksdb/docs/_posts/2018-11-21-delete-range.markdown +292 -0
  529. package/vendor/rocksdb/docs/_posts/2019-03-08-format-version-4.markdown +36 -0
  530. package/vendor/rocksdb/docs/_posts/2019-08-15-unordered-write.markdown +56 -0
  531. package/vendor/rocksdb/docs/_posts/2021-04-12-universal-improvements.markdown +46 -0
  532. package/vendor/rocksdb/docs/_posts/2021-05-26-integrated-blob-db.markdown +101 -0
  533. package/vendor/rocksdb/docs/_posts/2021-05-26-online-validation.markdown +17 -0
  534. package/vendor/rocksdb/docs/_posts/2021-05-27-rocksdb-secondary-cache.markdown +195 -0
  535. package/vendor/rocksdb/docs/_posts/2021-05-31-dictionary-compression.markdown +157 -0
  536. package/vendor/rocksdb/docs/_posts/2021-12-29-ribbon-filter.markdown +281 -0
  537. package/vendor/rocksdb/docs/_posts/2022-07-18-per-key-value-checksum.markdown +142 -0
  538. package/vendor/rocksdb/docs/_posts/2022-10-05-lost-buffered-write-recovery.markdown +123 -0
  539. package/vendor/rocksdb/docs/_posts/2022-10-07-asynchronous-io-in-rocksdb.markdown +133 -0
  540. package/vendor/rocksdb/docs/_posts/2022-10-31-align-compaction-output-file.markdown +107 -0
  541. package/vendor/rocksdb/docs/_posts/2022-11-09-time-aware-tiered-storage.markdown +121 -0
  542. package/vendor/rocksdb/docs/_sass/_base.scss +492 -0
  543. package/vendor/rocksdb/docs/_sass/_blog.scss +47 -0
  544. package/vendor/rocksdb/docs/_sass/_buttons.scss +47 -0
  545. package/vendor/rocksdb/docs/_sass/_footer.scss +82 -0
  546. package/vendor/rocksdb/docs/_sass/_gridBlock.scss +115 -0
  547. package/vendor/rocksdb/docs/_sass/_header.scss +139 -0
  548. package/vendor/rocksdb/docs/_sass/_poweredby.scss +69 -0
  549. package/vendor/rocksdb/docs/_sass/_promo.scss +55 -0
  550. package/vendor/rocksdb/docs/_sass/_react_docs_nav.scss +332 -0
  551. package/vendor/rocksdb/docs/_sass/_react_header_nav.scss +141 -0
  552. package/vendor/rocksdb/docs/_sass/_reset.scss +43 -0
  553. package/vendor/rocksdb/docs/_sass/_search.scss +142 -0
  554. package/vendor/rocksdb/docs/_sass/_slideshow.scss +48 -0
  555. package/vendor/rocksdb/docs/_sass/_syntax-highlighting.scss +129 -0
  556. package/vendor/rocksdb/docs/_sass/_tables.scss +47 -0
  557. package/vendor/rocksdb/docs/_top-level/support.md +22 -0
  558. package/vendor/rocksdb/docs/blog/all.html +20 -0
  559. package/vendor/rocksdb/docs/blog/index.html +12 -0
  560. package/vendor/rocksdb/docs/css/main.scss +159 -0
  561. package/vendor/rocksdb/docs/doc-type-examples/2016-04-07-blog-post-example.md +21 -0
  562. package/vendor/rocksdb/docs/doc-type-examples/docs-hello-world.md +12 -0
  563. package/vendor/rocksdb/docs/doc-type-examples/top-level-example.md +8 -0
  564. package/vendor/rocksdb/docs/docs/index.html +6 -0
  565. package/vendor/rocksdb/docs/feed.xml +30 -0
  566. package/vendor/rocksdb/docs/index.md +9 -0
  567. package/vendor/rocksdb/docs/static/favicon.png +0 -0
  568. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Black.woff +0 -0
  569. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Black.woff2 +0 -0
  570. package/vendor/rocksdb/docs/static/fonts/LatoLatin-BlackItalic.woff +0 -0
  571. package/vendor/rocksdb/docs/static/fonts/LatoLatin-BlackItalic.woff2 +0 -0
  572. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Italic.woff +0 -0
  573. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Italic.woff2 +0 -0
  574. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Light.woff +0 -0
  575. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Light.woff2 +0 -0
  576. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Regular.woff +0 -0
  577. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Regular.woff2 +0 -0
  578. package/vendor/rocksdb/docs/static/images/Resize-of-20140327_200754-300x225.jpg +0 -0
  579. package/vendor/rocksdb/docs/static/images/align-compaction-output/compaction_output_file_size_compare.png +0 -0
  580. package/vendor/rocksdb/docs/static/images/align-compaction-output/file_cut_align.png +0 -0
  581. package/vendor/rocksdb/docs/static/images/align-compaction-output/file_cut_normal.png +0 -0
  582. package/vendor/rocksdb/docs/static/images/align-compaction-output/file_cut_trival_move.png +0 -0
  583. package/vendor/rocksdb/docs/static/images/align-compaction-output/file_size_compare.png +0 -0
  584. package/vendor/rocksdb/docs/static/images/align-compaction-output/write_amp_compare.png +0 -0
  585. package/vendor/rocksdb/docs/static/images/asynchronous-io/mget_async.png +0 -0
  586. package/vendor/rocksdb/docs/static/images/asynchronous-io/scan_async.png +0 -0
  587. package/vendor/rocksdb/docs/static/images/binaryseek.png +0 -0
  588. package/vendor/rocksdb/docs/static/images/bloom_fp_vs_bpk.png +0 -0
  589. package/vendor/rocksdb/docs/static/images/compaction/full-range.png +0 -0
  590. package/vendor/rocksdb/docs/static/images/compaction/l0-l1-contend.png +0 -0
  591. package/vendor/rocksdb/docs/static/images/compaction/l1-l2-contend.png +0 -0
  592. package/vendor/rocksdb/docs/static/images/compaction/part-range-old.png +0 -0
  593. package/vendor/rocksdb/docs/static/images/data-block-hash-index/block-format-binary-seek.png +0 -0
  594. package/vendor/rocksdb/docs/static/images/data-block-hash-index/block-format-hash-index.png +0 -0
  595. package/vendor/rocksdb/docs/static/images/data-block-hash-index/hash-index-data-structure.png +0 -0
  596. package/vendor/rocksdb/docs/static/images/data-block-hash-index/perf-cache-miss.png +0 -0
  597. package/vendor/rocksdb/docs/static/images/data-block-hash-index/perf-throughput.png +0 -0
  598. package/vendor/rocksdb/docs/static/images/delrange/delrange_collapsed.png +0 -0
  599. package/vendor/rocksdb/docs/static/images/delrange/delrange_key_schema.png +0 -0
  600. package/vendor/rocksdb/docs/static/images/delrange/delrange_sst_blocks.png +0 -0
  601. package/vendor/rocksdb/docs/static/images/delrange/delrange_uncollapsed.png +0 -0
  602. package/vendor/rocksdb/docs/static/images/delrange/delrange_write_path.png +0 -0
  603. package/vendor/rocksdb/docs/static/images/dictcmp/dictcmp_raw_sampled.png +0 -0
  604. package/vendor/rocksdb/docs/static/images/dictcmp/dictcmp_sst_blocks.png +0 -0
  605. package/vendor/rocksdb/docs/static/images/dictcmp/dictcmp_zstd_trained.png +0 -0
  606. package/vendor/rocksdb/docs/static/images/integrated-blob-db/BlobDB_Benchmarks_Legacy_Vs_Integrated.png +0 -0
  607. package/vendor/rocksdb/docs/static/images/integrated-blob-db/BlobDB_Benchmarks_RW_RO_Perf.png +0 -0
  608. package/vendor/rocksdb/docs/static/images/integrated-blob-db/BlobDB_Benchmarks_Write_Amp.png +0 -0
  609. package/vendor/rocksdb/docs/static/images/integrated-blob-db/BlobDB_Benchmarks_Write_Perf.png +0 -0
  610. package/vendor/rocksdb/docs/static/images/kv-checksum/Memtable-entry.png +0 -0
  611. package/vendor/rocksdb/docs/static/images/kv-checksum/Memtable-write.png +0 -0
  612. package/vendor/rocksdb/docs/static/images/kv-checksum/ProtInfo-Memtable.png +0 -0
  613. package/vendor/rocksdb/docs/static/images/kv-checksum/ProtInfo-Writebatch-to-Memtable.png +0 -0
  614. package/vendor/rocksdb/docs/static/images/kv-checksum/ProtInfo-Writebatch.png +0 -0
  615. package/vendor/rocksdb/docs/static/images/kv-checksum/WAL-fragment.png +0 -0
  616. package/vendor/rocksdb/docs/static/images/kv-checksum/WAL-read.png +0 -0
  617. package/vendor/rocksdb/docs/static/images/kv-checksum/WAL-write.png +0 -0
  618. package/vendor/rocksdb/docs/static/images/kv-checksum/Write-batch.png +0 -0
  619. package/vendor/rocksdb/docs/static/images/kv-checksum/Writebatch-write.png +0 -0
  620. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/angry-cat.png +0 -0
  621. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/basic-setup.png +0 -0
  622. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/happy-cat.png +0 -0
  623. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/replay-extension.png +0 -0
  624. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/test-fs-writable-file.png +0 -0
  625. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/trace-extension.png +0 -0
  626. package/vendor/rocksdb/docs/static/images/pcache-blockindex.jpg +0 -0
  627. package/vendor/rocksdb/docs/static/images/pcache-fileindex.jpg +0 -0
  628. package/vendor/rocksdb/docs/static/images/pcache-filelayout.jpg +0 -0
  629. package/vendor/rocksdb/docs/static/images/pcache-readiopath.jpg +0 -0
  630. package/vendor/rocksdb/docs/static/images/pcache-tieredstorage.jpg +0 -0
  631. package/vendor/rocksdb/docs/static/images/pcache-writeiopath.jpg +0 -0
  632. package/vendor/rocksdb/docs/static/images/promo-adapt.svg +8 -0
  633. package/vendor/rocksdb/docs/static/images/promo-flash.svg +28 -0
  634. package/vendor/rocksdb/docs/static/images/promo-operations.svg +6 -0
  635. package/vendor/rocksdb/docs/static/images/promo-performance.svg +134 -0
  636. package/vendor/rocksdb/docs/static/images/rate-limiter/auto-tuned-write-KBps-series.png +0 -0
  637. package/vendor/rocksdb/docs/static/images/rate-limiter/write-KBps-cdf.png +0 -0
  638. package/vendor/rocksdb/docs/static/images/rate-limiter/write-KBps-series.png +0 -0
  639. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/Mixgraph_hit_rate.png +0 -0
  640. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/Mixgraph_throughput.png +0 -0
  641. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/arch_diagram.png +0 -0
  642. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/insert_flow.png +0 -0
  643. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/lookup_flow.png +0 -0
  644. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/compaction_moving_up_conflict.png +0 -0
  645. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/per_key_placement_compaction.png +0 -0
  646. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/tiered_storage_design.png +0 -0
  647. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/tiered_storage_overview.png +0 -0
  648. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/tiered_storage_problem.png +0 -0
  649. package/vendor/rocksdb/docs/static/images/tree_example1.png +0 -0
  650. package/vendor/rocksdb/docs/static/logo.svg +76 -0
  651. package/vendor/rocksdb/docs/static/og_image.png +0 -0
  652. package/vendor/rocksdb/env/composite_env.cc +534 -0
  653. package/vendor/rocksdb/env/composite_env_wrapper.h +378 -0
  654. package/vendor/rocksdb/env/emulated_clock.h +114 -0
  655. package/vendor/rocksdb/env/env.cc +1233 -0
  656. package/vendor/rocksdb/env/env_basic_test.cc +397 -0
  657. package/vendor/rocksdb/env/env_chroot.cc +148 -0
  658. package/vendor/rocksdb/env/env_chroot.h +55 -0
  659. package/vendor/rocksdb/env/env_encryption.cc +1346 -0
  660. package/vendor/rocksdb/env/env_encryption_ctr.h +114 -0
  661. package/vendor/rocksdb/env/env_posix.cc +524 -0
  662. package/vendor/rocksdb/env/env_test.cc +3577 -0
  663. package/vendor/rocksdb/env/file_system.cc +277 -0
  664. package/vendor/rocksdb/env/file_system_tracer.cc +564 -0
  665. package/vendor/rocksdb/env/file_system_tracer.h +461 -0
  666. package/vendor/rocksdb/env/fs_posix.cc +1284 -0
  667. package/vendor/rocksdb/env/fs_readonly.h +105 -0
  668. package/vendor/rocksdb/env/fs_remap.cc +341 -0
  669. package/vendor/rocksdb/env/fs_remap.h +137 -0
  670. package/vendor/rocksdb/env/io_posix.cc +1733 -0
  671. package/vendor/rocksdb/env/io_posix.h +523 -0
  672. package/vendor/rocksdb/env/io_posix_test.cc +141 -0
  673. package/vendor/rocksdb/env/mock_env.cc +1058 -0
  674. package/vendor/rocksdb/env/mock_env.h +144 -0
  675. package/vendor/rocksdb/env/mock_env_test.cc +84 -0
  676. package/vendor/rocksdb/env/unique_id_gen.cc +164 -0
  677. package/vendor/rocksdb/env/unique_id_gen.h +85 -0
  678. package/vendor/rocksdb/examples/CMakeLists.txt +45 -0
  679. package/vendor/rocksdb/examples/Makefile +58 -0
  680. package/vendor/rocksdb/examples/README.md +2 -0
  681. package/vendor/rocksdb/examples/c_simple_example.c +96 -0
  682. package/vendor/rocksdb/examples/column_families_example.cc +88 -0
  683. package/vendor/rocksdb/examples/compact_files_example.cc +177 -0
  684. package/vendor/rocksdb/examples/compaction_filter_example.cc +96 -0
  685. package/vendor/rocksdb/examples/multi_processes_example.cc +393 -0
  686. package/vendor/rocksdb/examples/optimistic_transaction_example.cc +190 -0
  687. package/vendor/rocksdb/examples/options_file_example.cc +132 -0
  688. package/vendor/rocksdb/examples/rocksdb_backup_restore_example.cc +99 -0
  689. package/vendor/rocksdb/examples/rocksdb_option_file_example.ini +142 -0
  690. package/vendor/rocksdb/examples/simple_example.cc +93 -0
  691. package/vendor/rocksdb/examples/transaction_example.cc +196 -0
  692. package/vendor/rocksdb/file/delete_scheduler.cc +409 -0
  693. package/vendor/rocksdb/file/delete_scheduler.h +147 -0
  694. package/vendor/rocksdb/file/delete_scheduler_test.cc +717 -0
  695. package/vendor/rocksdb/file/file_prefetch_buffer.cc +955 -0
  696. package/vendor/rocksdb/file/file_prefetch_buffer.h +471 -0
  697. package/vendor/rocksdb/file/file_util.cc +277 -0
  698. package/vendor/rocksdb/file/file_util.h +91 -0
  699. package/vendor/rocksdb/file/filename.cc +523 -0
  700. package/vendor/rocksdb/file/filename.h +188 -0
  701. package/vendor/rocksdb/file/line_file_reader.cc +73 -0
  702. package/vendor/rocksdb/file/line_file_reader.h +60 -0
  703. package/vendor/rocksdb/file/prefetch_test.cc +2374 -0
  704. package/vendor/rocksdb/file/random_access_file_reader.cc +599 -0
  705. package/vendor/rocksdb/file/random_access_file_reader.h +210 -0
  706. package/vendor/rocksdb/file/random_access_file_reader_test.cc +479 -0
  707. package/vendor/rocksdb/file/read_write_util.cc +33 -0
  708. package/vendor/rocksdb/file/read_write_util.h +31 -0
  709. package/vendor/rocksdb/file/readahead_file_info.h +33 -0
  710. package/vendor/rocksdb/file/readahead_raf.cc +169 -0
  711. package/vendor/rocksdb/file/readahead_raf.h +29 -0
  712. package/vendor/rocksdb/file/sequence_file_reader.cc +320 -0
  713. package/vendor/rocksdb/file/sequence_file_reader.h +119 -0
  714. package/vendor/rocksdb/file/sst_file_manager_impl.cc +507 -0
  715. package/vendor/rocksdb/file/sst_file_manager_impl.h +193 -0
  716. package/vendor/rocksdb/file/writable_file_writer.cc +989 -0
  717. package/vendor/rocksdb/file/writable_file_writer.h +320 -0
  718. package/vendor/rocksdb/fuzz/Makefile +67 -0
  719. package/vendor/rocksdb/fuzz/README.md +165 -0
  720. package/vendor/rocksdb/fuzz/db_fuzzer.cc +172 -0
  721. package/vendor/rocksdb/fuzz/db_map_fuzzer.cc +107 -0
  722. package/vendor/rocksdb/fuzz/proto/db_operation.proto +28 -0
  723. package/vendor/rocksdb/fuzz/sst_file_writer_fuzzer.cc +210 -0
  724. package/vendor/rocksdb/fuzz/util.h +29 -0
  725. package/vendor/rocksdb/include/rocksdb/advanced_cache.h +623 -0
  726. package/vendor/rocksdb/include/rocksdb/advanced_options.h +1177 -0
  727. package/vendor/rocksdb/include/rocksdb/block_cache_trace_writer.h +149 -0
  728. package/vendor/rocksdb/include/rocksdb/c.h +2864 -0
  729. package/vendor/rocksdb/include/rocksdb/cache.h +442 -0
  730. package/vendor/rocksdb/include/rocksdb/cache_bench_tool.h +14 -0
  731. package/vendor/rocksdb/include/rocksdb/cleanable.h +128 -0
  732. package/vendor/rocksdb/include/rocksdb/compaction_filter.h +363 -0
  733. package/vendor/rocksdb/include/rocksdb/compaction_job_stats.h +109 -0
  734. package/vendor/rocksdb/include/rocksdb/comparator.h +164 -0
  735. package/vendor/rocksdb/include/rocksdb/compression_type.h +40 -0
  736. package/vendor/rocksdb/include/rocksdb/concurrent_task_limiter.h +51 -0
  737. package/vendor/rocksdb/include/rocksdb/configurable.h +390 -0
  738. package/vendor/rocksdb/include/rocksdb/convenience.h +466 -0
  739. package/vendor/rocksdb/include/rocksdb/customizable.h +229 -0
  740. package/vendor/rocksdb/include/rocksdb/data_structure.h +186 -0
  741. package/vendor/rocksdb/include/rocksdb/db.h +1980 -0
  742. package/vendor/rocksdb/include/rocksdb/db_bench_tool.h +11 -0
  743. package/vendor/rocksdb/include/rocksdb/db_dump_tool.h +43 -0
  744. package/vendor/rocksdb/include/rocksdb/db_stress_tool.h +11 -0
  745. package/vendor/rocksdb/include/rocksdb/env.h +1882 -0
  746. package/vendor/rocksdb/include/rocksdb/env_encryption.h +463 -0
  747. package/vendor/rocksdb/include/rocksdb/experimental.h +56 -0
  748. package/vendor/rocksdb/include/rocksdb/file_checksum.h +146 -0
  749. package/vendor/rocksdb/include/rocksdb/file_system.h +1849 -0
  750. package/vendor/rocksdb/include/rocksdb/filter_policy.h +206 -0
  751. package/vendor/rocksdb/include/rocksdb/flush_block_policy.h +75 -0
  752. package/vendor/rocksdb/include/rocksdb/functor_wrapper.h +56 -0
  753. package/vendor/rocksdb/include/rocksdb/io_status.h +244 -0
  754. package/vendor/rocksdb/include/rocksdb/iostats_context.h +98 -0
  755. package/vendor/rocksdb/include/rocksdb/iterator.h +144 -0
  756. package/vendor/rocksdb/include/rocksdb/ldb_tool.h +42 -0
  757. package/vendor/rocksdb/include/rocksdb/listener.h +840 -0
  758. package/vendor/rocksdb/include/rocksdb/memory_allocator.h +87 -0
  759. package/vendor/rocksdb/include/rocksdb/memtablerep.h +421 -0
  760. package/vendor/rocksdb/include/rocksdb/merge_operator.h +286 -0
  761. package/vendor/rocksdb/include/rocksdb/metadata.h +258 -0
  762. package/vendor/rocksdb/include/rocksdb/options.h +2083 -0
  763. package/vendor/rocksdb/include/rocksdb/perf_context.h +314 -0
  764. package/vendor/rocksdb/include/rocksdb/perf_level.h +36 -0
  765. package/vendor/rocksdb/include/rocksdb/persistent_cache.h +74 -0
  766. package/vendor/rocksdb/include/rocksdb/port_defs.h +22 -0
  767. package/vendor/rocksdb/include/rocksdb/rate_limiter.h +159 -0
  768. package/vendor/rocksdb/include/rocksdb/rocksdb_namespace.h +16 -0
  769. package/vendor/rocksdb/include/rocksdb/secondary_cache.h +139 -0
  770. package/vendor/rocksdb/include/rocksdb/slice.h +264 -0
  771. package/vendor/rocksdb/include/rocksdb/slice_transform.h +135 -0
  772. package/vendor/rocksdb/include/rocksdb/snapshot.h +53 -0
  773. package/vendor/rocksdb/include/rocksdb/sst_dump_tool.h +17 -0
  774. package/vendor/rocksdb/include/rocksdb/sst_file_manager.h +136 -0
  775. package/vendor/rocksdb/include/rocksdb/sst_file_reader.h +45 -0
  776. package/vendor/rocksdb/include/rocksdb/sst_file_writer.h +189 -0
  777. package/vendor/rocksdb/include/rocksdb/sst_partitioner.h +142 -0
  778. package/vendor/rocksdb/include/rocksdb/statistics.h +757 -0
  779. package/vendor/rocksdb/include/rocksdb/stats_history.h +70 -0
  780. package/vendor/rocksdb/include/rocksdb/status.h +574 -0
  781. package/vendor/rocksdb/include/rocksdb/system_clock.h +114 -0
  782. package/vendor/rocksdb/include/rocksdb/table.h +927 -0
  783. package/vendor/rocksdb/include/rocksdb/table_properties.h +332 -0
  784. package/vendor/rocksdb/include/rocksdb/table_reader_caller.h +41 -0
  785. package/vendor/rocksdb/include/rocksdb/thread_status.h +190 -0
  786. package/vendor/rocksdb/include/rocksdb/threadpool.h +67 -0
  787. package/vendor/rocksdb/include/rocksdb/trace_reader_writer.h +52 -0
  788. package/vendor/rocksdb/include/rocksdb/trace_record.h +248 -0
  789. package/vendor/rocksdb/include/rocksdb/trace_record_result.h +187 -0
  790. package/vendor/rocksdb/include/rocksdb/transaction_log.h +122 -0
  791. package/vendor/rocksdb/include/rocksdb/types.h +94 -0
  792. package/vendor/rocksdb/include/rocksdb/unique_id.h +55 -0
  793. package/vendor/rocksdb/include/rocksdb/universal_compaction.h +96 -0
  794. package/vendor/rocksdb/include/rocksdb/utilities/agg_merge.h +138 -0
  795. package/vendor/rocksdb/include/rocksdb/utilities/backup_engine.h +689 -0
  796. package/vendor/rocksdb/include/rocksdb/utilities/cache_dump_load.h +140 -0
  797. package/vendor/rocksdb/include/rocksdb/utilities/checkpoint.h +63 -0
  798. package/vendor/rocksdb/include/rocksdb/utilities/convenience.h +10 -0
  799. package/vendor/rocksdb/include/rocksdb/utilities/customizable_util.h +322 -0
  800. package/vendor/rocksdb/include/rocksdb/utilities/db_ttl.h +70 -0
  801. package/vendor/rocksdb/include/rocksdb/utilities/debug.h +46 -0
  802. package/vendor/rocksdb/include/rocksdb/utilities/env_mirror.h +179 -0
  803. package/vendor/rocksdb/include/rocksdb/utilities/info_log_finder.h +19 -0
  804. package/vendor/rocksdb/include/rocksdb/utilities/ldb_cmd.h +316 -0
  805. package/vendor/rocksdb/include/rocksdb/utilities/ldb_cmd_execute_result.h +75 -0
  806. package/vendor/rocksdb/include/rocksdb/utilities/leveldb_options.h +145 -0
  807. package/vendor/rocksdb/include/rocksdb/utilities/lua/rocks_lua_custom_library.h +43 -0
  808. package/vendor/rocksdb/include/rocksdb/utilities/lua/rocks_lua_util.h +55 -0
  809. package/vendor/rocksdb/include/rocksdb/utilities/memory_util.h +48 -0
  810. package/vendor/rocksdb/include/rocksdb/utilities/object_registry.h +583 -0
  811. package/vendor/rocksdb/include/rocksdb/utilities/optimistic_transaction_db.h +98 -0
  812. package/vendor/rocksdb/include/rocksdb/utilities/option_change_migration.h +24 -0
  813. package/vendor/rocksdb/include/rocksdb/utilities/options_type.h +1221 -0
  814. package/vendor/rocksdb/include/rocksdb/utilities/options_util.h +105 -0
  815. package/vendor/rocksdb/include/rocksdb/utilities/replayer.h +85 -0
  816. package/vendor/rocksdb/include/rocksdb/utilities/sim_cache.h +93 -0
  817. package/vendor/rocksdb/include/rocksdb/utilities/stackable_db.h +587 -0
  818. package/vendor/rocksdb/include/rocksdb/utilities/table_properties_collectors.h +88 -0
  819. package/vendor/rocksdb/include/rocksdb/utilities/transaction.h +683 -0
  820. package/vendor/rocksdb/include/rocksdb/utilities/transaction_db.h +506 -0
  821. package/vendor/rocksdb/include/rocksdb/utilities/transaction_db_mutex.h +89 -0
  822. package/vendor/rocksdb/include/rocksdb/utilities/write_batch_with_index.h +307 -0
  823. package/vendor/rocksdb/include/rocksdb/version.h +43 -0
  824. package/vendor/rocksdb/include/rocksdb/wal_filter.h +111 -0
  825. package/vendor/rocksdb/include/rocksdb/wide_columns.h +210 -0
  826. package/vendor/rocksdb/include/rocksdb/write_batch.h +494 -0
  827. package/vendor/rocksdb/include/rocksdb/write_batch_base.h +144 -0
  828. package/vendor/rocksdb/include/rocksdb/write_buffer_manager.h +183 -0
  829. package/vendor/rocksdb/issue_template.md +7 -0
  830. package/vendor/rocksdb/java/CMakeLists.txt +549 -0
  831. package/vendor/rocksdb/java/GetBenchmarks.md +161 -0
  832. package/vendor/rocksdb/java/HISTORY-JAVA.md +86 -0
  833. package/vendor/rocksdb/java/Makefile +453 -0
  834. package/vendor/rocksdb/java/RELEASE.md +59 -0
  835. package/vendor/rocksdb/java/benchmark/src/main/java/org/rocksdb/benchmark/DbBenchmark.java +1640 -0
  836. package/vendor/rocksdb/java/crossbuild/Vagrantfile +51 -0
  837. package/vendor/rocksdb/java/crossbuild/build-linux-alpine.sh +70 -0
  838. package/vendor/rocksdb/java/crossbuild/build-linux-centos.sh +38 -0
  839. package/vendor/rocksdb/java/crossbuild/build-linux.sh +15 -0
  840. package/vendor/rocksdb/java/crossbuild/docker-build-linux-alpine.sh +17 -0
  841. package/vendor/rocksdb/java/crossbuild/docker-build-linux-centos.sh +38 -0
  842. package/vendor/rocksdb/java/jdb_bench.sh +13 -0
  843. package/vendor/rocksdb/java/jmh/LICENSE-HEADER.txt +5 -0
  844. package/vendor/rocksdb/java/jmh/README.md +24 -0
  845. package/vendor/rocksdb/java/jmh/pom.xml +138 -0
  846. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/jmh/ComparatorBenchmarks.java +139 -0
  847. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/jmh/GetBenchmarks.java +215 -0
  848. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/jmh/MultiGetBenchmarks.java +214 -0
  849. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/jmh/PutBenchmarks.java +112 -0
  850. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/util/FileUtils.java +59 -0
  851. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/util/KVUtils.java +72 -0
  852. package/vendor/rocksdb/java/pom.xml.template +178 -0
  853. package/vendor/rocksdb/java/rocksjni/backup_engine_options.cc +365 -0
  854. package/vendor/rocksdb/java/rocksjni/backupenginejni.cc +279 -0
  855. package/vendor/rocksdb/java/rocksjni/cache.cc +34 -0
  856. package/vendor/rocksdb/java/rocksjni/cassandra_compactionfilterjni.cc +25 -0
  857. package/vendor/rocksdb/java/rocksjni/cassandra_value_operator.cc +50 -0
  858. package/vendor/rocksdb/java/rocksjni/checkpoint.cc +71 -0
  859. package/vendor/rocksdb/java/rocksjni/clock_cache.cc +42 -0
  860. package/vendor/rocksdb/java/rocksjni/columnfamilyhandle.cc +72 -0
  861. package/vendor/rocksdb/java/rocksjni/compact_range_options.cc +222 -0
  862. package/vendor/rocksdb/java/rocksjni/compaction_filter.cc +29 -0
  863. package/vendor/rocksdb/java/rocksjni/compaction_filter_factory.cc +42 -0
  864. package/vendor/rocksdb/java/rocksjni/compaction_filter_factory_jnicallback.cc +79 -0
  865. package/vendor/rocksdb/java/rocksjni/compaction_filter_factory_jnicallback.h +37 -0
  866. package/vendor/rocksdb/java/rocksjni/compaction_job_info.cc +230 -0
  867. package/vendor/rocksdb/java/rocksjni/compaction_job_stats.cc +345 -0
  868. package/vendor/rocksdb/java/rocksjni/compaction_options.cc +112 -0
  869. package/vendor/rocksdb/java/rocksjni/compaction_options_fifo.cc +83 -0
  870. package/vendor/rocksdb/java/rocksjni/compaction_options_universal.cc +209 -0
  871. package/vendor/rocksdb/java/rocksjni/comparator.cc +60 -0
  872. package/vendor/rocksdb/java/rocksjni/comparatorjnicallback.cc +647 -0
  873. package/vendor/rocksdb/java/rocksjni/comparatorjnicallback.h +137 -0
  874. package/vendor/rocksdb/java/rocksjni/compression_options.cc +214 -0
  875. package/vendor/rocksdb/java/rocksjni/concurrent_task_limiter.cc +97 -0
  876. package/vendor/rocksdb/java/rocksjni/config_options.cc +103 -0
  877. package/vendor/rocksdb/java/rocksjni/cplusplus_to_java_convert.h +37 -0
  878. package/vendor/rocksdb/java/rocksjni/env.cc +205 -0
  879. package/vendor/rocksdb/java/rocksjni/env_options.cc +305 -0
  880. package/vendor/rocksdb/java/rocksjni/event_listener.cc +44 -0
  881. package/vendor/rocksdb/java/rocksjni/event_listener_jnicallback.cc +502 -0
  882. package/vendor/rocksdb/java/rocksjni/event_listener_jnicallback.h +122 -0
  883. package/vendor/rocksdb/java/rocksjni/filter.cc +46 -0
  884. package/vendor/rocksdb/java/rocksjni/ingest_external_file_options.cc +199 -0
  885. package/vendor/rocksdb/java/rocksjni/iterator.cc +340 -0
  886. package/vendor/rocksdb/java/rocksjni/jnicallback.cc +54 -0
  887. package/vendor/rocksdb/java/rocksjni/jnicallback.h +32 -0
  888. package/vendor/rocksdb/java/rocksjni/loggerjnicallback.cc +299 -0
  889. package/vendor/rocksdb/java/rocksjni/loggerjnicallback.h +51 -0
  890. package/vendor/rocksdb/java/rocksjni/lru_cache.cc +49 -0
  891. package/vendor/rocksdb/java/rocksjni/memory_util.cc +100 -0
  892. package/vendor/rocksdb/java/rocksjni/memtablejni.cc +94 -0
  893. package/vendor/rocksdb/java/rocksjni/merge_operator.cc +98 -0
  894. package/vendor/rocksdb/java/rocksjni/native_comparator_wrapper_test.cc +45 -0
  895. package/vendor/rocksdb/java/rocksjni/optimistic_transaction_db.cc +270 -0
  896. package/vendor/rocksdb/java/rocksjni/optimistic_transaction_options.cc +78 -0
  897. package/vendor/rocksdb/java/rocksjni/options.cc +8695 -0
  898. package/vendor/rocksdb/java/rocksjni/options_util.cc +139 -0
  899. package/vendor/rocksdb/java/rocksjni/persistent_cache.cc +60 -0
  900. package/vendor/rocksdb/java/rocksjni/portal.h +8706 -0
  901. package/vendor/rocksdb/java/rocksjni/ratelimiterjni.cc +128 -0
  902. package/vendor/rocksdb/java/rocksjni/remove_emptyvalue_compactionfilterjni.cc +24 -0
  903. package/vendor/rocksdb/java/rocksjni/restorejni.cc +42 -0
  904. package/vendor/rocksdb/java/rocksjni/rocks_callback_object.cc +30 -0
  905. package/vendor/rocksdb/java/rocksjni/rocksdb_exception_test.cc +81 -0
  906. package/vendor/rocksdb/java/rocksjni/rocksjni.cc +3957 -0
  907. package/vendor/rocksdb/java/rocksjni/slice.cc +374 -0
  908. package/vendor/rocksdb/java/rocksjni/snapshot.cc +27 -0
  909. package/vendor/rocksdb/java/rocksjni/sst_file_manager.cc +250 -0
  910. package/vendor/rocksdb/java/rocksjni/sst_file_reader_iterator.cc +373 -0
  911. package/vendor/rocksdb/java/rocksjni/sst_file_readerjni.cc +118 -0
  912. package/vendor/rocksdb/java/rocksjni/sst_file_writerjni.cc +310 -0
  913. package/vendor/rocksdb/java/rocksjni/sst_partitioner.cc +43 -0
  914. package/vendor/rocksdb/java/rocksjni/statistics.cc +268 -0
  915. package/vendor/rocksdb/java/rocksjni/statisticsjni.cc +31 -0
  916. package/vendor/rocksdb/java/rocksjni/statisticsjni.h +34 -0
  917. package/vendor/rocksdb/java/rocksjni/table.cc +145 -0
  918. package/vendor/rocksdb/java/rocksjni/table_filter.cc +27 -0
  919. package/vendor/rocksdb/java/rocksjni/table_filter_jnicallback.cc +66 -0
  920. package/vendor/rocksdb/java/rocksjni/table_filter_jnicallback.h +36 -0
  921. package/vendor/rocksdb/java/rocksjni/testable_event_listener.cc +219 -0
  922. package/vendor/rocksdb/java/rocksjni/thread_status.cc +125 -0
  923. package/vendor/rocksdb/java/rocksjni/trace_writer.cc +24 -0
  924. package/vendor/rocksdb/java/rocksjni/trace_writer_jnicallback.cc +118 -0
  925. package/vendor/rocksdb/java/rocksjni/trace_writer_jnicallback.h +36 -0
  926. package/vendor/rocksdb/java/rocksjni/transaction.cc +1655 -0
  927. package/vendor/rocksdb/java/rocksjni/transaction_db.cc +451 -0
  928. package/vendor/rocksdb/java/rocksjni/transaction_db_options.cc +169 -0
  929. package/vendor/rocksdb/java/rocksjni/transaction_log.cc +80 -0
  930. package/vendor/rocksdb/java/rocksjni/transaction_notifier.cc +44 -0
  931. package/vendor/rocksdb/java/rocksjni/transaction_notifier_jnicallback.cc +42 -0
  932. package/vendor/rocksdb/java/rocksjni/transaction_notifier_jnicallback.h +42 -0
  933. package/vendor/rocksdb/java/rocksjni/transaction_options.cc +191 -0
  934. package/vendor/rocksdb/java/rocksjni/ttl.cc +212 -0
  935. package/vendor/rocksdb/java/rocksjni/wal_filter.cc +24 -0
  936. package/vendor/rocksdb/java/rocksjni/wal_filter_jnicallback.cc +139 -0
  937. package/vendor/rocksdb/java/rocksjni/wal_filter_jnicallback.h +42 -0
  938. package/vendor/rocksdb/java/rocksjni/write_batch.cc +676 -0
  939. package/vendor/rocksdb/java/rocksjni/write_batch_test.cc +199 -0
  940. package/vendor/rocksdb/java/rocksjni/write_batch_with_index.cc +953 -0
  941. package/vendor/rocksdb/java/rocksjni/write_buffer_manager.cc +47 -0
  942. package/vendor/rocksdb/java/rocksjni/writebatchhandlerjnicallback.cc +519 -0
  943. package/vendor/rocksdb/java/rocksjni/writebatchhandlerjnicallback.h +92 -0
  944. package/vendor/rocksdb/java/samples/src/main/java/OptimisticTransactionSample.java +184 -0
  945. package/vendor/rocksdb/java/samples/src/main/java/RocksDBColumnFamilySample.java +78 -0
  946. package/vendor/rocksdb/java/samples/src/main/java/RocksDBSample.java +295 -0
  947. package/vendor/rocksdb/java/samples/src/main/java/TransactionSample.java +183 -0
  948. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractCompactionFilter.java +59 -0
  949. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractCompactionFilterFactory.java +77 -0
  950. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractComparator.java +124 -0
  951. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractComparatorJniBridge.java +119 -0
  952. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractEventListener.java +334 -0
  953. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractImmutableNativeReference.java +65 -0
  954. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractMutableOptions.java +368 -0
  955. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractNativeReference.java +49 -0
  956. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractRocksIterator.java +146 -0
  957. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractSlice.java +191 -0
  958. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractTableFilter.java +20 -0
  959. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractTraceWriter.java +70 -0
  960. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractTransactionNotifier.java +54 -0
  961. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractWalFilter.java +49 -0
  962. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractWriteBatch.java +203 -0
  963. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AccessHint.java +53 -0
  964. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AdvancedColumnFamilyOptionsInterface.java +463 -0
  965. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AdvancedMutableColumnFamilyOptionsInterface.java +830 -0
  966. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BackgroundErrorReason.java +46 -0
  967. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BackupEngine.java +259 -0
  968. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BackupEngineOptions.java +458 -0
  969. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BackupInfo.java +76 -0
  970. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BlockBasedTableConfig.java +951 -0
  971. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BloomFilter.java +73 -0
  972. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BuiltinComparator.java +20 -0
  973. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ByteBufferGetStatus.java +50 -0
  974. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Cache.java +40 -0
  975. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CassandraCompactionFilter.java +20 -0
  976. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CassandraValueMergeOperator.java +25 -0
  977. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Checkpoint.java +62 -0
  978. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ChecksumType.java +45 -0
  979. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ClockCache.java +59 -0
  980. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyDescriptor.java +84 -0
  981. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyHandle.java +151 -0
  982. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyMetaData.java +70 -0
  983. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyOptions.java +1543 -0
  984. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyOptionsInterface.java +536 -0
  985. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactRangeOptions.java +245 -0
  986. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionJobInfo.java +161 -0
  987. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionJobStats.java +295 -0
  988. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionOptions.java +121 -0
  989. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionOptionsFIFO.java +87 -0
  990. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionOptionsUniversal.java +273 -0
  991. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionPriority.java +81 -0
  992. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionReason.java +141 -0
  993. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionStopStyle.java +55 -0
  994. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionStyle.java +81 -0
  995. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ComparatorOptions.java +133 -0
  996. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ComparatorType.java +48 -0
  997. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompressionOptions.java +150 -0
  998. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompressionType.java +121 -0
  999. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ConcurrentTaskLimiter.java +44 -0
  1000. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ConcurrentTaskLimiterImpl.java +48 -0
  1001. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ConfigOptions.java +53 -0
  1002. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DBOptions.java +1496 -0
  1003. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DBOptionsInterface.java +1756 -0
  1004. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DataBlockIndexType.java +32 -0
  1005. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DbPath.java +47 -0
  1006. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DirectSlice.java +136 -0
  1007. package/vendor/rocksdb/java/src/main/java/org/rocksdb/EncodingType.java +55 -0
  1008. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Env.java +167 -0
  1009. package/vendor/rocksdb/java/src/main/java/org/rocksdb/EnvOptions.java +366 -0
  1010. package/vendor/rocksdb/java/src/main/java/org/rocksdb/EventListener.java +335 -0
  1011. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Experimental.java +23 -0
  1012. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ExternalFileIngestionInfo.java +103 -0
  1013. package/vendor/rocksdb/java/src/main/java/org/rocksdb/FileOperationInfo.java +112 -0
  1014. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Filter.java +36 -0
  1015. package/vendor/rocksdb/java/src/main/java/org/rocksdb/FlushJobInfo.java +186 -0
  1016. package/vendor/rocksdb/java/src/main/java/org/rocksdb/FlushOptions.java +90 -0
  1017. package/vendor/rocksdb/java/src/main/java/org/rocksdb/FlushReason.java +53 -0
  1018. package/vendor/rocksdb/java/src/main/java/org/rocksdb/HashLinkedListMemTableConfig.java +174 -0
  1019. package/vendor/rocksdb/java/src/main/java/org/rocksdb/HashSkipListMemTableConfig.java +106 -0
  1020. package/vendor/rocksdb/java/src/main/java/org/rocksdb/HistogramData.java +75 -0
  1021. package/vendor/rocksdb/java/src/main/java/org/rocksdb/HistogramType.java +214 -0
  1022. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Holder.java +46 -0
  1023. package/vendor/rocksdb/java/src/main/java/org/rocksdb/IndexShorteningMode.java +60 -0
  1024. package/vendor/rocksdb/java/src/main/java/org/rocksdb/IndexType.java +55 -0
  1025. package/vendor/rocksdb/java/src/main/java/org/rocksdb/InfoLogLevel.java +49 -0
  1026. package/vendor/rocksdb/java/src/main/java/org/rocksdb/IngestExternalFileOptions.java +227 -0
  1027. package/vendor/rocksdb/java/src/main/java/org/rocksdb/KeyMayExist.java +35 -0
  1028. package/vendor/rocksdb/java/src/main/java/org/rocksdb/LRUCache.java +106 -0
  1029. package/vendor/rocksdb/java/src/main/java/org/rocksdb/LevelMetaData.java +56 -0
  1030. package/vendor/rocksdb/java/src/main/java/org/rocksdb/LiveFileMetaData.java +55 -0
  1031. package/vendor/rocksdb/java/src/main/java/org/rocksdb/LogFile.java +75 -0
  1032. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Logger.java +121 -0
  1033. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MemTableConfig.java +29 -0
  1034. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MemTableInfo.java +103 -0
  1035. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MemoryUsageType.java +72 -0
  1036. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MemoryUtil.java +60 -0
  1037. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MergeOperator.java +18 -0
  1038. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableColumnFamilyOptions.java +621 -0
  1039. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableColumnFamilyOptionsInterface.java +156 -0
  1040. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableDBOptions.java +292 -0
  1041. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableDBOptionsInterface.java +440 -0
  1042. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableOptionKey.java +16 -0
  1043. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableOptionValue.java +368 -0
  1044. package/vendor/rocksdb/java/src/main/java/org/rocksdb/NativeComparatorWrapper.java +59 -0
  1045. package/vendor/rocksdb/java/src/main/java/org/rocksdb/NativeLibraryLoader.java +172 -0
  1046. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OperationStage.java +59 -0
  1047. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OperationType.java +55 -0
  1048. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OptimisticTransactionDB.java +224 -0
  1049. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OptimisticTransactionOptions.java +53 -0
  1050. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OptionString.java +261 -0
  1051. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Options.java +2574 -0
  1052. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OptionsUtil.java +101 -0
  1053. package/vendor/rocksdb/java/src/main/java/org/rocksdb/PersistentCache.java +26 -0
  1054. package/vendor/rocksdb/java/src/main/java/org/rocksdb/PlainTableConfig.java +251 -0
  1055. package/vendor/rocksdb/java/src/main/java/org/rocksdb/PrepopulateBlobCache.java +117 -0
  1056. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Priority.java +49 -0
  1057. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Range.java +19 -0
  1058. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RateLimiter.java +227 -0
  1059. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RateLimiterMode.java +52 -0
  1060. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ReadOptions.java +822 -0
  1061. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ReadTier.java +49 -0
  1062. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RemoveEmptyValueCompactionFilter.java +18 -0
  1063. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RestoreOptions.java +32 -0
  1064. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ReusedSynchronisationType.java +65 -0
  1065. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksCallbackObject.java +73 -0
  1066. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksDB.java +4688 -0
  1067. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksDBException.java +44 -0
  1068. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksEnv.java +31 -0
  1069. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksIterator.java +140 -0
  1070. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksIteratorInterface.java +127 -0
  1071. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksMemEnv.java +31 -0
  1072. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksMutableObject.java +87 -0
  1073. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksObject.java +45 -0
  1074. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SanityLevel.java +47 -0
  1075. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SizeApproximationFlag.java +31 -0
  1076. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SkipListMemTableConfig.java +51 -0
  1077. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Slice.java +135 -0
  1078. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Snapshot.java +41 -0
  1079. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileManager.java +249 -0
  1080. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileMetaData.java +162 -0
  1081. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileReader.java +82 -0
  1082. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileReaderIterator.java +140 -0
  1083. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileWriter.java +237 -0
  1084. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstPartitionerFactory.java +15 -0
  1085. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstPartitionerFixedPrefixFactory.java +19 -0
  1086. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StateType.java +53 -0
  1087. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Statistics.java +153 -0
  1088. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StatisticsCollector.java +102 -0
  1089. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StatisticsCollectorCallback.java +32 -0
  1090. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StatsCollectorInput.java +35 -0
  1091. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StatsLevel.java +65 -0
  1092. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Status.java +155 -0
  1093. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StringAppendOperator.java +29 -0
  1094. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFileCreationBriefInfo.java +107 -0
  1095. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFileCreationInfo.java +86 -0
  1096. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFileCreationReason.java +46 -0
  1097. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFileDeletionInfo.java +86 -0
  1098. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFilter.java +21 -0
  1099. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFormatConfig.java +22 -0
  1100. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableProperties.java +426 -0
  1101. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ThreadStatus.java +224 -0
  1102. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ThreadType.java +65 -0
  1103. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TickerType.java +802 -0
  1104. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TimedEnv.java +30 -0
  1105. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TraceOptions.java +32 -0
  1106. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TraceWriter.java +36 -0
  1107. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Transaction.java +2162 -0
  1108. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionDB.java +401 -0
  1109. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionDBOptions.java +216 -0
  1110. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionLogIterator.java +112 -0
  1111. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionOptions.java +189 -0
  1112. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionalDB.java +65 -0
  1113. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionalOptions.java +31 -0
  1114. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TtlDB.java +242 -0
  1115. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TxnDBWritePolicy.java +62 -0
  1116. package/vendor/rocksdb/java/src/main/java/org/rocksdb/UInt64AddOperator.java +19 -0
  1117. package/vendor/rocksdb/java/src/main/java/org/rocksdb/VectorMemTableConfig.java +46 -0
  1118. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WALRecoveryMode.java +82 -0
  1119. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WBWIRocksIterator.java +203 -0
  1120. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WalFileType.java +55 -0
  1121. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WalFilter.java +86 -0
  1122. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WalProcessingOption.java +54 -0
  1123. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteBatch.java +394 -0
  1124. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteBatchInterface.java +283 -0
  1125. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteBatchWithIndex.java +358 -0
  1126. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteBufferManager.java +50 -0
  1127. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteOptions.java +255 -0
  1128. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteStallCondition.java +44 -0
  1129. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteStallInfo.java +75 -0
  1130. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/ByteUtil.java +52 -0
  1131. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/BytewiseComparator.java +121 -0
  1132. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/Environment.java +245 -0
  1133. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/IntComparator.java +67 -0
  1134. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/ReverseBytewiseComparator.java +88 -0
  1135. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/SizeUnit.java +16 -0
  1136. package/vendor/rocksdb/java/src/test/java/org/rocksdb/AbstractTransactionTest.java +979 -0
  1137. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BackupEngineOptionsTest.java +297 -0
  1138. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BackupEngineTest.java +261 -0
  1139. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BlobOptionsTest.java +353 -0
  1140. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BlockBasedTableConfigTest.java +415 -0
  1141. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BuiltinComparatorTest.java +145 -0
  1142. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ByteBufferUnsupportedOperationTest.java +132 -0
  1143. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BytewiseComparatorRegressionTest.java +132 -0
  1144. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CheckPointTest.java +82 -0
  1145. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ClockCacheTest.java +25 -0
  1146. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ColumnFamilyOptionsTest.java +712 -0
  1147. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ColumnFamilyTest.java +562 -0
  1148. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactRangeOptionsTest.java +102 -0
  1149. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionFilterFactoryTest.java +61 -0
  1150. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionJobInfoTest.java +114 -0
  1151. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionJobStatsTest.java +196 -0
  1152. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionOptionsFIFOTest.java +35 -0
  1153. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionOptionsTest.java +52 -0
  1154. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionOptionsUniversalTest.java +80 -0
  1155. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionPriorityTest.java +31 -0
  1156. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionStopStyleTest.java +31 -0
  1157. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ComparatorOptionsTest.java +58 -0
  1158. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompressionOptionsTest.java +71 -0
  1159. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompressionTypesTest.java +25 -0
  1160. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ConcurrentTaskLimiterTest.java +56 -0
  1161. package/vendor/rocksdb/java/src/test/java/org/rocksdb/DBOptionsTest.java +902 -0
  1162. package/vendor/rocksdb/java/src/test/java/org/rocksdb/DefaultEnvTest.java +113 -0
  1163. package/vendor/rocksdb/java/src/test/java/org/rocksdb/DirectSliceTest.java +93 -0
  1164. package/vendor/rocksdb/java/src/test/java/org/rocksdb/EnvOptionsTest.java +145 -0
  1165. package/vendor/rocksdb/java/src/test/java/org/rocksdb/EventListenerTest.java +725 -0
  1166. package/vendor/rocksdb/java/src/test/java/org/rocksdb/FilterTest.java +39 -0
  1167. package/vendor/rocksdb/java/src/test/java/org/rocksdb/FlushOptionsTest.java +31 -0
  1168. package/vendor/rocksdb/java/src/test/java/org/rocksdb/FlushTest.java +49 -0
  1169. package/vendor/rocksdb/java/src/test/java/org/rocksdb/InfoLogLevelTest.java +109 -0
  1170. package/vendor/rocksdb/java/src/test/java/org/rocksdb/IngestExternalFileOptionsTest.java +107 -0
  1171. package/vendor/rocksdb/java/src/test/java/org/rocksdb/KeyMayExistTest.java +528 -0
  1172. package/vendor/rocksdb/java/src/test/java/org/rocksdb/LRUCacheTest.java +32 -0
  1173. package/vendor/rocksdb/java/src/test/java/org/rocksdb/LoggerTest.java +235 -0
  1174. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MemTableTest.java +108 -0
  1175. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MemoryUtilTest.java +136 -0
  1176. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MergeTest.java +465 -0
  1177. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MixedOptionsTest.java +85 -0
  1178. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MultiColumnRegressionTest.java +145 -0
  1179. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MultiGetManyKeysTest.java +241 -0
  1180. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MultiGetTest.java +530 -0
  1181. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MutableColumnFamilyOptionsTest.java +167 -0
  1182. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MutableDBOptionsTest.java +85 -0
  1183. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MutableOptionsGetSetTest.java +429 -0
  1184. package/vendor/rocksdb/java/src/test/java/org/rocksdb/NativeComparatorWrapperTest.java +90 -0
  1185. package/vendor/rocksdb/java/src/test/java/org/rocksdb/NativeLibraryLoaderTest.java +41 -0
  1186. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptimisticTransactionDBTest.java +131 -0
  1187. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptimisticTransactionOptionsTest.java +38 -0
  1188. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptimisticTransactionTest.java +446 -0
  1189. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptionsTest.java +1488 -0
  1190. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptionsUtilTest.java +129 -0
  1191. package/vendor/rocksdb/java/src/test/java/org/rocksdb/PlainTableConfigTest.java +89 -0
  1192. package/vendor/rocksdb/java/src/test/java/org/rocksdb/PlatformRandomHelper.java +58 -0
  1193. package/vendor/rocksdb/java/src/test/java/org/rocksdb/PutMultiplePartsTest.java +164 -0
  1194. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RateLimiterTest.java +65 -0
  1195. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ReadOnlyTest.java +222 -0
  1196. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ReadOptionsTest.java +374 -0
  1197. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksDBExceptionTest.java +115 -0
  1198. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksDBTest.java +1692 -0
  1199. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksIteratorTest.java +289 -0
  1200. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksMemEnvTest.java +137 -0
  1201. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksNativeLibraryResource.java +18 -0
  1202. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SecondaryDBTest.java +135 -0
  1203. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SliceTest.java +80 -0
  1204. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SnapshotTest.java +169 -0
  1205. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SstFileManagerTest.java +66 -0
  1206. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SstFileReaderTest.java +222 -0
  1207. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SstFileWriterTest.java +239 -0
  1208. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SstPartitionerTest.java +72 -0
  1209. package/vendor/rocksdb/java/src/test/java/org/rocksdb/StatisticsCollectorTest.java +55 -0
  1210. package/vendor/rocksdb/java/src/test/java/org/rocksdb/StatisticsTest.java +168 -0
  1211. package/vendor/rocksdb/java/src/test/java/org/rocksdb/StatsCallbackMock.java +19 -0
  1212. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TableFilterTest.java +106 -0
  1213. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TimedEnvTest.java +40 -0
  1214. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionDBOptionsTest.java +64 -0
  1215. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionDBTest.java +177 -0
  1216. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionLogIteratorTest.java +139 -0
  1217. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionOptionsTest.java +72 -0
  1218. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionTest.java +488 -0
  1219. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TtlDBTest.java +112 -0
  1220. package/vendor/rocksdb/java/src/test/java/org/rocksdb/Types.java +43 -0
  1221. package/vendor/rocksdb/java/src/test/java/org/rocksdb/VerifyChecksumsTest.java +213 -0
  1222. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WALRecoveryModeTest.java +22 -0
  1223. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WalFilterTest.java +165 -0
  1224. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteBatchHandlerTest.java +76 -0
  1225. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteBatchTest.java +528 -0
  1226. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteBatchThreadedTest.java +101 -0
  1227. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteBatchWithIndexTest.java +1068 -0
  1228. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteOptionsTest.java +75 -0
  1229. package/vendor/rocksdb/java/src/test/java/org/rocksdb/test/RemoveEmptyValueCompactionFilterFactory.java +21 -0
  1230. package/vendor/rocksdb/java/src/test/java/org/rocksdb/test/RocksJunitRunner.java +174 -0
  1231. package/vendor/rocksdb/java/src/test/java/org/rocksdb/test/TestableEventListener.java +23 -0
  1232. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/ByteBufferAllocator.java +16 -0
  1233. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/BytewiseComparatorIntTest.java +267 -0
  1234. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/BytewiseComparatorTest.java +531 -0
  1235. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/CapturingWriteBatchHandler.java +190 -0
  1236. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/DirectByteBufferAllocator.java +18 -0
  1237. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/EnvironmentTest.java +304 -0
  1238. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/HeapByteBufferAllocator.java +18 -0
  1239. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/IntComparatorTest.java +266 -0
  1240. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/JNIComparatorTest.java +180 -0
  1241. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/ReverseBytewiseComparatorIntTest.java +270 -0
  1242. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/SizeUnitTest.java +27 -0
  1243. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/TestUtil.java +72 -0
  1244. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/WriteBatchGetter.java +139 -0
  1245. package/vendor/rocksdb/java/understanding_options.md +79 -0
  1246. package/vendor/rocksdb/logging/auto_roll_logger.cc +368 -0
  1247. package/vendor/rocksdb/logging/auto_roll_logger.h +166 -0
  1248. package/vendor/rocksdb/logging/auto_roll_logger_test.cc +731 -0
  1249. package/vendor/rocksdb/logging/env_logger.h +195 -0
  1250. package/vendor/rocksdb/logging/env_logger_test.cc +163 -0
  1251. package/vendor/rocksdb/logging/event_logger.cc +68 -0
  1252. package/vendor/rocksdb/logging/event_logger.h +202 -0
  1253. package/vendor/rocksdb/logging/event_logger_test.cc +45 -0
  1254. package/vendor/rocksdb/logging/log_buffer.cc +91 -0
  1255. package/vendor/rocksdb/logging/log_buffer.h +57 -0
  1256. package/vendor/rocksdb/logging/logging.h +62 -0
  1257. package/vendor/rocksdb/memory/allocator.h +58 -0
  1258. package/vendor/rocksdb/memory/arena.cc +170 -0
  1259. package/vendor/rocksdb/memory/arena.h +135 -0
  1260. package/vendor/rocksdb/memory/arena_test.cc +295 -0
  1261. package/vendor/rocksdb/memory/concurrent_arena.cc +45 -0
  1262. package/vendor/rocksdb/memory/concurrent_arena.h +215 -0
  1263. package/vendor/rocksdb/memory/jemalloc_nodump_allocator.cc +303 -0
  1264. package/vendor/rocksdb/memory/jemalloc_nodump_allocator.h +99 -0
  1265. package/vendor/rocksdb/memory/memkind_kmem_allocator.cc +44 -0
  1266. package/vendor/rocksdb/memory/memkind_kmem_allocator.h +43 -0
  1267. package/vendor/rocksdb/memory/memory_allocator.cc +80 -0
  1268. package/vendor/rocksdb/memory/memory_allocator_impl.h +47 -0
  1269. package/vendor/rocksdb/memory/memory_allocator_test.cc +236 -0
  1270. package/vendor/rocksdb/memory/memory_usage.h +38 -0
  1271. package/vendor/rocksdb/memtable/alloc_tracker.cc +63 -0
  1272. package/vendor/rocksdb/memtable/hash_linklist_rep.cc +924 -0
  1273. package/vendor/rocksdb/memtable/hash_skiplist_rep.cc +391 -0
  1274. package/vendor/rocksdb/memtable/inlineskiplist.h +1051 -0
  1275. package/vendor/rocksdb/memtable/inlineskiplist_test.cc +665 -0
  1276. package/vendor/rocksdb/memtable/memtablerep_bench.cc +687 -0
  1277. package/vendor/rocksdb/memtable/skiplist.h +498 -0
  1278. package/vendor/rocksdb/memtable/skiplist_test.cc +388 -0
  1279. package/vendor/rocksdb/memtable/skiplistrep.cc +368 -0
  1280. package/vendor/rocksdb/memtable/stl_wrappers.h +33 -0
  1281. package/vendor/rocksdb/memtable/vectorrep.cc +307 -0
  1282. package/vendor/rocksdb/memtable/write_buffer_manager.cc +185 -0
  1283. package/vendor/rocksdb/memtable/write_buffer_manager_test.cc +304 -0
  1284. package/vendor/rocksdb/microbench/CMakeLists.txt +17 -0
  1285. package/vendor/rocksdb/microbench/README.md +60 -0
  1286. package/vendor/rocksdb/microbench/db_basic_bench.cc +1583 -0
  1287. package/vendor/rocksdb/microbench/ribbon_bench.cc +155 -0
  1288. package/vendor/rocksdb/monitoring/file_read_sample.h +23 -0
  1289. package/vendor/rocksdb/monitoring/histogram.cc +270 -0
  1290. package/vendor/rocksdb/monitoring/histogram.h +143 -0
  1291. package/vendor/rocksdb/monitoring/histogram_test.cc +254 -0
  1292. package/vendor/rocksdb/monitoring/histogram_windowing.cc +194 -0
  1293. package/vendor/rocksdb/monitoring/histogram_windowing.h +84 -0
  1294. package/vendor/rocksdb/monitoring/in_memory_stats_history.cc +50 -0
  1295. package/vendor/rocksdb/monitoring/in_memory_stats_history.h +74 -0
  1296. package/vendor/rocksdb/monitoring/instrumented_mutex.cc +90 -0
  1297. package/vendor/rocksdb/monitoring/instrumented_mutex.h +126 -0
  1298. package/vendor/rocksdb/monitoring/iostats_context.cc +78 -0
  1299. package/vendor/rocksdb/monitoring/iostats_context_imp.h +62 -0
  1300. package/vendor/rocksdb/monitoring/iostats_context_test.cc +31 -0
  1301. package/vendor/rocksdb/monitoring/perf_context.cc +313 -0
  1302. package/vendor/rocksdb/monitoring/perf_context_imp.h +96 -0
  1303. package/vendor/rocksdb/monitoring/perf_level.cc +23 -0
  1304. package/vendor/rocksdb/monitoring/perf_level_imp.h +14 -0
  1305. package/vendor/rocksdb/monitoring/perf_step_timer.h +77 -0
  1306. package/vendor/rocksdb/monitoring/persistent_stats_history.cc +170 -0
  1307. package/vendor/rocksdb/monitoring/persistent_stats_history.h +83 -0
  1308. package/vendor/rocksdb/monitoring/statistics.cc +534 -0
  1309. package/vendor/rocksdb/monitoring/statistics_impl.h +144 -0
  1310. package/vendor/rocksdb/monitoring/statistics_test.cc +88 -0
  1311. package/vendor/rocksdb/monitoring/stats_history_test.cc +662 -0
  1312. package/vendor/rocksdb/monitoring/thread_status_impl.cc +163 -0
  1313. package/vendor/rocksdb/monitoring/thread_status_updater.cc +328 -0
  1314. package/vendor/rocksdb/monitoring/thread_status_updater.h +226 -0
  1315. package/vendor/rocksdb/monitoring/thread_status_updater_debug.cc +43 -0
  1316. package/vendor/rocksdb/monitoring/thread_status_util.cc +208 -0
  1317. package/vendor/rocksdb/monitoring/thread_status_util.h +139 -0
  1318. package/vendor/rocksdb/monitoring/thread_status_util_debug.cc +46 -0
  1319. package/vendor/rocksdb/options/cf_options.cc +1196 -0
  1320. package/vendor/rocksdb/options/cf_options.h +347 -0
  1321. package/vendor/rocksdb/options/configurable.cc +712 -0
  1322. package/vendor/rocksdb/options/configurable_helper.h +185 -0
  1323. package/vendor/rocksdb/options/configurable_test.cc +861 -0
  1324. package/vendor/rocksdb/options/configurable_test.h +116 -0
  1325. package/vendor/rocksdb/options/customizable.cc +133 -0
  1326. package/vendor/rocksdb/options/customizable_test.cc +2116 -0
  1327. package/vendor/rocksdb/options/db_options.cc +1079 -0
  1328. package/vendor/rocksdb/options/db_options.h +152 -0
  1329. package/vendor/rocksdb/options/options.cc +692 -0
  1330. package/vendor/rocksdb/options/options_helper.cc +1424 -0
  1331. package/vendor/rocksdb/options/options_helper.h +116 -0
  1332. package/vendor/rocksdb/options/options_parser.cc +736 -0
  1333. package/vendor/rocksdb/options/options_parser.h +149 -0
  1334. package/vendor/rocksdb/options/options_settable_test.cc +655 -0
  1335. package/vendor/rocksdb/options/options_test.cc +5060 -0
  1336. package/vendor/rocksdb/plugin/README.md +43 -0
  1337. package/vendor/rocksdb/port/README +10 -0
  1338. package/vendor/rocksdb/port/jemalloc_helper.h +107 -0
  1339. package/vendor/rocksdb/port/lang.h +97 -0
  1340. package/vendor/rocksdb/port/likely.h +18 -0
  1341. package/vendor/rocksdb/port/malloc.h +17 -0
  1342. package/vendor/rocksdb/port/mmap.cc +98 -0
  1343. package/vendor/rocksdb/port/mmap.h +70 -0
  1344. package/vendor/rocksdb/port/port.h +21 -0
  1345. package/vendor/rocksdb/port/port_dirent.h +44 -0
  1346. package/vendor/rocksdb/port/port_example.h +101 -0
  1347. package/vendor/rocksdb/port/port_posix.cc +300 -0
  1348. package/vendor/rocksdb/port/port_posix.h +243 -0
  1349. package/vendor/rocksdb/port/stack_trace.cc +336 -0
  1350. package/vendor/rocksdb/port/stack_trace.h +31 -0
  1351. package/vendor/rocksdb/port/sys_time.h +63 -0
  1352. package/vendor/rocksdb/port/util_logger.h +18 -0
  1353. package/vendor/rocksdb/port/win/env_default.cc +45 -0
  1354. package/vendor/rocksdb/port/win/env_win.cc +1437 -0
  1355. package/vendor/rocksdb/port/win/env_win.h +305 -0
  1356. package/vendor/rocksdb/port/win/io_win.cc +1101 -0
  1357. package/vendor/rocksdb/port/win/io_win.h +508 -0
  1358. package/vendor/rocksdb/port/win/port_win.cc +303 -0
  1359. package/vendor/rocksdb/port/win/port_win.h +379 -0
  1360. package/vendor/rocksdb/port/win/win_jemalloc.cc +80 -0
  1361. package/vendor/rocksdb/port/win/win_logger.cc +192 -0
  1362. package/vendor/rocksdb/port/win/win_logger.h +64 -0
  1363. package/vendor/rocksdb/port/win/win_thread.cc +170 -0
  1364. package/vendor/rocksdb/port/win/win_thread.h +117 -0
  1365. package/vendor/rocksdb/port/win/xpress_win.cc +210 -0
  1366. package/vendor/rocksdb/port/win/xpress_win.h +26 -0
  1367. package/vendor/rocksdb/port/xpress.h +17 -0
  1368. package/vendor/rocksdb/rocksdb.pc.in +10 -0
  1369. package/vendor/rocksdb/src.mk +713 -0
  1370. package/vendor/rocksdb/table/adaptive/adaptive_table_factory.cc +125 -0
  1371. package/vendor/rocksdb/table/adaptive/adaptive_table_factory.h +56 -0
  1372. package/vendor/rocksdb/table/block_based/binary_search_index_reader.cc +73 -0
  1373. package/vendor/rocksdb/table/block_based/binary_search_index_reader.h +48 -0
  1374. package/vendor/rocksdb/table/block_based/block.cc +1291 -0
  1375. package/vendor/rocksdb/table/block_based/block.h +921 -0
  1376. package/vendor/rocksdb/table/block_based/block_based_table_builder.cc +2027 -0
  1377. package/vendor/rocksdb/table/block_based/block_based_table_builder.h +209 -0
  1378. package/vendor/rocksdb/table/block_based/block_based_table_factory.cc +962 -0
  1379. package/vendor/rocksdb/table/block_based/block_based_table_factory.h +102 -0
  1380. package/vendor/rocksdb/table/block_based/block_based_table_iterator.cc +500 -0
  1381. package/vendor/rocksdb/table/block_based/block_based_table_iterator.h +310 -0
  1382. package/vendor/rocksdb/table/block_based/block_based_table_reader.cc +3043 -0
  1383. package/vendor/rocksdb/table/block_based/block_based_table_reader.h +745 -0
  1384. package/vendor/rocksdb/table/block_based/block_based_table_reader_impl.h +203 -0
  1385. package/vendor/rocksdb/table/block_based/block_based_table_reader_sync_and_async.h +758 -0
  1386. package/vendor/rocksdb/table/block_based/block_based_table_reader_test.cc +567 -0
  1387. package/vendor/rocksdb/table/block_based/block_builder.cc +234 -0
  1388. package/vendor/rocksdb/table/block_based/block_builder.h +104 -0
  1389. package/vendor/rocksdb/table/block_based/block_cache.cc +106 -0
  1390. package/vendor/rocksdb/table/block_based/block_cache.h +140 -0
  1391. package/vendor/rocksdb/table/block_based/block_prefetcher.cc +120 -0
  1392. package/vendor/rocksdb/table/block_based/block_prefetcher.h +72 -0
  1393. package/vendor/rocksdb/table/block_based/block_prefix_index.cc +226 -0
  1394. package/vendor/rocksdb/table/block_based/block_prefix_index.h +70 -0
  1395. package/vendor/rocksdb/table/block_based/block_test.cc +1543 -0
  1396. package/vendor/rocksdb/table/block_based/block_type.h +34 -0
  1397. package/vendor/rocksdb/table/block_based/cachable_entry.h +244 -0
  1398. package/vendor/rocksdb/table/block_based/data_block_footer.cc +59 -0
  1399. package/vendor/rocksdb/table/block_based/data_block_footer.h +25 -0
  1400. package/vendor/rocksdb/table/block_based/data_block_hash_index.cc +94 -0
  1401. package/vendor/rocksdb/table/block_based/data_block_hash_index.h +137 -0
  1402. package/vendor/rocksdb/table/block_based/data_block_hash_index_test.cc +718 -0
  1403. package/vendor/rocksdb/table/block_based/filter_block.h +183 -0
  1404. package/vendor/rocksdb/table/block_based/filter_block_reader_common.cc +163 -0
  1405. package/vendor/rocksdb/table/block_based/filter_block_reader_common.h +76 -0
  1406. package/vendor/rocksdb/table/block_based/filter_policy.cc +1966 -0
  1407. package/vendor/rocksdb/table/block_based/filter_policy_internal.h +340 -0
  1408. package/vendor/rocksdb/table/block_based/flush_block_policy.cc +132 -0
  1409. package/vendor/rocksdb/table/block_based/flush_block_policy_impl.h +40 -0
  1410. package/vendor/rocksdb/table/block_based/full_filter_block.cc +290 -0
  1411. package/vendor/rocksdb/table/block_based/full_filter_block.h +147 -0
  1412. package/vendor/rocksdb/table/block_based/full_filter_block_test.cc +323 -0
  1413. package/vendor/rocksdb/table/block_based/hash_index_reader.cc +147 -0
  1414. package/vendor/rocksdb/table/block_based/hash_index_reader.h +49 -0
  1415. package/vendor/rocksdb/table/block_based/index_builder.cc +282 -0
  1416. package/vendor/rocksdb/table/block_based/index_builder.h +455 -0
  1417. package/vendor/rocksdb/table/block_based/index_reader_common.cc +57 -0
  1418. package/vendor/rocksdb/table/block_based/index_reader_common.h +85 -0
  1419. package/vendor/rocksdb/table/block_based/mock_block_based_table.h +62 -0
  1420. package/vendor/rocksdb/table/block_based/parsed_full_filter_block.cc +23 -0
  1421. package/vendor/rocksdb/table/block_based/parsed_full_filter_block.h +47 -0
  1422. package/vendor/rocksdb/table/block_based/partitioned_filter_block.cc +554 -0
  1423. package/vendor/rocksdb/table/block_based/partitioned_filter_block.h +182 -0
  1424. package/vendor/rocksdb/table/block_based/partitioned_filter_block_test.cc +436 -0
  1425. package/vendor/rocksdb/table/block_based/partitioned_index_iterator.cc +163 -0
  1426. package/vendor/rocksdb/table/block_based/partitioned_index_iterator.h +160 -0
  1427. package/vendor/rocksdb/table/block_based/partitioned_index_reader.cc +224 -0
  1428. package/vendor/rocksdb/table/block_based/partitioned_index_reader.h +56 -0
  1429. package/vendor/rocksdb/table/block_based/reader_common.cc +52 -0
  1430. package/vendor/rocksdb/table/block_based/reader_common.h +34 -0
  1431. package/vendor/rocksdb/table/block_based/uncompression_dict_reader.cc +126 -0
  1432. package/vendor/rocksdb/table/block_based/uncompression_dict_reader.h +61 -0
  1433. package/vendor/rocksdb/table/block_fetcher.cc +405 -0
  1434. package/vendor/rocksdb/table/block_fetcher.h +142 -0
  1435. package/vendor/rocksdb/table/block_fetcher_test.cc +520 -0
  1436. package/vendor/rocksdb/table/cleanable_test.cc +390 -0
  1437. package/vendor/rocksdb/table/compaction_merging_iterator.cc +370 -0
  1438. package/vendor/rocksdb/table/compaction_merging_iterator.h +44 -0
  1439. package/vendor/rocksdb/table/cuckoo/cuckoo_table_builder.cc +551 -0
  1440. package/vendor/rocksdb/table/cuckoo/cuckoo_table_builder.h +136 -0
  1441. package/vendor/rocksdb/table/cuckoo/cuckoo_table_builder_test.cc +631 -0
  1442. package/vendor/rocksdb/table/cuckoo/cuckoo_table_factory.cc +100 -0
  1443. package/vendor/rocksdb/table/cuckoo/cuckoo_table_factory.h +80 -0
  1444. package/vendor/rocksdb/table/cuckoo/cuckoo_table_reader.cc +412 -0
  1445. package/vendor/rocksdb/table/cuckoo/cuckoo_table_reader.h +100 -0
  1446. package/vendor/rocksdb/table/cuckoo/cuckoo_table_reader_test.cc +574 -0
  1447. package/vendor/rocksdb/table/format.cc +573 -0
  1448. package/vendor/rocksdb/table/format.h +378 -0
  1449. package/vendor/rocksdb/table/get_context.cc +616 -0
  1450. package/vendor/rocksdb/table/get_context.h +245 -0
  1451. package/vendor/rocksdb/table/internal_iterator.h +224 -0
  1452. package/vendor/rocksdb/table/iter_heap.h +44 -0
  1453. package/vendor/rocksdb/table/iterator.cc +130 -0
  1454. package/vendor/rocksdb/table/iterator_wrapper.h +190 -0
  1455. package/vendor/rocksdb/table/merger_test.cc +182 -0
  1456. package/vendor/rocksdb/table/merging_iterator.cc +1725 -0
  1457. package/vendor/rocksdb/table/merging_iterator.h +97 -0
  1458. package/vendor/rocksdb/table/meta_blocks.cc +564 -0
  1459. package/vendor/rocksdb/table/meta_blocks.h +172 -0
  1460. package/vendor/rocksdb/table/mock_table.cc +346 -0
  1461. package/vendor/rocksdb/table/mock_table.h +94 -0
  1462. package/vendor/rocksdb/table/multiget_context.h +405 -0
  1463. package/vendor/rocksdb/table/persistent_cache_helper.cc +111 -0
  1464. package/vendor/rocksdb/table/persistent_cache_helper.h +46 -0
  1465. package/vendor/rocksdb/table/persistent_cache_options.h +34 -0
  1466. package/vendor/rocksdb/table/plain/plain_table_bloom.cc +78 -0
  1467. package/vendor/rocksdb/table/plain/plain_table_bloom.h +132 -0
  1468. package/vendor/rocksdb/table/plain/plain_table_builder.cc +335 -0
  1469. package/vendor/rocksdb/table/plain/plain_table_builder.h +152 -0
  1470. package/vendor/rocksdb/table/plain/plain_table_factory.cc +296 -0
  1471. package/vendor/rocksdb/table/plain/plain_table_factory.h +180 -0
  1472. package/vendor/rocksdb/table/plain/plain_table_index.cc +211 -0
  1473. package/vendor/rocksdb/table/plain/plain_table_index.h +246 -0
  1474. package/vendor/rocksdb/table/plain/plain_table_key_coding.cc +507 -0
  1475. package/vendor/rocksdb/table/plain/plain_table_key_coding.h +199 -0
  1476. package/vendor/rocksdb/table/plain/plain_table_reader.cc +771 -0
  1477. package/vendor/rocksdb/table/plain/plain_table_reader.h +243 -0
  1478. package/vendor/rocksdb/table/scoped_arena_iterator.h +57 -0
  1479. package/vendor/rocksdb/table/sst_file_dumper.cc +520 -0
  1480. package/vendor/rocksdb/table/sst_file_dumper.h +99 -0
  1481. package/vendor/rocksdb/table/sst_file_reader.cc +101 -0
  1482. package/vendor/rocksdb/table/sst_file_reader_test.cc +423 -0
  1483. package/vendor/rocksdb/table/sst_file_writer.cc +436 -0
  1484. package/vendor/rocksdb/table/sst_file_writer_collectors.h +95 -0
  1485. package/vendor/rocksdb/table/table_builder.h +228 -0
  1486. package/vendor/rocksdb/table/table_factory.cc +52 -0
  1487. package/vendor/rocksdb/table/table_properties.cc +351 -0
  1488. package/vendor/rocksdb/table/table_properties_internal.h +14 -0
  1489. package/vendor/rocksdb/table/table_reader.h +187 -0
  1490. package/vendor/rocksdb/table/table_reader_bench.cc +339 -0
  1491. package/vendor/rocksdb/table/table_test.cc +5882 -0
  1492. package/vendor/rocksdb/table/two_level_iterator.cc +220 -0
  1493. package/vendor/rocksdb/table/two_level_iterator.h +43 -0
  1494. package/vendor/rocksdb/table/unique_id.cc +223 -0
  1495. package/vendor/rocksdb/table/unique_id_impl.h +93 -0
  1496. package/vendor/rocksdb/test_util/mock_time_env.cc +38 -0
  1497. package/vendor/rocksdb/test_util/mock_time_env.h +78 -0
  1498. package/vendor/rocksdb/test_util/secondary_cache_test_util.cc +96 -0
  1499. package/vendor/rocksdb/test_util/secondary_cache_test_util.h +119 -0
  1500. package/vendor/rocksdb/test_util/sync_point.cc +82 -0
  1501. package/vendor/rocksdb/test_util/sync_point.h +180 -0
  1502. package/vendor/rocksdb/test_util/sync_point_impl.cc +152 -0
  1503. package/vendor/rocksdb/test_util/sync_point_impl.h +96 -0
  1504. package/vendor/rocksdb/test_util/testharness.cc +107 -0
  1505. package/vendor/rocksdb/test_util/testharness.h +124 -0
  1506. package/vendor/rocksdb/test_util/testutil.cc +722 -0
  1507. package/vendor/rocksdb/test_util/testutil.h +860 -0
  1508. package/vendor/rocksdb/test_util/testutil_test.cc +43 -0
  1509. package/vendor/rocksdb/test_util/transaction_test_util.cc +400 -0
  1510. package/vendor/rocksdb/test_util/transaction_test_util.h +147 -0
  1511. package/vendor/rocksdb/third-party/gcc/ppc-asm.h +390 -0
  1512. package/vendor/rocksdb/third-party/gtest-1.8.1/fused-src/gtest/CMakeLists.txt +4 -0
  1513. package/vendor/rocksdb/third-party/gtest-1.8.1/fused-src/gtest/gtest-all.cc +11394 -0
  1514. package/vendor/rocksdb/third-party/gtest-1.8.1/fused-src/gtest/gtest.h +22115 -0
  1515. package/vendor/rocksdb/third-party/gtest-1.8.1/fused-src/gtest/gtest_main.cc +37 -0
  1516. package/vendor/rocksdb/thirdparty.inc +268 -0
  1517. package/vendor/rocksdb/tools/CMakeLists.txt +30 -0
  1518. package/vendor/rocksdb/tools/Dockerfile +5 -0
  1519. package/vendor/rocksdb/tools/advisor/README.md +96 -0
  1520. package/vendor/rocksdb/tools/advisor/advisor/__init__.py +0 -0
  1521. package/vendor/rocksdb/tools/advisor/advisor/bench_runner.py +39 -0
  1522. package/vendor/rocksdb/tools/advisor/advisor/config_optimizer_example.py +140 -0
  1523. package/vendor/rocksdb/tools/advisor/advisor/db_bench_runner.py +237 -0
  1524. package/vendor/rocksdb/tools/advisor/advisor/db_config_optimizer.py +293 -0
  1525. package/vendor/rocksdb/tools/advisor/advisor/db_log_parser.py +134 -0
  1526. package/vendor/rocksdb/tools/advisor/advisor/db_options_parser.py +348 -0
  1527. package/vendor/rocksdb/tools/advisor/advisor/db_stats_fetcher.py +346 -0
  1528. package/vendor/rocksdb/tools/advisor/advisor/db_timeseries_parser.py +203 -0
  1529. package/vendor/rocksdb/tools/advisor/advisor/ini_parser.py +76 -0
  1530. package/vendor/rocksdb/tools/advisor/advisor/rule_parser.py +510 -0
  1531. package/vendor/rocksdb/tools/advisor/advisor/rule_parser_example.py +98 -0
  1532. package/vendor/rocksdb/tools/advisor/advisor/rules.ini +214 -0
  1533. package/vendor/rocksdb/tools/advisor/test/__init__.py +0 -0
  1534. package/vendor/rocksdb/tools/advisor/test/input_files/LOG-0 +30 -0
  1535. package/vendor/rocksdb/tools/advisor/test/input_files/LOG-1 +25 -0
  1536. package/vendor/rocksdb/tools/advisor/test/input_files/OPTIONS-000005 +49 -0
  1537. package/vendor/rocksdb/tools/advisor/test/input_files/log_stats_parser_keys_ts +3 -0
  1538. package/vendor/rocksdb/tools/advisor/test/input_files/rules_err1.ini +56 -0
  1539. package/vendor/rocksdb/tools/advisor/test/input_files/rules_err2.ini +15 -0
  1540. package/vendor/rocksdb/tools/advisor/test/input_files/rules_err3.ini +15 -0
  1541. package/vendor/rocksdb/tools/advisor/test/input_files/rules_err4.ini +15 -0
  1542. package/vendor/rocksdb/tools/advisor/test/input_files/test_rules.ini +47 -0
  1543. package/vendor/rocksdb/tools/advisor/test/input_files/triggered_rules.ini +83 -0
  1544. package/vendor/rocksdb/tools/advisor/test/test_db_bench_runner.py +141 -0
  1545. package/vendor/rocksdb/tools/advisor/test/test_db_log_parser.py +96 -0
  1546. package/vendor/rocksdb/tools/advisor/test/test_db_options_parser.py +214 -0
  1547. package/vendor/rocksdb/tools/advisor/test/test_db_stats_fetcher.py +121 -0
  1548. package/vendor/rocksdb/tools/advisor/test/test_rule_parser.py +226 -0
  1549. package/vendor/rocksdb/tools/analyze_txn_stress_test.sh +77 -0
  1550. package/vendor/rocksdb/tools/auto_sanity_test.sh +93 -0
  1551. package/vendor/rocksdb/tools/backup_db.sh +15 -0
  1552. package/vendor/rocksdb/tools/benchmark.sh +1173 -0
  1553. package/vendor/rocksdb/tools/benchmark_ci.py +182 -0
  1554. package/vendor/rocksdb/tools/benchmark_compare.sh +342 -0
  1555. package/vendor/rocksdb/tools/benchmark_leveldb.sh +187 -0
  1556. package/vendor/rocksdb/tools/blob_dump.cc +103 -0
  1557. package/vendor/rocksdb/tools/block_cache_analyzer/__init__.py +2 -0
  1558. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_pysim.py +2000 -0
  1559. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_pysim.sh +156 -0
  1560. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_pysim_test.py +734 -0
  1561. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.cc +2314 -0
  1562. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer.h +397 -0
  1563. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer_plot.py +729 -0
  1564. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer_test.cc +791 -0
  1565. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer_tool.cc +17 -0
  1566. package/vendor/rocksdb/tools/check_all_python.py +22 -0
  1567. package/vendor/rocksdb/tools/check_format_compatible.sh +379 -0
  1568. package/vendor/rocksdb/tools/db_bench.cc +21 -0
  1569. package/vendor/rocksdb/tools/db_bench_tool.cc +8604 -0
  1570. package/vendor/rocksdb/tools/db_bench_tool_test.cc +342 -0
  1571. package/vendor/rocksdb/tools/db_crashtest.py +1018 -0
  1572. package/vendor/rocksdb/tools/db_repl_stress.cc +132 -0
  1573. package/vendor/rocksdb/tools/db_sanity_test.cc +296 -0
  1574. package/vendor/rocksdb/tools/dbench_monitor +102 -0
  1575. package/vendor/rocksdb/tools/dump/db_dump_tool.cc +258 -0
  1576. package/vendor/rocksdb/tools/dump/rocksdb_dump.cc +60 -0
  1577. package/vendor/rocksdb/tools/dump/rocksdb_undump.cc +59 -0
  1578. package/vendor/rocksdb/tools/generate_random_db.sh +31 -0
  1579. package/vendor/rocksdb/tools/ingest_external_sst.sh +18 -0
  1580. package/vendor/rocksdb/tools/io_tracer_parser.cc +17 -0
  1581. package/vendor/rocksdb/tools/io_tracer_parser_test.cc +182 -0
  1582. package/vendor/rocksdb/tools/io_tracer_parser_tool.cc +142 -0
  1583. package/vendor/rocksdb/tools/io_tracer_parser_tool.h +38 -0
  1584. package/vendor/rocksdb/tools/ldb.cc +13 -0
  1585. package/vendor/rocksdb/tools/ldb_cmd.cc +4263 -0
  1586. package/vendor/rocksdb/tools/ldb_cmd_impl.h +744 -0
  1587. package/vendor/rocksdb/tools/ldb_cmd_test.cc +1216 -0
  1588. package/vendor/rocksdb/tools/ldb_test.py +955 -0
  1589. package/vendor/rocksdb/tools/ldb_tool.cc +182 -0
  1590. package/vendor/rocksdb/tools/pflag +217 -0
  1591. package/vendor/rocksdb/tools/reduce_levels_test.cc +212 -0
  1592. package/vendor/rocksdb/tools/regression_test.sh +525 -0
  1593. package/vendor/rocksdb/tools/restore_db.sh +15 -0
  1594. package/vendor/rocksdb/tools/rocksdb_dump_test.sh +9 -0
  1595. package/vendor/rocksdb/tools/run_blob_bench.sh +223 -0
  1596. package/vendor/rocksdb/tools/run_flash_bench.sh +359 -0
  1597. package/vendor/rocksdb/tools/run_leveldb.sh +175 -0
  1598. package/vendor/rocksdb/tools/sample-dump.dmp +0 -0
  1599. package/vendor/rocksdb/tools/simulated_hybrid_file_system.cc +243 -0
  1600. package/vendor/rocksdb/tools/simulated_hybrid_file_system.h +124 -0
  1601. package/vendor/rocksdb/tools/sst_dump.cc +12 -0
  1602. package/vendor/rocksdb/tools/sst_dump_test.cc +471 -0
  1603. package/vendor/rocksdb/tools/sst_dump_tool.cc +582 -0
  1604. package/vendor/rocksdb/tools/trace_analyzer.cc +17 -0
  1605. package/vendor/rocksdb/tools/trace_analyzer_test.cc +880 -0
  1606. package/vendor/rocksdb/tools/trace_analyzer_tool.cc +1929 -0
  1607. package/vendor/rocksdb/tools/trace_analyzer_tool.h +329 -0
  1608. package/vendor/rocksdb/tools/verify_random_db.sh +41 -0
  1609. package/vendor/rocksdb/tools/write_external_sst.sh +26 -0
  1610. package/vendor/rocksdb/tools/write_stress.cc +305 -0
  1611. package/vendor/rocksdb/tools/write_stress_runner.py +83 -0
  1612. package/vendor/rocksdb/trace_replay/block_cache_tracer.cc +509 -0
  1613. package/vendor/rocksdb/trace_replay/block_cache_tracer.h +239 -0
  1614. package/vendor/rocksdb/trace_replay/block_cache_tracer_test.cc +421 -0
  1615. package/vendor/rocksdb/trace_replay/io_tracer.cc +303 -0
  1616. package/vendor/rocksdb/trace_replay/io_tracer.h +185 -0
  1617. package/vendor/rocksdb/trace_replay/io_tracer_test.cc +353 -0
  1618. package/vendor/rocksdb/trace_replay/trace_record.cc +206 -0
  1619. package/vendor/rocksdb/trace_replay/trace_record_handler.cc +190 -0
  1620. package/vendor/rocksdb/trace_replay/trace_record_handler.h +46 -0
  1621. package/vendor/rocksdb/trace_replay/trace_record_result.cc +146 -0
  1622. package/vendor/rocksdb/trace_replay/trace_replay.cc +622 -0
  1623. package/vendor/rocksdb/trace_replay/trace_replay.h +183 -0
  1624. package/vendor/rocksdb/util/aligned_buffer.h +235 -0
  1625. package/vendor/rocksdb/util/async_file_reader.cc +81 -0
  1626. package/vendor/rocksdb/util/async_file_reader.h +144 -0
  1627. package/vendor/rocksdb/util/autovector.h +393 -0
  1628. package/vendor/rocksdb/util/autovector_test.cc +324 -0
  1629. package/vendor/rocksdb/util/bloom_impl.h +489 -0
  1630. package/vendor/rocksdb/util/bloom_test.cc +1175 -0
  1631. package/vendor/rocksdb/util/build_version.cc.in +79 -0
  1632. package/vendor/rocksdb/util/cast_util.h +42 -0
  1633. package/vendor/rocksdb/util/channel.h +69 -0
  1634. package/vendor/rocksdb/util/cleanable.cc +181 -0
  1635. package/vendor/rocksdb/util/coding.cc +90 -0
  1636. package/vendor/rocksdb/util/coding.h +389 -0
  1637. package/vendor/rocksdb/util/coding_lean.h +101 -0
  1638. package/vendor/rocksdb/util/coding_test.cc +217 -0
  1639. package/vendor/rocksdb/util/compaction_job_stats_impl.cc +92 -0
  1640. package/vendor/rocksdb/util/comparator.cc +383 -0
  1641. package/vendor/rocksdb/util/compression.cc +122 -0
  1642. package/vendor/rocksdb/util/compression.h +1795 -0
  1643. package/vendor/rocksdb/util/compression_context_cache.cc +106 -0
  1644. package/vendor/rocksdb/util/compression_context_cache.h +47 -0
  1645. package/vendor/rocksdb/util/concurrent_task_limiter_impl.cc +64 -0
  1646. package/vendor/rocksdb/util/concurrent_task_limiter_impl.h +67 -0
  1647. package/vendor/rocksdb/util/core_local.h +84 -0
  1648. package/vendor/rocksdb/util/coro_utils.h +112 -0
  1649. package/vendor/rocksdb/util/crc32c.cc +1292 -0
  1650. package/vendor/rocksdb/util/crc32c.h +56 -0
  1651. package/vendor/rocksdb/util/crc32c_arm64.cc +213 -0
  1652. package/vendor/rocksdb/util/crc32c_arm64.h +52 -0
  1653. package/vendor/rocksdb/util/crc32c_ppc.c +94 -0
  1654. package/vendor/rocksdb/util/crc32c_ppc.h +22 -0
  1655. package/vendor/rocksdb/util/crc32c_ppc_asm.S +756 -0
  1656. package/vendor/rocksdb/util/crc32c_ppc_constants.h +900 -0
  1657. package/vendor/rocksdb/util/crc32c_test.cc +213 -0
  1658. package/vendor/rocksdb/util/data_structure.cc +18 -0
  1659. package/vendor/rocksdb/util/defer.h +82 -0
  1660. package/vendor/rocksdb/util/defer_test.cc +51 -0
  1661. package/vendor/rocksdb/util/distributed_mutex.h +50 -0
  1662. package/vendor/rocksdb/util/duplicate_detector.h +69 -0
  1663. package/vendor/rocksdb/util/dynamic_bloom.cc +70 -0
  1664. package/vendor/rocksdb/util/dynamic_bloom.h +214 -0
  1665. package/vendor/rocksdb/util/dynamic_bloom_test.cc +325 -0
  1666. package/vendor/rocksdb/util/fastrange.h +114 -0
  1667. package/vendor/rocksdb/util/file_checksum_helper.cc +170 -0
  1668. package/vendor/rocksdb/util/file_checksum_helper.h +101 -0
  1669. package/vendor/rocksdb/util/file_reader_writer_test.cc +1058 -0
  1670. package/vendor/rocksdb/util/filelock_test.cc +148 -0
  1671. package/vendor/rocksdb/util/filter_bench.cc +840 -0
  1672. package/vendor/rocksdb/util/gflags_compat.h +29 -0
  1673. package/vendor/rocksdb/util/hash.cc +201 -0
  1674. package/vendor/rocksdb/util/hash.h +137 -0
  1675. package/vendor/rocksdb/util/hash128.h +26 -0
  1676. package/vendor/rocksdb/util/hash_containers.h +51 -0
  1677. package/vendor/rocksdb/util/hash_map.h +67 -0
  1678. package/vendor/rocksdb/util/hash_test.cc +853 -0
  1679. package/vendor/rocksdb/util/heap.h +174 -0
  1680. package/vendor/rocksdb/util/heap_test.cc +131 -0
  1681. package/vendor/rocksdb/util/kv_map.h +33 -0
  1682. package/vendor/rocksdb/util/log_write_bench.cc +88 -0
  1683. package/vendor/rocksdb/util/math.h +299 -0
  1684. package/vendor/rocksdb/util/math128.h +316 -0
  1685. package/vendor/rocksdb/util/murmurhash.cc +196 -0
  1686. package/vendor/rocksdb/util/murmurhash.h +43 -0
  1687. package/vendor/rocksdb/util/mutexlock.h +181 -0
  1688. package/vendor/rocksdb/util/ppc-opcode.h +27 -0
  1689. package/vendor/rocksdb/util/random.cc +63 -0
  1690. package/vendor/rocksdb/util/random.h +190 -0
  1691. package/vendor/rocksdb/util/random_test.cc +107 -0
  1692. package/vendor/rocksdb/util/rate_limiter.cc +376 -0
  1693. package/vendor/rocksdb/util/rate_limiter_impl.h +146 -0
  1694. package/vendor/rocksdb/util/rate_limiter_test.cc +520 -0
  1695. package/vendor/rocksdb/util/repeatable_thread.h +149 -0
  1696. package/vendor/rocksdb/util/repeatable_thread_test.cc +111 -0
  1697. package/vendor/rocksdb/util/ribbon_alg.h +1225 -0
  1698. package/vendor/rocksdb/util/ribbon_config.cc +506 -0
  1699. package/vendor/rocksdb/util/ribbon_config.h +182 -0
  1700. package/vendor/rocksdb/util/ribbon_impl.h +1137 -0
  1701. package/vendor/rocksdb/util/ribbon_test.cc +1308 -0
  1702. package/vendor/rocksdb/util/set_comparator.h +24 -0
  1703. package/vendor/rocksdb/util/single_thread_executor.h +56 -0
  1704. package/vendor/rocksdb/util/slice.cc +367 -0
  1705. package/vendor/rocksdb/util/slice_test.cc +252 -0
  1706. package/vendor/rocksdb/util/slice_transform_test.cc +159 -0
  1707. package/vendor/rocksdb/util/status.cc +162 -0
  1708. package/vendor/rocksdb/util/stderr_logger.cc +30 -0
  1709. package/vendor/rocksdb/util/stderr_logger.h +31 -0
  1710. package/vendor/rocksdb/util/stop_watch.h +136 -0
  1711. package/vendor/rocksdb/util/string_util.cc +502 -0
  1712. package/vendor/rocksdb/util/string_util.h +175 -0
  1713. package/vendor/rocksdb/util/thread_guard.h +41 -0
  1714. package/vendor/rocksdb/util/thread_list_test.cc +362 -0
  1715. package/vendor/rocksdb/util/thread_local.cc +521 -0
  1716. package/vendor/rocksdb/util/thread_local.h +100 -0
  1717. package/vendor/rocksdb/util/thread_local_test.cc +578 -0
  1718. package/vendor/rocksdb/util/thread_operation.h +113 -0
  1719. package/vendor/rocksdb/util/threadpool_imp.cc +551 -0
  1720. package/vendor/rocksdb/util/threadpool_imp.h +120 -0
  1721. package/vendor/rocksdb/util/timer.h +340 -0
  1722. package/vendor/rocksdb/util/timer_queue.h +231 -0
  1723. package/vendor/rocksdb/util/timer_queue_test.cc +73 -0
  1724. package/vendor/rocksdb/util/timer_test.cc +402 -0
  1725. package/vendor/rocksdb/util/udt_util.h +77 -0
  1726. package/vendor/rocksdb/util/user_comparator_wrapper.h +64 -0
  1727. package/vendor/rocksdb/util/vector_iterator.h +118 -0
  1728. package/vendor/rocksdb/util/work_queue.h +150 -0
  1729. package/vendor/rocksdb/util/work_queue_test.cc +272 -0
  1730. package/vendor/rocksdb/util/xxhash.cc +48 -0
  1731. package/vendor/rocksdb/util/xxhash.h +6360 -0
  1732. package/vendor/rocksdb/util/xxph3.h +1764 -0
  1733. package/vendor/rocksdb/utilities/agg_merge/agg_merge.cc +238 -0
  1734. package/vendor/rocksdb/utilities/agg_merge/agg_merge_impl.h +49 -0
  1735. package/vendor/rocksdb/utilities/agg_merge/agg_merge_test.cc +135 -0
  1736. package/vendor/rocksdb/utilities/agg_merge/test_agg_merge.cc +104 -0
  1737. package/vendor/rocksdb/utilities/agg_merge/test_agg_merge.h +47 -0
  1738. package/vendor/rocksdb/utilities/backup/backup_engine.cc +3355 -0
  1739. package/vendor/rocksdb/utilities/backup/backup_engine_impl.h +34 -0
  1740. package/vendor/rocksdb/utilities/backup/backup_engine_test.cc +4414 -0
  1741. package/vendor/rocksdb/utilities/blob_db/blob_compaction_filter.cc +488 -0
  1742. package/vendor/rocksdb/utilities/blob_db/blob_compaction_filter.h +202 -0
  1743. package/vendor/rocksdb/utilities/blob_db/blob_db.cc +112 -0
  1744. package/vendor/rocksdb/utilities/blob_db/blob_db.h +264 -0
  1745. package/vendor/rocksdb/utilities/blob_db/blob_db_gc_stats.h +54 -0
  1746. package/vendor/rocksdb/utilities/blob_db/blob_db_impl.cc +2185 -0
  1747. package/vendor/rocksdb/utilities/blob_db/blob_db_impl.h +501 -0
  1748. package/vendor/rocksdb/utilities/blob_db/blob_db_impl_filesnapshot.cc +111 -0
  1749. package/vendor/rocksdb/utilities/blob_db/blob_db_iterator.h +148 -0
  1750. package/vendor/rocksdb/utilities/blob_db/blob_db_listener.h +69 -0
  1751. package/vendor/rocksdb/utilities/blob_db/blob_db_test.cc +2430 -0
  1752. package/vendor/rocksdb/utilities/blob_db/blob_dump_tool.cc +280 -0
  1753. package/vendor/rocksdb/utilities/blob_db/blob_dump_tool.h +56 -0
  1754. package/vendor/rocksdb/utilities/blob_db/blob_file.cc +316 -0
  1755. package/vendor/rocksdb/utilities/blob_db/blob_file.h +244 -0
  1756. package/vendor/rocksdb/utilities/cache_dump_load.cc +67 -0
  1757. package/vendor/rocksdb/utilities/cache_dump_load_impl.cc +369 -0
  1758. package/vendor/rocksdb/utilities/cache_dump_load_impl.h +356 -0
  1759. package/vendor/rocksdb/utilities/cassandra/cassandra_compaction_filter.cc +106 -0
  1760. package/vendor/rocksdb/utilities/cassandra/cassandra_compaction_filter.h +57 -0
  1761. package/vendor/rocksdb/utilities/cassandra/cassandra_format_test.cc +377 -0
  1762. package/vendor/rocksdb/utilities/cassandra/cassandra_functional_test.cc +444 -0
  1763. package/vendor/rocksdb/utilities/cassandra/cassandra_options.h +41 -0
  1764. package/vendor/rocksdb/utilities/cassandra/cassandra_row_merge_test.cc +98 -0
  1765. package/vendor/rocksdb/utilities/cassandra/cassandra_serialize_test.cc +164 -0
  1766. package/vendor/rocksdb/utilities/cassandra/format.cc +367 -0
  1767. package/vendor/rocksdb/utilities/cassandra/format.h +183 -0
  1768. package/vendor/rocksdb/utilities/cassandra/merge_operator.cc +80 -0
  1769. package/vendor/rocksdb/utilities/cassandra/merge_operator.h +44 -0
  1770. package/vendor/rocksdb/utilities/cassandra/serialize.h +81 -0
  1771. package/vendor/rocksdb/utilities/cassandra/test_utils.cc +69 -0
  1772. package/vendor/rocksdb/utilities/cassandra/test_utils.h +42 -0
  1773. package/vendor/rocksdb/utilities/checkpoint/checkpoint_impl.cc +470 -0
  1774. package/vendor/rocksdb/utilities/checkpoint/checkpoint_impl.h +64 -0
  1775. package/vendor/rocksdb/utilities/checkpoint/checkpoint_test.cc +988 -0
  1776. package/vendor/rocksdb/utilities/compaction_filters/layered_compaction_filter_base.h +41 -0
  1777. package/vendor/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.cc +24 -0
  1778. package/vendor/rocksdb/utilities/compaction_filters/remove_emptyvalue_compactionfilter.h +26 -0
  1779. package/vendor/rocksdb/utilities/compaction_filters.cc +52 -0
  1780. package/vendor/rocksdb/utilities/convenience/info_log_finder.cc +26 -0
  1781. package/vendor/rocksdb/utilities/counted_fs.cc +379 -0
  1782. package/vendor/rocksdb/utilities/counted_fs.h +158 -0
  1783. package/vendor/rocksdb/utilities/debug.cc +118 -0
  1784. package/vendor/rocksdb/utilities/env_mirror.cc +273 -0
  1785. package/vendor/rocksdb/utilities/env_mirror_test.cc +216 -0
  1786. package/vendor/rocksdb/utilities/env_timed.cc +181 -0
  1787. package/vendor/rocksdb/utilities/env_timed.h +95 -0
  1788. package/vendor/rocksdb/utilities/env_timed_test.cc +34 -0
  1789. package/vendor/rocksdb/utilities/fault_injection_env.cc +555 -0
  1790. package/vendor/rocksdb/utilities/fault_injection_env.h +258 -0
  1791. package/vendor/rocksdb/utilities/fault_injection_fs.cc +1071 -0
  1792. package/vendor/rocksdb/utilities/fault_injection_fs.h +593 -0
  1793. package/vendor/rocksdb/utilities/fault_injection_secondary_cache.cc +136 -0
  1794. package/vendor/rocksdb/utilities/fault_injection_secondary_cache.h +109 -0
  1795. package/vendor/rocksdb/utilities/leveldb_options/leveldb_options.cc +57 -0
  1796. package/vendor/rocksdb/utilities/memory/memory_test.cc +269 -0
  1797. package/vendor/rocksdb/utilities/memory/memory_util.cc +50 -0
  1798. package/vendor/rocksdb/utilities/memory_allocators.h +103 -0
  1799. package/vendor/rocksdb/utilities/merge_operators/bytesxor.cc +57 -0
  1800. package/vendor/rocksdb/utilities/merge_operators/bytesxor.h +40 -0
  1801. package/vendor/rocksdb/utilities/merge_operators/max.cc +64 -0
  1802. package/vendor/rocksdb/utilities/merge_operators/max_operator.h +35 -0
  1803. package/vendor/rocksdb/utilities/merge_operators/put.cc +74 -0
  1804. package/vendor/rocksdb/utilities/merge_operators/put_operator.h +56 -0
  1805. package/vendor/rocksdb/utilities/merge_operators/sortlist.cc +95 -0
  1806. package/vendor/rocksdb/utilities/merge_operators/sortlist.h +42 -0
  1807. package/vendor/rocksdb/utilities/merge_operators/string_append/stringappend.cc +76 -0
  1808. package/vendor/rocksdb/utilities/merge_operators/string_append/stringappend.h +32 -0
  1809. package/vendor/rocksdb/utilities/merge_operators/string_append/stringappend2.cc +130 -0
  1810. package/vendor/rocksdb/utilities/merge_operators/string_append/stringappend2.h +52 -0
  1811. package/vendor/rocksdb/utilities/merge_operators/string_append/stringappend_test.cc +636 -0
  1812. package/vendor/rocksdb/utilities/merge_operators/uint64add.cc +56 -0
  1813. package/vendor/rocksdb/utilities/merge_operators/uint64add.h +35 -0
  1814. package/vendor/rocksdb/utilities/merge_operators.cc +115 -0
  1815. package/vendor/rocksdb/utilities/merge_operators.h +36 -0
  1816. package/vendor/rocksdb/utilities/object_registry.cc +381 -0
  1817. package/vendor/rocksdb/utilities/object_registry_test.cc +862 -0
  1818. package/vendor/rocksdb/utilities/option_change_migration/option_change_migration.cc +176 -0
  1819. package/vendor/rocksdb/utilities/option_change_migration/option_change_migration_test.cc +548 -0
  1820. package/vendor/rocksdb/utilities/options/options_util.cc +117 -0
  1821. package/vendor/rocksdb/utilities/options/options_util_test.cc +782 -0
  1822. package/vendor/rocksdb/utilities/persistent_cache/block_cache_tier.cc +420 -0
  1823. package/vendor/rocksdb/utilities/persistent_cache/block_cache_tier.h +154 -0
  1824. package/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file.cc +608 -0
  1825. package/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file.h +291 -0
  1826. package/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_file_buffer.h +127 -0
  1827. package/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.cc +84 -0
  1828. package/vendor/rocksdb/utilities/persistent_cache/block_cache_tier_metadata.h +122 -0
  1829. package/vendor/rocksdb/utilities/persistent_cache/hash_table.h +237 -0
  1830. package/vendor/rocksdb/utilities/persistent_cache/hash_table_bench.cc +310 -0
  1831. package/vendor/rocksdb/utilities/persistent_cache/hash_table_evictable.h +166 -0
  1832. package/vendor/rocksdb/utilities/persistent_cache/hash_table_test.cc +161 -0
  1833. package/vendor/rocksdb/utilities/persistent_cache/lrulist.h +172 -0
  1834. package/vendor/rocksdb/utilities/persistent_cache/persistent_cache_bench.cc +355 -0
  1835. package/vendor/rocksdb/utilities/persistent_cache/persistent_cache_test.cc +413 -0
  1836. package/vendor/rocksdb/utilities/persistent_cache/persistent_cache_test.h +284 -0
  1837. package/vendor/rocksdb/utilities/persistent_cache/persistent_cache_tier.cc +165 -0
  1838. package/vendor/rocksdb/utilities/persistent_cache/persistent_cache_tier.h +340 -0
  1839. package/vendor/rocksdb/utilities/persistent_cache/persistent_cache_util.h +67 -0
  1840. package/vendor/rocksdb/utilities/persistent_cache/volatile_tier_impl.cc +138 -0
  1841. package/vendor/rocksdb/utilities/persistent_cache/volatile_tier_impl.h +139 -0
  1842. package/vendor/rocksdb/utilities/simulator_cache/cache_simulator.cc +287 -0
  1843. package/vendor/rocksdb/utilities/simulator_cache/cache_simulator.h +231 -0
  1844. package/vendor/rocksdb/utilities/simulator_cache/cache_simulator_test.cc +497 -0
  1845. package/vendor/rocksdb/utilities/simulator_cache/sim_cache.cc +372 -0
  1846. package/vendor/rocksdb/utilities/simulator_cache/sim_cache_test.cc +226 -0
  1847. package/vendor/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.cc +221 -0
  1848. package/vendor/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector.h +68 -0
  1849. package/vendor/rocksdb/utilities/table_properties_collectors/compact_on_deletion_collector_test.cc +238 -0
  1850. package/vendor/rocksdb/utilities/trace/file_trace_reader_writer.cc +133 -0
  1851. package/vendor/rocksdb/utilities/trace/file_trace_reader_writer.h +48 -0
  1852. package/vendor/rocksdb/utilities/trace/replayer_impl.cc +314 -0
  1853. package/vendor/rocksdb/utilities/trace/replayer_impl.h +84 -0
  1854. package/vendor/rocksdb/utilities/transactions/lock/lock_manager.cc +27 -0
  1855. package/vendor/rocksdb/utilities/transactions/lock/lock_manager.h +80 -0
  1856. package/vendor/rocksdb/utilities/transactions/lock/lock_tracker.h +207 -0
  1857. package/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager.cc +719 -0
  1858. package/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager.h +222 -0
  1859. package/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager_test.cc +170 -0
  1860. package/vendor/rocksdb/utilities/transactions/lock/point/point_lock_manager_test.h +324 -0
  1861. package/vendor/rocksdb/utilities/transactions/lock/point/point_lock_tracker.cc +255 -0
  1862. package/vendor/rocksdb/utilities/transactions/lock/point/point_lock_tracker.h +97 -0
  1863. package/vendor/rocksdb/utilities/transactions/lock/range/range_lock_manager.h +34 -0
  1864. package/vendor/rocksdb/utilities/transactions/lock/range/range_locking_test.cc +448 -0
  1865. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/COPYING.AGPLv3 +661 -0
  1866. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/COPYING.APACHEv2 +174 -0
  1867. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/COPYING.GPLv2 +339 -0
  1868. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/README +13 -0
  1869. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/db.h +76 -0
  1870. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/ft/comparator.h +138 -0
  1871. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/ft/ft-status.h +102 -0
  1872. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/concurrent_tree.cc +137 -0
  1873. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/concurrent_tree.h +174 -0
  1874. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/keyrange.cc +220 -0
  1875. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/keyrange.h +141 -0
  1876. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/lock_request.cc +525 -0
  1877. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/lock_request.h +255 -0
  1878. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/locktree.cc +1021 -0
  1879. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/locktree.h +580 -0
  1880. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/manager.cc +525 -0
  1881. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/range_buffer.cc +263 -0
  1882. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/range_buffer.h +178 -0
  1883. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/treenode.cc +518 -0
  1884. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/treenode.h +302 -0
  1885. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/txnid_set.cc +118 -0
  1886. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/txnid_set.h +92 -0
  1887. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/wfg.cc +211 -0
  1888. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/locktree/wfg.h +124 -0
  1889. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/memory.h +215 -0
  1890. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_assert_subst.h +39 -0
  1891. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_atomic.h +130 -0
  1892. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_external_pthread.h +83 -0
  1893. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_instrumentation.h +286 -0
  1894. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_portability.h +87 -0
  1895. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_pthread.h +520 -0
  1896. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_race_tools.h +179 -0
  1897. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/toku_time.h +197 -0
  1898. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/portability/txn_subst.h +27 -0
  1899. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/standalone_port.cc +130 -0
  1900. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/dbt.cc +151 -0
  1901. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/dbt.h +98 -0
  1902. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/growable_array.h +144 -0
  1903. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/memarena.cc +199 -0
  1904. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/memarena.h +141 -0
  1905. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/omt.h +794 -0
  1906. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/omt_impl.h +1295 -0
  1907. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/partitioned_counter.h +165 -0
  1908. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/lib/util/status.h +76 -0
  1909. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_manager.cc +501 -0
  1910. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_manager.h +135 -0
  1911. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_tracker.cc +154 -0
  1912. package/vendor/rocksdb/utilities/transactions/lock/range/range_tree/range_tree_lock_tracker.h +146 -0
  1913. package/vendor/rocksdb/utilities/transactions/optimistic_transaction.cc +194 -0
  1914. package/vendor/rocksdb/utilities/transactions/optimistic_transaction.h +99 -0
  1915. package/vendor/rocksdb/utilities/transactions/optimistic_transaction_db_impl.cc +109 -0
  1916. package/vendor/rocksdb/utilities/transactions/optimistic_transaction_db_impl.h +86 -0
  1917. package/vendor/rocksdb/utilities/transactions/optimistic_transaction_test.cc +1479 -0
  1918. package/vendor/rocksdb/utilities/transactions/pessimistic_transaction.cc +1177 -0
  1919. package/vendor/rocksdb/utilities/transactions/pessimistic_transaction.h +311 -0
  1920. package/vendor/rocksdb/utilities/transactions/pessimistic_transaction_db.cc +780 -0
  1921. package/vendor/rocksdb/utilities/transactions/pessimistic_transaction_db.h +316 -0
  1922. package/vendor/rocksdb/utilities/transactions/snapshot_checker.cc +37 -0
  1923. package/vendor/rocksdb/utilities/transactions/timestamped_snapshot_test.cc +457 -0
  1924. package/vendor/rocksdb/utilities/transactions/transaction_base.cc +757 -0
  1925. package/vendor/rocksdb/utilities/transactions/transaction_base.h +382 -0
  1926. package/vendor/rocksdb/utilities/transactions/transaction_db_mutex_impl.cc +133 -0
  1927. package/vendor/rocksdb/utilities/transactions/transaction_db_mutex_impl.h +24 -0
  1928. package/vendor/rocksdb/utilities/transactions/transaction_test.cc +6751 -0
  1929. package/vendor/rocksdb/utilities/transactions/transaction_test.h +578 -0
  1930. package/vendor/rocksdb/utilities/transactions/transaction_util.cc +204 -0
  1931. package/vendor/rocksdb/utilities/transactions/transaction_util.h +83 -0
  1932. package/vendor/rocksdb/utilities/transactions/write_committed_transaction_ts_test.cc +578 -0
  1933. package/vendor/rocksdb/utilities/transactions/write_prepared_transaction_test.cc +4066 -0
  1934. package/vendor/rocksdb/utilities/transactions/write_prepared_txn.cc +515 -0
  1935. package/vendor/rocksdb/utilities/transactions/write_prepared_txn.h +117 -0
  1936. package/vendor/rocksdb/utilities/transactions/write_prepared_txn_db.cc +1038 -0
  1937. package/vendor/rocksdb/utilities/transactions/write_prepared_txn_db.h +1123 -0
  1938. package/vendor/rocksdb/utilities/transactions/write_unprepared_transaction_test.cc +779 -0
  1939. package/vendor/rocksdb/utilities/transactions/write_unprepared_txn.cc +1056 -0
  1940. package/vendor/rocksdb/utilities/transactions/write_unprepared_txn.h +339 -0
  1941. package/vendor/rocksdb/utilities/transactions/write_unprepared_txn_db.cc +476 -0
  1942. package/vendor/rocksdb/utilities/transactions/write_unprepared_txn_db.h +106 -0
  1943. package/vendor/rocksdb/utilities/ttl/db_ttl_impl.cc +617 -0
  1944. package/vendor/rocksdb/utilities/ttl/db_ttl_impl.h +243 -0
  1945. package/vendor/rocksdb/utilities/ttl/ttl_test.cc +913 -0
  1946. package/vendor/rocksdb/utilities/util_merge_operators_test.cc +100 -0
  1947. package/vendor/rocksdb/utilities/wal_filter.cc +22 -0
  1948. package/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index.cc +694 -0
  1949. package/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.cc +742 -0
  1950. package/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index_internal.h +342 -0
  1951. package/vendor/rocksdb/utilities/write_batch_with_index/write_batch_with_index_test.cc +2409 -0
@@ -0,0 +1,2162 @@
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
+ package org.rocksdb;
7
+
8
+ import java.util.ArrayList;
9
+ import java.util.Arrays;
10
+ import java.util.List;
11
+
12
+ /**
13
+ * Provides BEGIN/COMMIT/ROLLBACK transactions.
14
+ * <p>
15
+ * To use transactions, you must first create either an
16
+ * {@link OptimisticTransactionDB} or a {@link TransactionDB}
17
+ *
18
+ * To create a transaction, use
19
+ * {@link OptimisticTransactionDB#beginTransaction(org.rocksdb.WriteOptions)} or
20
+ * {@link TransactionDB#beginTransaction(org.rocksdb.WriteOptions)}
21
+ *
22
+ * It is up to the caller to synchronize access to this object.
23
+ * <p>
24
+ * See samples/src/main/java/OptimisticTransactionSample.java and
25
+ * samples/src/main/java/TransactionSample.java for some simple
26
+ * examples.
27
+ */
28
+ public class Transaction extends RocksObject {
29
+
30
+ private final RocksDB parent;
31
+
32
+ /**
33
+ * Intentionally package private
34
+ * as this is called from
35
+ * {@link OptimisticTransactionDB#beginTransaction(org.rocksdb.WriteOptions)}
36
+ * or {@link TransactionDB#beginTransaction(org.rocksdb.WriteOptions)}
37
+ *
38
+ * @param parent This must be either {@link TransactionDB} or
39
+ * {@link OptimisticTransactionDB}
40
+ * @param transactionHandle The native handle to the underlying C++
41
+ * transaction object
42
+ */
43
+ Transaction(final RocksDB parent, final long transactionHandle) {
44
+ super(transactionHandle);
45
+ this.parent = parent;
46
+ }
47
+
48
+ /**
49
+ * If a transaction has a snapshot set, the transaction will ensure that
50
+ * any keys successfully written (or fetched via {@link #getForUpdate}) have
51
+ * not been modified outside of this transaction since the time the snapshot
52
+ * was set.
53
+ * <p>
54
+ * If a snapshot has not been set, the transaction guarantees that keys have
55
+ * not been modified since the time each key was first written (or fetched via
56
+ * {@link #getForUpdate}).
57
+ * <p>
58
+ * Using {@code #setSnapshot()} will provide stricter isolation guarantees
59
+ * at the expense of potentially more transaction failures due to conflicts
60
+ * with other writes.
61
+ * <p>
62
+ * Calling {@code #setSnapshot()} has no effect on keys written before this
63
+ * function has been called.
64
+ * <p>
65
+ * {@code #setSnapshot()} may be called multiple times if you would like to
66
+ * change the snapshot used for different operations in this transaction.
67
+ * <p>
68
+ * Calling {@code #setSnapshot()} will not affect the version of Data returned
69
+ * by get(...) methods. See {@link #get} for more details.
70
+ */
71
+ public void setSnapshot() {
72
+ assert(isOwningHandle());
73
+ setSnapshot(nativeHandle_);
74
+ }
75
+
76
+ /**
77
+ * Similar to {@link #setSnapshot()}, but will not change the current snapshot
78
+ * until put/merge/delete/getForUpdate/multiGetForUpdate is called.
79
+ * By calling this function, the transaction will essentially call
80
+ * {@link #setSnapshot()} for you right before performing the next
81
+ * write/getForUpdate.
82
+ * <p>
83
+ * Calling {@code #setSnapshotOnNextOperation()} will not affect what
84
+ * snapshot is returned by {@link #getSnapshot} until the next
85
+ * write/getForUpdate is executed.
86
+ * <p>
87
+ * When the snapshot is created the notifier's snapshotCreated method will
88
+ * be called so that the caller can get access to the snapshot.
89
+ * <p>
90
+ * This is an optimization to reduce the likelihood of conflicts that
91
+ * could occur in between the time {@link #setSnapshot()} is called and the
92
+ * first write/getForUpdate operation. i.e. this prevents the following
93
+ * race-condition:
94
+ * <p>
95
+ * txn1-&gt;setSnapshot();
96
+ * txn2-&gt;put("A", ...);
97
+ * txn2-&gt;commit();
98
+ * txn1-&gt;getForUpdate(opts, "A", ...); * FAIL!
99
+ */
100
+ public void setSnapshotOnNextOperation() {
101
+ assert(isOwningHandle());
102
+ setSnapshotOnNextOperation(nativeHandle_);
103
+ }
104
+
105
+ /**
106
+ * Similar to {@link #setSnapshot()}, but will not change the current snapshot
107
+ * until put/merge/delete/getForUpdate/multiGetForUpdate is called.
108
+ * By calling this function, the transaction will essentially call
109
+ * {@link #setSnapshot()} for you right before performing the next
110
+ * write/getForUpdate.
111
+ * <p>
112
+ * Calling {@link #setSnapshotOnNextOperation()} will not affect what
113
+ * snapshot is returned by {@link #getSnapshot} until the next
114
+ * write/getForUpdate is executed.
115
+ * <p>
116
+ * When the snapshot is created the
117
+ * {@link AbstractTransactionNotifier#snapshotCreated(Snapshot)} method will
118
+ * be called so that the caller can get access to the snapshot.
119
+ * <p>
120
+ * This is an optimization to reduce the likelihood of conflicts that
121
+ * could occur in between the time {@link #setSnapshot()} is called and the
122
+ * first write/getForUpdate operation. i.e. this prevents the following
123
+ * race-condition:
124
+ * <p>
125
+ * txn1-&gt;setSnapshot();
126
+ * txn2-&gt;put("A", ...);
127
+ * txn2-&gt;commit();
128
+ * txn1-&gt;getForUpdate(opts, "A", ...); * FAIL!
129
+ *
130
+ * @param transactionNotifier A handler for receiving snapshot notifications
131
+ * for the transaction
132
+ *
133
+ */
134
+ public void setSnapshotOnNextOperation(
135
+ final AbstractTransactionNotifier transactionNotifier) {
136
+ assert(isOwningHandle());
137
+ setSnapshotOnNextOperation(nativeHandle_, transactionNotifier.nativeHandle_);
138
+ }
139
+
140
+ /**
141
+ * Returns the Snapshot created by the last call to {@link #setSnapshot()}.
142
+ * <p>
143
+ * REQUIRED: The returned Snapshot is only valid up until the next time
144
+ * {@link #setSnapshot()}/{@link #setSnapshotOnNextOperation()} is called,
145
+ * {@link #clearSnapshot()} is called, or the Transaction is deleted.
146
+ *
147
+ * @return The snapshot or null if there is no snapshot
148
+ */
149
+ public Snapshot getSnapshot() {
150
+ assert(isOwningHandle());
151
+ final long snapshotNativeHandle = getSnapshot(nativeHandle_);
152
+ if(snapshotNativeHandle == 0) {
153
+ return null;
154
+ } else {
155
+ return new Snapshot(snapshotNativeHandle);
156
+ }
157
+ }
158
+
159
+ /**
160
+ * Clears the current snapshot (i.e. no snapshot will be 'set')
161
+ * <p>
162
+ * This removes any snapshot that currently exists or is set to be created
163
+ * on the next update operation ({@link #setSnapshotOnNextOperation()}).
164
+ * <p>
165
+ * Calling {@code #clearSnapshot()} has no effect on keys written before this
166
+ * function has been called.
167
+ * <p>
168
+ * If a reference to a snapshot was retrieved via {@link #getSnapshot()}, it
169
+ * will no longer be valid and should be discarded after a call to
170
+ * {@code #clearSnapshot()}.
171
+ */
172
+ public void clearSnapshot() {
173
+ assert(isOwningHandle());
174
+ clearSnapshot(nativeHandle_);
175
+ }
176
+
177
+ /**
178
+ * Prepare the current transaction for 2PC
179
+ */
180
+ public void prepare() throws RocksDBException {
181
+ //TODO(AR) consider a Java'ish version of this function, which returns an AutoCloseable (commit)
182
+ assert(isOwningHandle());
183
+ prepare(nativeHandle_);
184
+ }
185
+
186
+ /**
187
+ * Write all batched keys to the db atomically.
188
+ * <p>
189
+ * Returns OK on success.
190
+ * <p>
191
+ * May return any error status that could be returned by DB:Write().
192
+ * <p>
193
+ * If this transaction was created by an {@link OptimisticTransactionDB}
194
+ * Status::Busy() may be returned if the transaction could not guarantee
195
+ * that there are no write conflicts. Status::TryAgain() may be returned
196
+ * if the memtable history size is not large enough
197
+ * (See max_write_buffer_number_to_maintain).
198
+ * <p>
199
+ * If this transaction was created by a {@link TransactionDB},
200
+ * Status::Expired() may be returned if this transaction has lived for
201
+ * longer than {@link TransactionOptions#getExpiration()}.
202
+ *
203
+ * @throws RocksDBException if an error occurs when committing the transaction
204
+ */
205
+ public void commit() throws RocksDBException {
206
+ assert(isOwningHandle());
207
+ commit(nativeHandle_);
208
+ }
209
+
210
+ /**
211
+ * Discard all batched writes in this transaction.
212
+ *
213
+ * @throws RocksDBException if an error occurs when rolling back the transaction
214
+ */
215
+ public void rollback() throws RocksDBException {
216
+ assert(isOwningHandle());
217
+ rollback(nativeHandle_);
218
+ }
219
+
220
+ /**
221
+ * Records the state of the transaction for future calls to
222
+ * {@link #rollbackToSavePoint()}.
223
+ * <p>
224
+ * May be called multiple times to set multiple save points.
225
+ *
226
+ * @throws RocksDBException if an error occurs whilst setting a save point
227
+ */
228
+ public void setSavePoint() throws RocksDBException {
229
+ assert(isOwningHandle());
230
+ setSavePoint(nativeHandle_);
231
+ }
232
+
233
+ /**
234
+ * Undo all operations in this transaction (put, merge, delete, putLogData)
235
+ * since the most recent call to {@link #setSavePoint()} and removes the most
236
+ * recent {@link #setSavePoint()}.
237
+ * <p>
238
+ * If there is no previous call to {@link #setSavePoint()},
239
+ * returns Status::NotFound()
240
+ *
241
+ * @throws RocksDBException if an error occurs when rolling back to a save point
242
+ */
243
+ public void rollbackToSavePoint() throws RocksDBException {
244
+ assert(isOwningHandle());
245
+ rollbackToSavePoint(nativeHandle_);
246
+ }
247
+
248
+ /**
249
+ * This function is similar to
250
+ * {@link RocksDB#get(ColumnFamilyHandle, ReadOptions, byte[])} except it will
251
+ * also read pending changes in this transaction.
252
+ * Currently, this function will return Status::MergeInProgress if the most
253
+ * recent write to the queried key in this batch is a Merge.
254
+ * <p>
255
+ * If {@link ReadOptions#snapshot()} is not set, the current version of the
256
+ * key will be read. Calling {@link #setSnapshot()} does not affect the
257
+ * version of the data returned.
258
+ * <p>
259
+ * Note that setting {@link ReadOptions#setSnapshot(Snapshot)} will affect
260
+ * what is read from the DB but will NOT change which keys are read from this
261
+ * transaction (the keys in this transaction do not yet belong to any snapshot
262
+ * and will be fetched regardless).
263
+ *
264
+ * @param columnFamilyHandle {@link org.rocksdb.ColumnFamilyHandle} instance
265
+ * @param readOptions Read options.
266
+ * @param key the key to retrieve the value for.
267
+ *
268
+ * @return a byte array storing the value associated with the input key if
269
+ * any. null if it does not find the specified key.
270
+ *
271
+ * @throws RocksDBException thrown if error happens in underlying native
272
+ * library.
273
+ */
274
+ public byte[] get(final ColumnFamilyHandle columnFamilyHandle,
275
+ final ReadOptions readOptions, final byte[] key) throws RocksDBException {
276
+ assert(isOwningHandle());
277
+ return get(nativeHandle_, readOptions.nativeHandle_, key, key.length,
278
+ columnFamilyHandle.nativeHandle_);
279
+ }
280
+
281
+ /**
282
+ * This function is similar to
283
+ * {@link RocksDB#get(ReadOptions, byte[])} except it will
284
+ * also read pending changes in this transaction.
285
+ * Currently, this function will return Status::MergeInProgress if the most
286
+ * recent write to the queried key in this batch is a Merge.
287
+ * <p>
288
+ * If {@link ReadOptions#snapshot()} is not set, the current version of the
289
+ * key will be read. Calling {@link #setSnapshot()} does not affect the
290
+ * version of the data returned.
291
+ * <p>
292
+ * Note that setting {@link ReadOptions#setSnapshot(Snapshot)} will affect
293
+ * what is read from the DB but will NOT change which keys are read from this
294
+ * transaction (the keys in this transaction do not yet belong to any snapshot
295
+ * and will be fetched regardless).
296
+ *
297
+ * @param readOptions Read options.
298
+ * @param key the key to retrieve the value for.
299
+ *
300
+ * @return a byte array storing the value associated with the input key if
301
+ * any. null if it does not find the specified key.
302
+ *
303
+ * @throws RocksDBException thrown if error happens in underlying native
304
+ * library.
305
+ */
306
+ public byte[] get(final ReadOptions readOptions, final byte[] key)
307
+ throws RocksDBException {
308
+ assert(isOwningHandle());
309
+ return get(nativeHandle_, readOptions.nativeHandle_, key, key.length);
310
+ }
311
+
312
+ /**
313
+ * This function is similar to
314
+ * {@link RocksDB#multiGetAsList} except it will
315
+ * also read pending changes in this transaction.
316
+ * Currently, this function will return Status::MergeInProgress if the most
317
+ * recent write to the queried key in this batch is a Merge.
318
+ * <p>
319
+ * If {@link ReadOptions#snapshot()} is not set, the current version of the
320
+ * key will be read. Calling {@link #setSnapshot()} does not affect the
321
+ * version of the data returned.
322
+ * <p>
323
+ * Note that setting {@link ReadOptions#setSnapshot(Snapshot)} will affect
324
+ * what is read from the DB but will NOT change which keys are read from this
325
+ * transaction (the keys in this transaction do not yet belong to any snapshot
326
+ * and will be fetched regardless).
327
+ *
328
+ * @param readOptions Read options.
329
+ * @param columnFamilyHandles {@link java.util.List} containing
330
+ * {@link org.rocksdb.ColumnFamilyHandle} instances.
331
+ * @param keys of keys for which values need to be retrieved.
332
+ *
333
+ * @return Array of values, one for each key
334
+ *
335
+ * @throws RocksDBException thrown if error happens in underlying
336
+ * native library.
337
+ * @throws IllegalArgumentException thrown if the size of passed keys is not
338
+ * equal to the amount of passed column family handles.
339
+ */
340
+ @Deprecated
341
+ public byte[][] multiGet(final ReadOptions readOptions,
342
+ final List<ColumnFamilyHandle> columnFamilyHandles, final byte[][] keys)
343
+ throws RocksDBException {
344
+ assert(isOwningHandle());
345
+ // Check if key size equals cfList size. If not a exception must be
346
+ // thrown. If not a Segmentation fault happens.
347
+ if (keys.length != columnFamilyHandles.size()) {
348
+ throw new IllegalArgumentException(
349
+ "For each key there must be a ColumnFamilyHandle.");
350
+ }
351
+ if(keys.length == 0) {
352
+ return new byte[0][0];
353
+ }
354
+ final long[] cfHandles = new long[columnFamilyHandles.size()];
355
+ for (int i = 0; i < columnFamilyHandles.size(); i++) {
356
+ cfHandles[i] = columnFamilyHandles.get(i).nativeHandle_;
357
+ }
358
+
359
+ return multiGet(nativeHandle_, readOptions.nativeHandle_,
360
+ keys, cfHandles);
361
+ }
362
+
363
+ /**
364
+ * This function is similar to
365
+ * {@link RocksDB#multiGetAsList(ReadOptions, List, List)} except it will
366
+ * also read pending changes in this transaction.
367
+ * Currently, this function will return Status::MergeInProgress if the most
368
+ * recent write to the queried key in this batch is a Merge.
369
+ * <p>
370
+ * If {@link ReadOptions#snapshot()} is not set, the current version of the
371
+ * key will be read. Calling {@link #setSnapshot()} does not affect the
372
+ * version of the data returned.
373
+ * <p>
374
+ * Note that setting {@link ReadOptions#setSnapshot(Snapshot)} will affect
375
+ * what is read from the DB but will NOT change which keys are read from this
376
+ * transaction (the keys in this transaction do not yet belong to any snapshot
377
+ * and will be fetched regardless).
378
+ *
379
+ * @param readOptions Read options.
380
+ * @param columnFamilyHandles {@link java.util.List} containing
381
+ * {@link org.rocksdb.ColumnFamilyHandle} instances.
382
+ * @param keys of keys for which values need to be retrieved.
383
+ *
384
+ * @return Array of values, one for each key
385
+ *
386
+ * @throws RocksDBException thrown if error happens in underlying
387
+ * native library.
388
+ * @throws IllegalArgumentException thrown if the size of passed keys is not
389
+ * equal to the amount of passed column family handles.
390
+ */
391
+
392
+ public List<byte[]> multiGetAsList(final ReadOptions readOptions,
393
+ final List<ColumnFamilyHandle> columnFamilyHandles, final List<byte[]> keys)
394
+ throws RocksDBException {
395
+ assert (isOwningHandle());
396
+ // Check if key size equals cfList size. If not a exception must be
397
+ // thrown. If not a Segmentation fault happens.
398
+ if (keys.size() != columnFamilyHandles.size()) {
399
+ throw new IllegalArgumentException("For each key there must be a ColumnFamilyHandle.");
400
+ }
401
+ if (keys.size() == 0) {
402
+ return new ArrayList<>(0);
403
+ }
404
+ final byte[][] keysArray = keys.toArray(new byte[keys.size()][]);
405
+ final long[] cfHandles = new long[columnFamilyHandles.size()];
406
+ for (int i = 0; i < columnFamilyHandles.size(); i++) {
407
+ cfHandles[i] = columnFamilyHandles.get(i).nativeHandle_;
408
+ }
409
+
410
+ return Arrays.asList(multiGet(nativeHandle_, readOptions.nativeHandle_, keysArray, cfHandles));
411
+ }
412
+
413
+ /**
414
+ * This function is similar to
415
+ * {@link RocksDB#multiGetAsList} except it will
416
+ * also read pending changes in this transaction.
417
+ * Currently, this function will return Status::MergeInProgress if the most
418
+ * recent write to the queried key in this batch is a Merge.
419
+ * <p>
420
+ * If {@link ReadOptions#snapshot()} is not set, the current version of the
421
+ * key will be read. Calling {@link #setSnapshot()} does not affect the
422
+ * version of the data returned.
423
+ * <p>
424
+ * Note that setting {@link ReadOptions#setSnapshot(Snapshot)} will affect
425
+ * what is read from the DB but will NOT change which keys are read from this
426
+ * transaction (the keys in this transaction do not yet belong to any snapshot
427
+ * and will be fetched regardless).
428
+ *
429
+ * @param readOptions Read options.=
430
+ * {@link org.rocksdb.ColumnFamilyHandle} instances.
431
+ * @param keys of keys for which values need to be retrieved.
432
+ *
433
+ * @return Array of values, one for each key
434
+ *
435
+ * @throws RocksDBException thrown if error happens in underlying
436
+ * native library.
437
+ */
438
+ @Deprecated
439
+ public byte[][] multiGet(final ReadOptions readOptions, final byte[][] keys)
440
+ throws RocksDBException {
441
+ assert(isOwningHandle());
442
+ if(keys.length == 0) {
443
+ return new byte[0][0];
444
+ }
445
+
446
+ return multiGet(nativeHandle_, readOptions.nativeHandle_,
447
+ keys);
448
+ }
449
+
450
+ /**
451
+ * This function is similar to
452
+ * {@link RocksDB#multiGetAsList} except it will
453
+ * also read pending changes in this transaction.
454
+ * Currently, this function will return Status::MergeInProgress if the most
455
+ * recent write to the queried key in this batch is a Merge.
456
+ * <p>
457
+ * If {@link ReadOptions#snapshot()} is not set, the current version of the
458
+ * key will be read. Calling {@link #setSnapshot()} does not affect the
459
+ * version of the data returned.
460
+ * <p>
461
+ * Note that setting {@link ReadOptions#setSnapshot(Snapshot)} will affect
462
+ * what is read from the DB but will NOT change which keys are read from this
463
+ * transaction (the keys in this transaction do not yet belong to any snapshot
464
+ * and will be fetched regardless).
465
+ *
466
+ * @param readOptions Read options.=
467
+ * {@link org.rocksdb.ColumnFamilyHandle} instances.
468
+ * @param keys of keys for which values need to be retrieved.
469
+ *
470
+ * @return Array of values, one for each key
471
+ *
472
+ * @throws RocksDBException thrown if error happens in underlying
473
+ * native library.
474
+ */
475
+ public List<byte[]> multiGetAsList(final ReadOptions readOptions, final List<byte[]> keys)
476
+ throws RocksDBException {
477
+ if (keys.size() == 0) {
478
+ return new ArrayList<>(0);
479
+ }
480
+ final byte[][] keysArray = keys.toArray(new byte[keys.size()][]);
481
+
482
+ return Arrays.asList(multiGet(nativeHandle_, readOptions.nativeHandle_, keysArray));
483
+ }
484
+
485
+ /**
486
+ * Read this key and ensure that this transaction will only
487
+ * be able to be committed if this key is not written outside this
488
+ * transaction after it has first been read (or after the snapshot if a
489
+ * snapshot is set in this transaction). The transaction behavior is the
490
+ * same regardless of whether the key exists or not.
491
+ * <p>
492
+ * Note: Currently, this function will return Status::MergeInProgress
493
+ * if the most recent write to the queried key in this batch is a Merge.
494
+ * <p>
495
+ * The values returned by this function are similar to
496
+ * {@link RocksDB#get(ColumnFamilyHandle, ReadOptions, byte[])}.
497
+ * If value==nullptr, then this function will not read any data, but will
498
+ * still ensure that this key cannot be written to by outside of this
499
+ * transaction.
500
+ * <p>
501
+ * If this transaction was created by an {@link OptimisticTransactionDB},
502
+ * {@link #getForUpdate(ReadOptions, ColumnFamilyHandle, byte[], boolean)}
503
+ * could cause {@link #commit()} to fail. Otherwise, it could return any error
504
+ * that could be returned by
505
+ * {@link RocksDB#get(ColumnFamilyHandle, ReadOptions, byte[])}.
506
+ * <p>
507
+ * If this transaction was created on a {@link TransactionDB}, an
508
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
509
+ * when:
510
+ * {@link Status.Code#Busy} if there is a write conflict,
511
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
512
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
513
+ * enough. See
514
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
515
+ * {@link Status.Code#MergeInProgress} if merge operations cannot be
516
+ * resolved.
517
+ *
518
+ * @param readOptions Read options.
519
+ * @param columnFamilyHandle {@link org.rocksdb.ColumnFamilyHandle}
520
+ * instance
521
+ * @param key the key to retrieve the value for.
522
+ * @param exclusive true if the transaction should have exclusive access to
523
+ * the key, otherwise false for shared access.
524
+ * @param doValidate true if it should validate the snapshot before doing the read
525
+ *
526
+ * @return a byte array storing the value associated with the input key if
527
+ * any. null if it does not find the specified key.
528
+ *
529
+ * @throws RocksDBException thrown if error happens in underlying
530
+ * native library.
531
+ */
532
+ public byte[] getForUpdate(final ReadOptions readOptions,
533
+ final ColumnFamilyHandle columnFamilyHandle, final byte[] key, final boolean exclusive,
534
+ final boolean doValidate) throws RocksDBException {
535
+ assert (isOwningHandle());
536
+ return getForUpdate(nativeHandle_, readOptions.nativeHandle_, key, key.length,
537
+ columnFamilyHandle.nativeHandle_, exclusive, doValidate);
538
+ }
539
+
540
+ /**
541
+ * Same as
542
+ * {@link #getForUpdate(ReadOptions, ColumnFamilyHandle, byte[], boolean, boolean)}
543
+ * with doValidate=true.
544
+ *
545
+ * @param readOptions Read options.
546
+ * @param columnFamilyHandle {@link org.rocksdb.ColumnFamilyHandle}
547
+ * instance
548
+ * @param key the key to retrieve the value for.
549
+ * @param exclusive true if the transaction should have exclusive access to
550
+ * the key, otherwise false for shared access.
551
+ *
552
+ * @return a byte array storing the value associated with the input key if
553
+ * any. null if it does not find the specified key.
554
+ *
555
+ * @throws RocksDBException thrown if error happens in underlying
556
+ * native library.
557
+ */
558
+ public byte[] getForUpdate(final ReadOptions readOptions,
559
+ final ColumnFamilyHandle columnFamilyHandle, final byte[] key,
560
+ final boolean exclusive) throws RocksDBException {
561
+ assert(isOwningHandle());
562
+ return getForUpdate(nativeHandle_, readOptions.nativeHandle_, key, key.length,
563
+ columnFamilyHandle.nativeHandle_, exclusive, true /*doValidate*/);
564
+ }
565
+
566
+ /**
567
+ * Read this key and ensure that this transaction will only
568
+ * be able to be committed if this key is not written outside this
569
+ * transaction after it has first been read (or after the snapshot if a
570
+ * snapshot is set in this transaction). The transaction behavior is the
571
+ * same regardless of whether the key exists or not.
572
+ * <p>
573
+ * Note: Currently, this function will return Status::MergeInProgress
574
+ * if the most recent write to the queried key in this batch is a Merge.
575
+ * <p>
576
+ * The values returned by this function are similar to
577
+ * {@link RocksDB#get(ReadOptions, byte[])}.
578
+ * If value==nullptr, then this function will not read any data, but will
579
+ * still ensure that this key cannot be written to by outside of this
580
+ * transaction.
581
+ * <p>
582
+ * If this transaction was created on an {@link OptimisticTransactionDB},
583
+ * {@link #getForUpdate(ReadOptions, ColumnFamilyHandle, byte[], boolean)}
584
+ * could cause {@link #commit()} to fail. Otherwise, it could return any error
585
+ * that could be returned by
586
+ * {@link RocksDB#get(ReadOptions, byte[])}.
587
+ * <p>
588
+ * If this transaction was created on a {@link TransactionDB}, an
589
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
590
+ * when:
591
+ * {@link Status.Code#Busy} if there is a write conflict,
592
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
593
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
594
+ * enough. See
595
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
596
+ * {@link Status.Code#MergeInProgress} if merge operations cannot be
597
+ * resolved.
598
+ *
599
+ * @param readOptions Read options.
600
+ * @param key the key to retrieve the value for.
601
+ * @param exclusive true if the transaction should have exclusive access to
602
+ * the key, otherwise false for shared access.
603
+ *
604
+ * @return a byte array storing the value associated with the input key if
605
+ * any. null if it does not find the specified key.
606
+ *
607
+ * @throws RocksDBException thrown if error happens in underlying
608
+ * native library.
609
+ */
610
+ public byte[] getForUpdate(final ReadOptions readOptions, final byte[] key,
611
+ final boolean exclusive) throws RocksDBException {
612
+ assert(isOwningHandle());
613
+ return getForUpdate(
614
+ nativeHandle_, readOptions.nativeHandle_, key, key.length, exclusive, true /*doValidate*/);
615
+ }
616
+
617
+ /**
618
+ * A multi-key version of
619
+ * {@link #getForUpdate(ReadOptions, ColumnFamilyHandle, byte[], boolean)}.
620
+ * <p>
621
+ *
622
+ * @param readOptions Read options.
623
+ * @param columnFamilyHandles {@link org.rocksdb.ColumnFamilyHandle}
624
+ * instances
625
+ * @param keys the keys to retrieve the values for.
626
+ *
627
+ * @return Array of values, one for each key
628
+ *
629
+ * @throws RocksDBException thrown if error happens in underlying
630
+ * native library.
631
+ */
632
+ @Deprecated
633
+ public byte[][] multiGetForUpdate(final ReadOptions readOptions,
634
+ final List<ColumnFamilyHandle> columnFamilyHandles, final byte[][] keys)
635
+ throws RocksDBException {
636
+ assert(isOwningHandle());
637
+ // Check if key size equals cfList size. If not a exception must be
638
+ // thrown. If not a Segmentation fault happens.
639
+ if (keys.length != columnFamilyHandles.size()){
640
+ throw new IllegalArgumentException(
641
+ "For each key there must be a ColumnFamilyHandle.");
642
+ }
643
+ if(keys.length == 0) {
644
+ return new byte[0][0];
645
+ }
646
+ final long[] cfHandles = new long[columnFamilyHandles.size()];
647
+ for (int i = 0; i < columnFamilyHandles.size(); i++) {
648
+ cfHandles[i] = columnFamilyHandles.get(i).nativeHandle_;
649
+ }
650
+ return multiGetForUpdate(nativeHandle_, readOptions.nativeHandle_,
651
+ keys, cfHandles);
652
+ }
653
+
654
+ /**
655
+ * A multi-key version of
656
+ * {@link #getForUpdate(ReadOptions, ColumnFamilyHandle, byte[], boolean)}.
657
+ * <p>
658
+ *
659
+ * @param readOptions Read options.
660
+ * @param columnFamilyHandles {@link org.rocksdb.ColumnFamilyHandle}
661
+ * instances
662
+ * @param keys the keys to retrieve the values for.
663
+ *
664
+ * @return Array of values, one for each key
665
+ *
666
+ * @throws RocksDBException thrown if error happens in underlying
667
+ * native library.
668
+ */
669
+ public List<byte[]> multiGetForUpdateAsList(final ReadOptions readOptions,
670
+ final List<ColumnFamilyHandle> columnFamilyHandles, final List<byte[]> keys)
671
+ throws RocksDBException {
672
+ assert (isOwningHandle());
673
+ // Check if key size equals cfList size. If not a exception must be
674
+ // thrown. If not a Segmentation fault happens.
675
+ if (keys.size() != columnFamilyHandles.size()) {
676
+ throw new IllegalArgumentException("For each key there must be a ColumnFamilyHandle.");
677
+ }
678
+ if (keys.size() == 0) {
679
+ return new ArrayList<>();
680
+ }
681
+ final byte[][] keysArray = keys.toArray(new byte[keys.size()][]);
682
+
683
+ final long[] cfHandles = new long[columnFamilyHandles.size()];
684
+ for (int i = 0; i < columnFamilyHandles.size(); i++) {
685
+ cfHandles[i] = columnFamilyHandles.get(i).nativeHandle_;
686
+ }
687
+ return Arrays.asList(
688
+ multiGetForUpdate(nativeHandle_, readOptions.nativeHandle_, keysArray, cfHandles));
689
+ }
690
+
691
+ /**
692
+ * A multi-key version of {@link #getForUpdate(ReadOptions, byte[], boolean)}.
693
+ * <p>
694
+ *
695
+ * @param readOptions Read options.
696
+ * @param keys the keys to retrieve the values for.
697
+ *
698
+ * @return Array of values, one for each key
699
+ *
700
+ * @throws RocksDBException thrown if error happens in underlying
701
+ * native library.
702
+ */
703
+ @Deprecated
704
+ public byte[][] multiGetForUpdate(final ReadOptions readOptions, final byte[][] keys)
705
+ throws RocksDBException {
706
+ assert(isOwningHandle());
707
+ if(keys.length == 0) {
708
+ return new byte[0][0];
709
+ }
710
+
711
+ return multiGetForUpdate(nativeHandle_,
712
+ readOptions.nativeHandle_, keys);
713
+ }
714
+
715
+ /**
716
+ * A multi-key version of {@link #getForUpdate(ReadOptions, byte[], boolean)}.
717
+ * <p>
718
+ *
719
+ * @param readOptions Read options.
720
+ * @param keys the keys to retrieve the values for.
721
+ *
722
+ * @return List of values, one for each key
723
+ *
724
+ * @throws RocksDBException thrown if error happens in underlying
725
+ * native library.
726
+ */
727
+ public List<byte[]> multiGetForUpdateAsList(
728
+ final ReadOptions readOptions, final List<byte[]> keys) throws RocksDBException {
729
+ assert (isOwningHandle());
730
+ if (keys.size() == 0) {
731
+ return new ArrayList<>(0);
732
+ }
733
+
734
+ final byte[][] keysArray = keys.toArray(new byte[keys.size()][]);
735
+
736
+ return Arrays.asList(multiGetForUpdate(nativeHandle_, readOptions.nativeHandle_, keysArray));
737
+ }
738
+
739
+ /**
740
+ * Returns an iterator that will iterate on all keys in the default
741
+ * column family including both keys in the DB and uncommitted keys in this
742
+ * transaction.
743
+ * <p>
744
+ * Setting {@link ReadOptions#setSnapshot(Snapshot)} will affect what is read
745
+ * from the DB but will NOT change which keys are read from this transaction
746
+ * (the keys in this transaction do not yet belong to any snapshot and will be
747
+ * fetched regardless).
748
+ * <p>
749
+ * Caller is responsible for deleting the returned Iterator.
750
+ * <p>
751
+ * The returned iterator is only valid until {@link #commit()},
752
+ * {@link #rollback()}, or {@link #rollbackToSavePoint()} is called.
753
+ *
754
+ * @param readOptions Read options.
755
+ *
756
+ * @return instance of iterator object.
757
+ */
758
+ public RocksIterator getIterator(final ReadOptions readOptions) {
759
+ assert(isOwningHandle());
760
+ return new RocksIterator(parent, getIterator(nativeHandle_,
761
+ readOptions.nativeHandle_));
762
+ }
763
+
764
+ /**
765
+ * Returns an iterator that will iterate on all keys in the column family
766
+ * specified by {@code columnFamilyHandle} including both keys in the DB
767
+ * and uncommitted keys in this transaction.
768
+ * <p>
769
+ * Setting {@link ReadOptions#setSnapshot(Snapshot)} will affect what is read
770
+ * from the DB but will NOT change which keys are read from this transaction
771
+ * (the keys in this transaction do not yet belong to any snapshot and will be
772
+ * fetched regardless).
773
+ * <p>
774
+ * Caller is responsible for calling {@link RocksIterator#close()} on
775
+ * the returned Iterator.
776
+ * <p>
777
+ * The returned iterator is only valid until {@link #commit()},
778
+ * {@link #rollback()}, or {@link #rollbackToSavePoint()} is called.
779
+ *
780
+ * @param readOptions Read options.
781
+ * @param columnFamilyHandle {@link org.rocksdb.ColumnFamilyHandle}
782
+ * instance
783
+ *
784
+ * @return instance of iterator object.
785
+ */
786
+ public RocksIterator getIterator(final ReadOptions readOptions,
787
+ final ColumnFamilyHandle columnFamilyHandle) {
788
+ assert(isOwningHandle());
789
+ return new RocksIterator(parent, getIterator(nativeHandle_,
790
+ readOptions.nativeHandle_, columnFamilyHandle.nativeHandle_));
791
+ }
792
+
793
+ /**
794
+ * Similar to {@link RocksDB#put(ColumnFamilyHandle, byte[], byte[])}, but
795
+ * will also perform conflict checking on the keys be written.
796
+ * <p>
797
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
798
+ * these functions should always succeed.
799
+ * <p>
800
+ * If this Transaction was created on a {@link TransactionDB}, an
801
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
802
+ * when:
803
+ * {@link Status.Code#Busy} if there is a write conflict,
804
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
805
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
806
+ * enough. See
807
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
808
+ *
809
+ * @param columnFamilyHandle The column family to put the key/value into
810
+ * @param key the specified key to be inserted.
811
+ * @param value the value associated with the specified key.
812
+ * @param assumeTracked true when it is expected that the key is already
813
+ * tracked. More specifically, it means the the key was previous tracked
814
+ * in the same savepoint, with the same exclusive flag, and at a lower
815
+ * sequence number. If valid then it skips ValidateSnapshot,
816
+ * throws an error otherwise.
817
+ *
818
+ * @throws RocksDBException when one of the TransactionalDB conditions
819
+ * described above occurs, or in the case of an unexpected error
820
+ */
821
+ public void put(final ColumnFamilyHandle columnFamilyHandle, final byte[] key,
822
+ final byte[] value, final boolean assumeTracked) throws RocksDBException {
823
+ assert (isOwningHandle());
824
+ put(nativeHandle_, key, key.length, value, value.length,
825
+ columnFamilyHandle.nativeHandle_, assumeTracked);
826
+ }
827
+
828
+ /**
829
+ * Similar to {@link #put(ColumnFamilyHandle, byte[], byte[], boolean)}
830
+ * but with {@code assumeTracked = false}.
831
+ * <p>
832
+ * Will also perform conflict checking on the keys be written.
833
+ * <p>
834
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
835
+ * these functions should always succeed.
836
+ * <p>
837
+ * If this Transaction was created on a {@link TransactionDB}, an
838
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
839
+ * when:
840
+ * {@link Status.Code#Busy} if there is a write conflict,
841
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
842
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
843
+ * enough. See
844
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
845
+ *
846
+ * @param columnFamilyHandle The column family to put the key/value into
847
+ * @param key the specified key to be inserted.
848
+ * @param value the value associated with the specified key.
849
+ *
850
+ * @throws RocksDBException when one of the TransactionalDB conditions
851
+ * described above occurs, or in the case of an unexpected error
852
+ */
853
+ public void put(final ColumnFamilyHandle columnFamilyHandle, final byte[] key,
854
+ final byte[] value) throws RocksDBException {
855
+ assert(isOwningHandle());
856
+ put(nativeHandle_, key, key.length, value, value.length,
857
+ columnFamilyHandle.nativeHandle_, false);
858
+ }
859
+
860
+ /**
861
+ * Similar to {@link RocksDB#put(byte[], byte[])}, but
862
+ * will also perform conflict checking on the keys be written.
863
+ * <p>
864
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
865
+ * these functions should always succeed.
866
+ * <p>
867
+ * If this Transaction was created on a {@link TransactionDB}, an
868
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
869
+ * when:
870
+ * {@link Status.Code#Busy} if there is a write conflict,
871
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
872
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
873
+ * enough. See
874
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
875
+ *
876
+ * @param key the specified key to be inserted.
877
+ * @param value the value associated with the specified key.
878
+ *
879
+ * @throws RocksDBException when one of the TransactionalDB conditions
880
+ * described above occurs, or in the case of an unexpected error
881
+ */
882
+ public void put(final byte[] key, final byte[] value)
883
+ throws RocksDBException {
884
+ assert(isOwningHandle());
885
+ put(nativeHandle_, key, key.length, value, value.length);
886
+ }
887
+
888
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
889
+ /**
890
+ * Similar to {@link #put(ColumnFamilyHandle, byte[], byte[])} but allows
891
+ * you to specify the key and value in several parts that will be
892
+ * concatenated together.
893
+ *
894
+ * @param columnFamilyHandle The column family to put the key/value into
895
+ * @param keyParts the specified key to be inserted.
896
+ * @param valueParts the value associated with the specified key.
897
+ * @param assumeTracked true when it is expected that the key is already
898
+ * tracked. More specifically, it means the the key was previous tracked
899
+ * in the same savepoint, with the same exclusive flag, and at a lower
900
+ * sequence number. If valid then it skips ValidateSnapshot,
901
+ * throws an error otherwise.
902
+ *
903
+ * @throws RocksDBException when one of the TransactionalDB conditions
904
+ * described above occurs, or in the case of an unexpected error
905
+ */
906
+ public void put(final ColumnFamilyHandle columnFamilyHandle,
907
+ final byte[][] keyParts, final byte[][] valueParts,
908
+ final boolean assumeTracked) throws RocksDBException {
909
+ assert (isOwningHandle());
910
+ put(nativeHandle_, keyParts, keyParts.length, valueParts, valueParts.length,
911
+ columnFamilyHandle.nativeHandle_, assumeTracked);
912
+ }
913
+
914
+ /**
915
+ * Similar to {@link #put(ColumnFamilyHandle, byte[][], byte[][], boolean)}
916
+ * but with with {@code assumeTracked = false}.
917
+ * <p>
918
+ * Allows you to specify the key and value in several parts that will be
919
+ * concatenated together.
920
+ *
921
+ * @param columnFamilyHandle The column family to put the key/value into
922
+ * @param keyParts the specified key to be inserted.
923
+ * @param valueParts the value associated with the specified key.
924
+ *
925
+ * @throws RocksDBException when one of the TransactionalDB conditions
926
+ * described above occurs, or in the case of an unexpected error
927
+ */
928
+ public void put(final ColumnFamilyHandle columnFamilyHandle,
929
+ final byte[][] keyParts, final byte[][] valueParts)
930
+ throws RocksDBException {
931
+ assert(isOwningHandle());
932
+ put(nativeHandle_, keyParts, keyParts.length, valueParts, valueParts.length,
933
+ columnFamilyHandle.nativeHandle_, false);
934
+ }
935
+
936
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
937
+ /**
938
+ * Similar to {@link #put(byte[], byte[])} but allows
939
+ * you to specify the key and value in several parts that will be
940
+ * concatenated together
941
+ *
942
+ * @param keyParts the specified key to be inserted.
943
+ * @param valueParts the value associated with the specified key.
944
+ *
945
+ * @throws RocksDBException when one of the TransactionalDB conditions
946
+ * described above occurs, or in the case of an unexpected error
947
+ */
948
+ public void put(final byte[][] keyParts, final byte[][] valueParts)
949
+ throws RocksDBException {
950
+ assert(isOwningHandle());
951
+ put(nativeHandle_, keyParts, keyParts.length, valueParts,
952
+ valueParts.length);
953
+ }
954
+
955
+ /**
956
+ * Similar to {@link RocksDB#merge(ColumnFamilyHandle, byte[], byte[])}, but
957
+ * will also perform conflict checking on the keys be written.
958
+ * <p>
959
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
960
+ * these functions should always succeed.
961
+ * <p>
962
+ * If this Transaction was created on a {@link TransactionDB}, an
963
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
964
+ * when:
965
+ * {@link Status.Code#Busy} if there is a write conflict,
966
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
967
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
968
+ * enough. See
969
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
970
+ *
971
+ * @param columnFamilyHandle The column family to merge the key/value into
972
+ * @param key the specified key to be merged.
973
+ * @param value the value associated with the specified key.
974
+ * @param assumeTracked true when it is expected that the key is already
975
+ * tracked. More specifically, it means the the key was previous tracked
976
+ * in the same savepoint, with the same exclusive flag, and at a lower
977
+ * sequence number. If valid then it skips ValidateSnapshot,
978
+ * throws an error otherwise.
979
+ *
980
+ * @throws RocksDBException when one of the TransactionalDB conditions
981
+ * described above occurs, or in the case of an unexpected error
982
+ */
983
+ public void merge(final ColumnFamilyHandle columnFamilyHandle,
984
+ final byte[] key, final byte[] value, final boolean assumeTracked)
985
+ throws RocksDBException {
986
+ assert (isOwningHandle());
987
+ merge(nativeHandle_, key, key.length, value, value.length,
988
+ columnFamilyHandle.nativeHandle_, assumeTracked);
989
+ }
990
+
991
+ /**
992
+ * Similar to {@link #merge(ColumnFamilyHandle, byte[], byte[], boolean)}
993
+ * but with {@code assumeTracked = false}.
994
+ * <p>
995
+ * Will also perform conflict checking on the keys be written.
996
+ * <p>
997
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
998
+ * these functions should always succeed.
999
+ * <p>
1000
+ * If this Transaction was created on a {@link TransactionDB}, an
1001
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
1002
+ * when:
1003
+ * {@link Status.Code#Busy} if there is a write conflict,
1004
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
1005
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
1006
+ * enough. See
1007
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
1008
+ *
1009
+ * @param columnFamilyHandle The column family to merge the key/value into
1010
+ * @param key the specified key to be merged.
1011
+ * @param value the value associated with the specified key.
1012
+ *
1013
+ * @throws RocksDBException when one of the TransactionalDB conditions
1014
+ * described above occurs, or in the case of an unexpected error
1015
+ */
1016
+ public void merge(final ColumnFamilyHandle columnFamilyHandle,
1017
+ final byte[] key, final byte[] value) throws RocksDBException {
1018
+ assert(isOwningHandle());
1019
+ merge(nativeHandle_, key, key.length, value, value.length,
1020
+ columnFamilyHandle.nativeHandle_, false);
1021
+ }
1022
+
1023
+ /**
1024
+ * Similar to {@link RocksDB#merge(byte[], byte[])}, but
1025
+ * will also perform conflict checking on the keys be written.
1026
+ * <p>
1027
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
1028
+ * these functions should always succeed.
1029
+ * <p>
1030
+ * If this Transaction was created on a {@link TransactionDB}, an
1031
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
1032
+ * when:
1033
+ * {@link Status.Code#Busy} if there is a write conflict,
1034
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
1035
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
1036
+ * enough. See
1037
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
1038
+ *
1039
+ * @param key the specified key to be merged.
1040
+ * @param value the value associated with the specified key.
1041
+ *
1042
+ * @throws RocksDBException when one of the TransactionalDB conditions
1043
+ * described above occurs, or in the case of an unexpected error
1044
+ */
1045
+ public void merge(final byte[] key, final byte[] value)
1046
+ throws RocksDBException {
1047
+ assert(isOwningHandle());
1048
+ merge(nativeHandle_, key, key.length, value, value.length);
1049
+ }
1050
+
1051
+ /**
1052
+ * Similar to {@link RocksDB#delete(ColumnFamilyHandle, byte[])}, but
1053
+ * will also perform conflict checking on the keys be written.
1054
+ * <p>
1055
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
1056
+ * these functions should always succeed.
1057
+ * <p>
1058
+ * If this Transaction was created on a {@link TransactionDB}, an
1059
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
1060
+ * when:
1061
+ * {@link Status.Code#Busy} if there is a write conflict,
1062
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
1063
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
1064
+ * enough. See
1065
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
1066
+ *
1067
+ * @param columnFamilyHandle The column family to delete the key/value from
1068
+ * @param key the specified key to be deleted.
1069
+ * @param assumeTracked true when it is expected that the key is already
1070
+ * tracked. More specifically, it means the the key was previous tracked
1071
+ * in the same savepoint, with the same exclusive flag, and at a lower
1072
+ * sequence number. If valid then it skips ValidateSnapshot,
1073
+ * throws an error otherwise.
1074
+ *
1075
+ * @throws RocksDBException when one of the TransactionalDB conditions
1076
+ * described above occurs, or in the case of an unexpected error
1077
+ */
1078
+ public void delete(final ColumnFamilyHandle columnFamilyHandle,
1079
+ final byte[] key, final boolean assumeTracked) throws RocksDBException {
1080
+ assert (isOwningHandle());
1081
+ delete(nativeHandle_, key, key.length, columnFamilyHandle.nativeHandle_,
1082
+ assumeTracked);
1083
+ }
1084
+
1085
+ /**
1086
+ * Similar to {@link #delete(ColumnFamilyHandle, byte[], boolean)}
1087
+ * but with {@code assumeTracked = false}.
1088
+ * <p>
1089
+ * Will also perform conflict checking on the keys be written.
1090
+ * <p>
1091
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
1092
+ * these functions should always succeed.
1093
+ * <p>
1094
+ * If this Transaction was created on a {@link TransactionDB}, an
1095
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
1096
+ * when:
1097
+ * {@link Status.Code#Busy} if there is a write conflict,
1098
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
1099
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
1100
+ * enough. See
1101
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
1102
+ *
1103
+ * @param columnFamilyHandle The column family to delete the key/value from
1104
+ * @param key the specified key to be deleted.
1105
+ *
1106
+ * @throws RocksDBException when one of the TransactionalDB conditions
1107
+ * described above occurs, or in the case of an unexpected error
1108
+ */
1109
+ public void delete(final ColumnFamilyHandle columnFamilyHandle,
1110
+ final byte[] key) throws RocksDBException {
1111
+ assert(isOwningHandle());
1112
+ delete(nativeHandle_, key, key.length, columnFamilyHandle.nativeHandle_,
1113
+ /*assumeTracked*/ false);
1114
+ }
1115
+
1116
+ /**
1117
+ * Similar to {@link RocksDB#delete(byte[])}, but
1118
+ * will also perform conflict checking on the keys be written.
1119
+ * <p>
1120
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
1121
+ * these functions should always succeed.
1122
+ * <p>
1123
+ * If this Transaction was created on a {@link TransactionDB}, an
1124
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
1125
+ * when:
1126
+ * {@link Status.Code#Busy} if there is a write conflict,
1127
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
1128
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
1129
+ * enough. See
1130
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
1131
+ *
1132
+ * @param key the specified key to be deleted.
1133
+ *
1134
+ * @throws RocksDBException when one of the TransactionalDB conditions
1135
+ * described above occurs, or in the case of an unexpected error
1136
+ */
1137
+ public void delete(final byte[] key) throws RocksDBException {
1138
+ assert(isOwningHandle());
1139
+ delete(nativeHandle_, key, key.length);
1140
+ }
1141
+
1142
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
1143
+ /**
1144
+ * Similar to {@link #delete(ColumnFamilyHandle, byte[])} but allows
1145
+ * you to specify the key in several parts that will be
1146
+ * concatenated together.
1147
+ *
1148
+ * @param columnFamilyHandle The column family to delete the key/value from
1149
+ * @param keyParts the specified key to be deleted.
1150
+ * @param assumeTracked true when it is expected that the key is already
1151
+ * tracked. More specifically, it means the the key was previous tracked
1152
+ * in the same savepoint, with the same exclusive flag, and at a lower
1153
+ * sequence number. If valid then it skips ValidateSnapshot,
1154
+ * throws an error otherwise.
1155
+ *
1156
+ * @throws RocksDBException when one of the TransactionalDB conditions
1157
+ * described above occurs, or in the case of an unexpected error
1158
+ */
1159
+ public void delete(final ColumnFamilyHandle columnFamilyHandle,
1160
+ final byte[][] keyParts, final boolean assumeTracked)
1161
+ throws RocksDBException {
1162
+ assert (isOwningHandle());
1163
+ delete(nativeHandle_, keyParts, keyParts.length,
1164
+ columnFamilyHandle.nativeHandle_, assumeTracked);
1165
+ }
1166
+
1167
+ /**
1168
+ * Similar to{@link #delete(ColumnFamilyHandle, byte[][], boolean)}
1169
+ * but with {@code assumeTracked = false}.
1170
+ * <p>
1171
+ * Allows you to specify the key in several parts that will be
1172
+ * concatenated together.
1173
+ *
1174
+ * @param columnFamilyHandle The column family to delete the key/value from
1175
+ * @param keyParts the specified key to be deleted.
1176
+ *
1177
+ * @throws RocksDBException when one of the TransactionalDB conditions
1178
+ * described above occurs, or in the case of an unexpected error
1179
+ */
1180
+ public void delete(final ColumnFamilyHandle columnFamilyHandle,
1181
+ final byte[][] keyParts) throws RocksDBException {
1182
+ assert(isOwningHandle());
1183
+ delete(nativeHandle_, keyParts, keyParts.length,
1184
+ columnFamilyHandle.nativeHandle_, false);
1185
+ }
1186
+
1187
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
1188
+ /**
1189
+ * Similar to {@link #delete(byte[])} but allows
1190
+ * you to specify key the in several parts that will be
1191
+ * concatenated together.
1192
+ *
1193
+ * @param keyParts the specified key to be deleted
1194
+ *
1195
+ * @throws RocksDBException when one of the TransactionalDB conditions
1196
+ * described above occurs, or in the case of an unexpected error
1197
+ */
1198
+ public void delete(final byte[][] keyParts) throws RocksDBException {
1199
+ assert(isOwningHandle());
1200
+ delete(nativeHandle_, keyParts, keyParts.length);
1201
+ }
1202
+
1203
+ /**
1204
+ * Similar to {@link RocksDB#singleDelete(ColumnFamilyHandle, byte[])}, but
1205
+ * will also perform conflict checking on the keys be written.
1206
+ * <p>
1207
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
1208
+ * these functions should always succeed.
1209
+ * <p>
1210
+ * If this Transaction was created on a {@link TransactionDB}, an
1211
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
1212
+ * when:
1213
+ * {@link Status.Code#Busy} if there is a write conflict,
1214
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
1215
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
1216
+ * enough. See
1217
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
1218
+ *
1219
+ * @param columnFamilyHandle The column family to delete the key/value from
1220
+ * @param key the specified key to be deleted.
1221
+ * @param assumeTracked true when it is expected that the key is already
1222
+ * tracked. More specifically, it means the key was previously tracked
1223
+ * in the same savepoint, with the same exclusive flag, and at a lower
1224
+ * sequence number. If valid then it skips ValidateSnapshot,
1225
+ * throws an error otherwise.
1226
+ *
1227
+ * @throws RocksDBException when one of the TransactionalDB conditions
1228
+ * described above occurs, or in the case of an unexpected error
1229
+ */
1230
+ @Experimental("Performance optimization for a very specific workload")
1231
+ public void singleDelete(final ColumnFamilyHandle columnFamilyHandle,
1232
+ final byte[] key, final boolean assumeTracked) throws RocksDBException {
1233
+ assert (isOwningHandle());
1234
+ singleDelete(nativeHandle_, key, key.length,
1235
+ columnFamilyHandle.nativeHandle_, assumeTracked);
1236
+ }
1237
+
1238
+ /**
1239
+ * Similar to {@link #singleDelete(ColumnFamilyHandle, byte[], boolean)}
1240
+ * but with {@code assumeTracked = false}.
1241
+ * <p>
1242
+ * will also perform conflict checking on the keys be written.
1243
+ * <p>
1244
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
1245
+ * these functions should always succeed.
1246
+ * <p>
1247
+ * If this Transaction was created on a {@link TransactionDB}, an
1248
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
1249
+ * when:
1250
+ * {@link Status.Code#Busy} if there is a write conflict,
1251
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
1252
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
1253
+ * enough. See
1254
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
1255
+ *
1256
+ * @param columnFamilyHandle The column family to delete the key/value from
1257
+ * @param key the specified key to be deleted.
1258
+ *
1259
+ * @throws RocksDBException when one of the TransactionalDB conditions
1260
+ * described above occurs, or in the case of an unexpected error
1261
+ */
1262
+ @Experimental("Performance optimization for a very specific workload")
1263
+ public void singleDelete(final ColumnFamilyHandle columnFamilyHandle,
1264
+ final byte[] key) throws RocksDBException {
1265
+ assert(isOwningHandle());
1266
+ singleDelete(nativeHandle_, key, key.length,
1267
+ columnFamilyHandle.nativeHandle_, false);
1268
+ }
1269
+
1270
+ /**
1271
+ * Similar to {@link RocksDB#singleDelete(byte[])}, but
1272
+ * will also perform conflict checking on the keys be written.
1273
+ * <p>
1274
+ * If this Transaction was created on an {@link OptimisticTransactionDB},
1275
+ * these functions should always succeed.
1276
+ * <p>
1277
+ * If this Transaction was created on a {@link TransactionDB}, an
1278
+ * {@link RocksDBException} may be thrown with an accompanying {@link Status}
1279
+ * when:
1280
+ * {@link Status.Code#Busy} if there is a write conflict,
1281
+ * {@link Status.Code#TimedOut} if a lock could not be acquired,
1282
+ * {@link Status.Code#TryAgain} if the memtable history size is not large
1283
+ * enough. See
1284
+ * {@link ColumnFamilyOptions#maxWriteBufferNumberToMaintain()}
1285
+ *
1286
+ * @param key the specified key to be deleted.
1287
+ *
1288
+ * @throws RocksDBException when one of the TransactionalDB conditions
1289
+ * described above occurs, or in the case of an unexpected error
1290
+ */
1291
+ @Experimental("Performance optimization for a very specific workload")
1292
+ public void singleDelete(final byte[] key) throws RocksDBException {
1293
+ assert(isOwningHandle());
1294
+ singleDelete(nativeHandle_, key, key.length);
1295
+ }
1296
+
1297
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
1298
+ /**
1299
+ * Similar to {@link #singleDelete(ColumnFamilyHandle, byte[])} but allows
1300
+ * you to specify the key in several parts that will be
1301
+ * concatenated together.
1302
+ *
1303
+ * @param columnFamilyHandle The column family to delete the key/value from
1304
+ * @param keyParts the specified key to be deleted.
1305
+ * @param assumeTracked true when it is expected that the key is already
1306
+ * tracked. More specifically, it means the key was previously tracked
1307
+ * in the same savepoint, with the same exclusive flag, and at a lower
1308
+ * sequence number. If valid then it skips ValidateSnapshot,
1309
+ * throws an error otherwise.
1310
+ *
1311
+ * @throws RocksDBException when one of the TransactionalDB conditions
1312
+ * described above occurs, or in the case of an unexpected error
1313
+ */
1314
+ @Experimental("Performance optimization for a very specific workload")
1315
+ public void singleDelete(final ColumnFamilyHandle columnFamilyHandle,
1316
+ final byte[][] keyParts, final boolean assumeTracked)
1317
+ throws RocksDBException {
1318
+ assert (isOwningHandle());
1319
+ singleDelete(nativeHandle_, keyParts, keyParts.length,
1320
+ columnFamilyHandle.nativeHandle_, assumeTracked);
1321
+ }
1322
+
1323
+ /**
1324
+ * Similar to{@link #singleDelete(ColumnFamilyHandle, byte[][], boolean)}
1325
+ * but with {@code assumeTracked = false}.
1326
+ * <p>
1327
+ * Allows you to specify the key in several parts that will be
1328
+ * concatenated together.
1329
+ *
1330
+ * @param columnFamilyHandle The column family to delete the key/value from
1331
+ * @param keyParts the specified key to be deleted.
1332
+ *
1333
+ * @throws RocksDBException when one of the TransactionalDB conditions
1334
+ * described above occurs, or in the case of an unexpected error
1335
+ */
1336
+ @Experimental("Performance optimization for a very specific workload")
1337
+ public void singleDelete(final ColumnFamilyHandle columnFamilyHandle,
1338
+ final byte[][] keyParts) throws RocksDBException {
1339
+ assert(isOwningHandle());
1340
+ singleDelete(nativeHandle_, keyParts, keyParts.length,
1341
+ columnFamilyHandle.nativeHandle_, false);
1342
+ }
1343
+
1344
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
1345
+ /**
1346
+ * Similar to {@link #singleDelete(byte[])} but allows
1347
+ * you to specify the key in several parts that will be
1348
+ * concatenated together.
1349
+ *
1350
+ * @param keyParts the specified key to be deleted.
1351
+ *
1352
+ * @throws RocksDBException when one of the TransactionalDB conditions
1353
+ * described above occurs, or in the case of an unexpected error
1354
+ */
1355
+ @Experimental("Performance optimization for a very specific workload")
1356
+ public void singleDelete(final byte[][] keyParts) throws RocksDBException {
1357
+ assert(isOwningHandle());
1358
+ singleDelete(nativeHandle_, keyParts, keyParts.length);
1359
+ }
1360
+
1361
+ /**
1362
+ * Similar to {@link RocksDB#put(ColumnFamilyHandle, byte[], byte[])},
1363
+ * but operates on the transactions write batch. This write will only happen
1364
+ * if this transaction gets committed successfully.
1365
+ * <p>
1366
+ * Unlike {@link #put(ColumnFamilyHandle, byte[], byte[])} no conflict
1367
+ * checking will be performed for this key.
1368
+ * <p>
1369
+ * If this Transaction was created on a {@link TransactionDB}, this function
1370
+ * will still acquire locks necessary to make sure this write doesn't cause
1371
+ * conflicts in other transactions; This may cause a {@link RocksDBException}
1372
+ * with associated {@link Status.Code#Busy}.
1373
+ *
1374
+ * @param columnFamilyHandle The column family to put the key/value into
1375
+ * @param key the specified key to be inserted.
1376
+ * @param value the value associated with the specified key.
1377
+ *
1378
+ * @throws RocksDBException when one of the TransactionalDB conditions
1379
+ * described above occurs, or in the case of an unexpected error
1380
+ */
1381
+ public void putUntracked(final ColumnFamilyHandle columnFamilyHandle,
1382
+ final byte[] key, final byte[] value) throws RocksDBException {
1383
+ assert(isOwningHandle());
1384
+ putUntracked(nativeHandle_, key, key.length, value, value.length,
1385
+ columnFamilyHandle.nativeHandle_);
1386
+ }
1387
+
1388
+ /**
1389
+ * Similar to {@link RocksDB#put(byte[], byte[])},
1390
+ * but operates on the transactions write batch. This write will only happen
1391
+ * if this transaction gets committed successfully.
1392
+ * <p>
1393
+ * Unlike {@link #put(byte[], byte[])} no conflict
1394
+ * checking will be performed for this key.
1395
+ * <p>
1396
+ * If this Transaction was created on a {@link TransactionDB}, this function
1397
+ * will still acquire locks necessary to make sure this write doesn't cause
1398
+ * conflicts in other transactions; This may cause a {@link RocksDBException}
1399
+ * with associated {@link Status.Code#Busy}.
1400
+ *
1401
+ * @param key the specified key to be inserted.
1402
+ * @param value the value associated with the specified key.
1403
+ *
1404
+ * @throws RocksDBException when one of the TransactionalDB conditions
1405
+ * described above occurs, or in the case of an unexpected error
1406
+ */
1407
+ public void putUntracked(final byte[] key, final byte[] value)
1408
+ throws RocksDBException {
1409
+ assert(isOwningHandle());
1410
+ putUntracked(nativeHandle_, key, key.length, value, value.length);
1411
+ }
1412
+
1413
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
1414
+ /**
1415
+ * Similar to {@link #putUntracked(ColumnFamilyHandle, byte[], byte[])} but
1416
+ * allows you to specify the key and value in several parts that will be
1417
+ * concatenated together.
1418
+ *
1419
+ * @param columnFamilyHandle The column family to put the key/value into
1420
+ * @param keyParts the specified key to be inserted.
1421
+ * @param valueParts the value associated with the specified key.
1422
+ *
1423
+ * @throws RocksDBException when one of the TransactionalDB conditions
1424
+ * described above occurs, or in the case of an unexpected error
1425
+ */
1426
+ public void putUntracked(final ColumnFamilyHandle columnFamilyHandle,
1427
+ final byte[][] keyParts, final byte[][] valueParts)
1428
+ throws RocksDBException {
1429
+ assert(isOwningHandle());
1430
+ putUntracked(nativeHandle_, keyParts, keyParts.length, valueParts,
1431
+ valueParts.length, columnFamilyHandle.nativeHandle_);
1432
+ }
1433
+
1434
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
1435
+ /**
1436
+ * Similar to {@link #putUntracked(byte[], byte[])} but
1437
+ * allows you to specify the key and value in several parts that will be
1438
+ * concatenated together.
1439
+ *
1440
+ * @param keyParts the specified key to be inserted.
1441
+ * @param valueParts the value associated with the specified key.
1442
+ *
1443
+ * @throws RocksDBException when one of the TransactionalDB conditions
1444
+ * described above occurs, or in the case of an unexpected error
1445
+ */
1446
+ public void putUntracked(final byte[][] keyParts, final byte[][] valueParts)
1447
+ throws RocksDBException {
1448
+ assert(isOwningHandle());
1449
+ putUntracked(nativeHandle_, keyParts, keyParts.length, valueParts,
1450
+ valueParts.length);
1451
+ }
1452
+
1453
+ /**
1454
+ * Similar to {@link RocksDB#merge(ColumnFamilyHandle, byte[], byte[])},
1455
+ * but operates on the transactions write batch. This write will only happen
1456
+ * if this transaction gets committed successfully.
1457
+ * <p>
1458
+ * Unlike {@link #merge(ColumnFamilyHandle, byte[], byte[])} no conflict
1459
+ * checking will be performed for this key.
1460
+ * <p>
1461
+ * If this Transaction was created on a {@link TransactionDB}, this function
1462
+ * will still acquire locks necessary to make sure this write doesn't cause
1463
+ * conflicts in other transactions; This may cause a {@link RocksDBException}
1464
+ * with associated {@link Status.Code#Busy}.
1465
+ *
1466
+ * @param columnFamilyHandle The column family to merge the key/value into
1467
+ * @param key the specified key to be merged.
1468
+ * @param value the value associated with the specified key.
1469
+ *
1470
+ * @throws RocksDBException when one of the TransactionalDB conditions
1471
+ * described above occurs, or in the case of an unexpected error
1472
+ */
1473
+ public void mergeUntracked(final ColumnFamilyHandle columnFamilyHandle,
1474
+ final byte[] key, final byte[] value) throws RocksDBException {
1475
+ mergeUntracked(nativeHandle_, key, key.length, value, value.length,
1476
+ columnFamilyHandle.nativeHandle_);
1477
+ }
1478
+
1479
+ /**
1480
+ * Similar to {@link RocksDB#merge(byte[], byte[])},
1481
+ * but operates on the transactions write batch. This write will only happen
1482
+ * if this transaction gets committed successfully.
1483
+ * <p>
1484
+ * Unlike {@link #merge(byte[], byte[])} no conflict
1485
+ * checking will be performed for this key.
1486
+ * <p>
1487
+ * If this Transaction was created on a {@link TransactionDB}, this function
1488
+ * will still acquire locks necessary to make sure this write doesn't cause
1489
+ * conflicts in other transactions; This may cause a {@link RocksDBException}
1490
+ * with associated {@link Status.Code#Busy}.
1491
+ *
1492
+ * @param key the specified key to be merged.
1493
+ * @param value the value associated with the specified key.
1494
+ *
1495
+ * @throws RocksDBException when one of the TransactionalDB conditions
1496
+ * described above occurs, or in the case of an unexpected error
1497
+ */
1498
+ public void mergeUntracked(final byte[] key, final byte[] value)
1499
+ throws RocksDBException {
1500
+ assert(isOwningHandle());
1501
+ mergeUntracked(nativeHandle_, key, key.length, value, value.length);
1502
+ }
1503
+
1504
+ /**
1505
+ * Similar to {@link RocksDB#delete(ColumnFamilyHandle, byte[])},
1506
+ * but operates on the transactions write batch. This write will only happen
1507
+ * if this transaction gets committed successfully.
1508
+ * <p>
1509
+ * Unlike {@link #delete(ColumnFamilyHandle, byte[])} no conflict
1510
+ * checking will be performed for this key.
1511
+ * <p>
1512
+ * If this Transaction was created on a {@link TransactionDB}, this function
1513
+ * will still acquire locks necessary to make sure this write doesn't cause
1514
+ * conflicts in other transactions; This may cause a {@link RocksDBException}
1515
+ * with associated {@link Status.Code#Busy}.
1516
+ *
1517
+ * @param columnFamilyHandle The column family to delete the key/value from
1518
+ * @param key the specified key to be deleted.
1519
+ *
1520
+ * @throws RocksDBException when one of the TransactionalDB conditions
1521
+ * described above occurs, or in the case of an unexpected error
1522
+ */
1523
+ public void deleteUntracked(final ColumnFamilyHandle columnFamilyHandle,
1524
+ final byte[] key) throws RocksDBException {
1525
+ assert(isOwningHandle());
1526
+ deleteUntracked(nativeHandle_, key, key.length,
1527
+ columnFamilyHandle.nativeHandle_);
1528
+ }
1529
+
1530
+ /**
1531
+ * Similar to {@link RocksDB#delete(byte[])},
1532
+ * but operates on the transactions write batch. This write will only happen
1533
+ * if this transaction gets committed successfully.
1534
+ * <p>
1535
+ * Unlike {@link #delete(byte[])} no conflict
1536
+ * checking will be performed for this key.
1537
+ * <p>
1538
+ * If this Transaction was created on a {@link TransactionDB}, this function
1539
+ * will still acquire locks necessary to make sure this write doesn't cause
1540
+ * conflicts in other transactions; This may cause a {@link RocksDBException}
1541
+ * with associated {@link Status.Code#Busy}.
1542
+ *
1543
+ * @param key the specified key to be deleted.
1544
+ *
1545
+ * @throws RocksDBException when one of the TransactionalDB conditions
1546
+ * described above occurs, or in the case of an unexpected error
1547
+ */
1548
+ public void deleteUntracked(final byte[] key) throws RocksDBException {
1549
+ assert(isOwningHandle());
1550
+ deleteUntracked(nativeHandle_, key, key.length);
1551
+ }
1552
+
1553
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
1554
+ /**
1555
+ * Similar to {@link #deleteUntracked(ColumnFamilyHandle, byte[])} but allows
1556
+ * you to specify the key in several parts that will be
1557
+ * concatenated together.
1558
+ *
1559
+ * @param columnFamilyHandle The column family to delete the key/value from
1560
+ * @param keyParts the specified key to be deleted.
1561
+ *
1562
+ * @throws RocksDBException when one of the TransactionalDB conditions
1563
+ * described above occurs, or in the case of an unexpected error
1564
+ */
1565
+ public void deleteUntracked(final ColumnFamilyHandle columnFamilyHandle,
1566
+ final byte[][] keyParts) throws RocksDBException {
1567
+ assert(isOwningHandle());
1568
+ deleteUntracked(nativeHandle_, keyParts, keyParts.length,
1569
+ columnFamilyHandle.nativeHandle_);
1570
+ }
1571
+
1572
+ //TODO(AR) refactor if we implement org.rocksdb.SliceParts in future
1573
+ /**
1574
+ * Similar to {@link #deleteUntracked(byte[])} but allows
1575
+ * you to specify the key in several parts that will be
1576
+ * concatenated together.
1577
+ *
1578
+ * @param keyParts the specified key to be deleted.
1579
+ *
1580
+ * @throws RocksDBException when one of the TransactionalDB conditions
1581
+ * described above occurs, or in the case of an unexpected error
1582
+ */
1583
+ public void deleteUntracked(final byte[][] keyParts) throws RocksDBException {
1584
+ assert(isOwningHandle());
1585
+ deleteUntracked(nativeHandle_, keyParts, keyParts.length);
1586
+ }
1587
+
1588
+ /**
1589
+ * Similar to {@link WriteBatch#putLogData(byte[])}
1590
+ *
1591
+ * @param blob binary object to be inserted
1592
+ */
1593
+ public void putLogData(final byte[] blob) {
1594
+ assert(isOwningHandle());
1595
+ putLogData(nativeHandle_, blob, blob.length);
1596
+ }
1597
+
1598
+ /**
1599
+ * By default, all put/merge/delete operations will be indexed in the
1600
+ * transaction so that get/getForUpdate/getIterator can search for these
1601
+ * keys.
1602
+ * <p>
1603
+ * If the caller does not want to fetch the keys about to be written,
1604
+ * they may want to avoid indexing as a performance optimization.
1605
+ * Calling {@code #disableIndexing()} will turn off indexing for all future
1606
+ * put/merge/delete operations until {@link #enableIndexing()} is called.
1607
+ * <p>
1608
+ * If a key is put/merge/deleted after {@code #disableIndexing()} is called
1609
+ * and then is fetched via get/getForUpdate/getIterator, the result of the
1610
+ * fetch is undefined.
1611
+ */
1612
+ public void disableIndexing() {
1613
+ assert(isOwningHandle());
1614
+ disableIndexing(nativeHandle_);
1615
+ }
1616
+
1617
+ /**
1618
+ * Re-enables indexing after a previous call to {@link #disableIndexing()}
1619
+ */
1620
+ public void enableIndexing() {
1621
+ assert(isOwningHandle());
1622
+ enableIndexing(nativeHandle_);
1623
+ }
1624
+
1625
+ /**
1626
+ * Returns the number of distinct Keys being tracked by this transaction.
1627
+ * If this transaction was created by a {@link TransactionDB}, this is the
1628
+ * number of keys that are currently locked by this transaction.
1629
+ * If this transaction was created by an {@link OptimisticTransactionDB},
1630
+ * this is the number of keys that need to be checked for conflicts at commit
1631
+ * time.
1632
+ *
1633
+ * @return the number of distinct Keys being tracked by this transaction
1634
+ */
1635
+ public long getNumKeys() {
1636
+ assert(isOwningHandle());
1637
+ return getNumKeys(nativeHandle_);
1638
+ }
1639
+
1640
+ /**
1641
+ * Returns the number of puts that have been applied to this
1642
+ * transaction so far.
1643
+ *
1644
+ * @return the number of puts that have been applied to this transaction
1645
+ */
1646
+ public long getNumPuts() {
1647
+ assert(isOwningHandle());
1648
+ return getNumPuts(nativeHandle_);
1649
+ }
1650
+
1651
+ /**
1652
+ * Returns the number of deletes that have been applied to this
1653
+ * transaction so far.
1654
+ *
1655
+ * @return the number of deletes that have been applied to this transaction
1656
+ */
1657
+ public long getNumDeletes() {
1658
+ assert(isOwningHandle());
1659
+ return getNumDeletes(nativeHandle_);
1660
+ }
1661
+
1662
+ /**
1663
+ * Returns the number of merges that have been applied to this
1664
+ * transaction so far.
1665
+ *
1666
+ * @return the number of merges that have been applied to this transaction
1667
+ */
1668
+ public long getNumMerges() {
1669
+ assert(isOwningHandle());
1670
+ return getNumMerges(nativeHandle_);
1671
+ }
1672
+
1673
+ /**
1674
+ * Returns the elapsed time in milliseconds since this Transaction began.
1675
+ *
1676
+ * @return the elapsed time in milliseconds since this transaction began.
1677
+ */
1678
+ public long getElapsedTime() {
1679
+ assert(isOwningHandle());
1680
+ return getElapsedTime(nativeHandle_);
1681
+ }
1682
+
1683
+ /**
1684
+ * Fetch the underlying write batch that contains all pending changes to be
1685
+ * committed.
1686
+ * <p>
1687
+ * Note: You should not write or delete anything from the batch directly and
1688
+ * should only use the functions in the {@link Transaction} class to
1689
+ * write to this transaction.
1690
+ *
1691
+ * @return The write batch
1692
+ */
1693
+ public WriteBatchWithIndex getWriteBatch() {
1694
+ assert(isOwningHandle());
1695
+ return new WriteBatchWithIndex(getWriteBatch(nativeHandle_));
1696
+ }
1697
+
1698
+ /**
1699
+ * Change the value of {@link TransactionOptions#getLockTimeout()}
1700
+ * (in milliseconds) for this transaction.
1701
+ * <p>
1702
+ * Has no effect on OptimisticTransactions.
1703
+ *
1704
+ * @param lockTimeout the timeout (in milliseconds) for locks used by this
1705
+ * transaction.
1706
+ */
1707
+ public void setLockTimeout(final long lockTimeout) {
1708
+ assert(isOwningHandle());
1709
+ setLockTimeout(nativeHandle_, lockTimeout);
1710
+ }
1711
+
1712
+ /**
1713
+ * Return the WriteOptions that will be used during {@link #commit()}.
1714
+ *
1715
+ * @return the WriteOptions that will be used
1716
+ */
1717
+ public WriteOptions getWriteOptions() {
1718
+ assert(isOwningHandle());
1719
+ return new WriteOptions(getWriteOptions(nativeHandle_));
1720
+ }
1721
+
1722
+ /**
1723
+ * Reset the WriteOptions that will be used during {@link #commit()}.
1724
+ *
1725
+ * @param writeOptions The new WriteOptions
1726
+ */
1727
+ public void setWriteOptions(final WriteOptions writeOptions) {
1728
+ assert(isOwningHandle());
1729
+ setWriteOptions(nativeHandle_, writeOptions.nativeHandle_);
1730
+ }
1731
+
1732
+ /**
1733
+ * If this key was previously fetched in this transaction using
1734
+ * {@link #getForUpdate(ReadOptions, ColumnFamilyHandle, byte[], boolean)}/
1735
+ * {@link #multiGetForUpdate(ReadOptions, List, byte[][])}, calling
1736
+ * {@code #undoGetForUpdate(ColumnFamilyHandle, byte[])} will tell
1737
+ * the transaction that it no longer needs to do any conflict checking
1738
+ * for this key.
1739
+ * <p>
1740
+ * If a key has been fetched N times via
1741
+ * {@link #getForUpdate(ReadOptions, ColumnFamilyHandle, byte[], boolean)}/
1742
+ * {@link #multiGetForUpdate(ReadOptions, List, byte[][])}, then
1743
+ * {@code #undoGetForUpdate(ColumnFamilyHandle, byte[])} will only have an
1744
+ * effect if it is also called N times. If this key has been written to in
1745
+ * this transaction, {@code #undoGetForUpdate(ColumnFamilyHandle, byte[])}
1746
+ * will have no effect.
1747
+ * <p>
1748
+ * If {@link #setSavePoint()} has been called after the
1749
+ * {@link #getForUpdate(ReadOptions, ColumnFamilyHandle, byte[], boolean)},
1750
+ * {@code #undoGetForUpdate(ColumnFamilyHandle, byte[])} will not have any
1751
+ * effect.
1752
+ * <p>
1753
+ * If this Transaction was created by an {@link OptimisticTransactionDB},
1754
+ * calling {@code #undoGetForUpdate(ColumnFamilyHandle, byte[])} can affect
1755
+ * whether this key is conflict checked at commit time.
1756
+ * If this Transaction was created by a {@link TransactionDB},
1757
+ * calling {@code #undoGetForUpdate(ColumnFamilyHandle, byte[])} may release
1758
+ * any held locks for this key.
1759
+ *
1760
+ * @param columnFamilyHandle {@link org.rocksdb.ColumnFamilyHandle}
1761
+ * instance
1762
+ * @param key the key to retrieve the value for.
1763
+ */
1764
+ public void undoGetForUpdate(final ColumnFamilyHandle columnFamilyHandle,
1765
+ final byte[] key) {
1766
+ assert(isOwningHandle());
1767
+ undoGetForUpdate(nativeHandle_, key, key.length, columnFamilyHandle.nativeHandle_);
1768
+ }
1769
+
1770
+ /**
1771
+ * If this key was previously fetched in this transaction using
1772
+ * {@link #getForUpdate(ReadOptions, byte[], boolean)}/
1773
+ * {@link #multiGetForUpdate(ReadOptions, List, byte[][])}, calling
1774
+ * {@code #undoGetForUpdate(byte[])} will tell
1775
+ * the transaction that it no longer needs to do any conflict checking
1776
+ * for this key.
1777
+ * <p>
1778
+ * If a key has been fetched N times via
1779
+ * {@link #getForUpdate(ReadOptions, byte[], boolean)}/
1780
+ * {@link #multiGetForUpdate(ReadOptions, List, byte[][])}, then
1781
+ * {@code #undoGetForUpdate(byte[])} will only have an
1782
+ * effect if it is also called N times. If this key has been written to in
1783
+ * this transaction, {@code #undoGetForUpdate(byte[])}
1784
+ * will have no effect.
1785
+ * <p>
1786
+ * If {@link #setSavePoint()} has been called after the
1787
+ * {@link #getForUpdate(ReadOptions, byte[], boolean)},
1788
+ * {@code #undoGetForUpdate(byte[])} will not have any
1789
+ * effect.
1790
+ * <p>
1791
+ * If this Transaction was created by an {@link OptimisticTransactionDB},
1792
+ * calling {@code #undoGetForUpdate(byte[])} can affect
1793
+ * whether this key is conflict checked at commit time.
1794
+ * If this Transaction was created by a {@link TransactionDB},
1795
+ * calling {@code #undoGetForUpdate(byte[])} may release
1796
+ * any held locks for this key.
1797
+ *
1798
+ * @param key the key to retrieve the value for.
1799
+ */
1800
+ public void undoGetForUpdate(final byte[] key) {
1801
+ assert(isOwningHandle());
1802
+ undoGetForUpdate(nativeHandle_, key, key.length);
1803
+ }
1804
+
1805
+ /**
1806
+ * Adds the keys from the WriteBatch to the transaction
1807
+ *
1808
+ * @param writeBatch The write batch to read from
1809
+ *
1810
+ * @throws RocksDBException if an error occurs whilst rebuilding from the
1811
+ * write batch.
1812
+ */
1813
+ public void rebuildFromWriteBatch(final WriteBatch writeBatch)
1814
+ throws RocksDBException {
1815
+ assert(isOwningHandle());
1816
+ rebuildFromWriteBatch(nativeHandle_, writeBatch.nativeHandle_);
1817
+ }
1818
+
1819
+ /**
1820
+ * Get the Commit time Write Batch.
1821
+ *
1822
+ * @return the commit time write batch.
1823
+ */
1824
+ public WriteBatch getCommitTimeWriteBatch() {
1825
+ assert(isOwningHandle());
1826
+ return new WriteBatch(getCommitTimeWriteBatch(nativeHandle_));
1827
+ }
1828
+
1829
+ /**
1830
+ * Set the log number.
1831
+ *
1832
+ * @param logNumber the log number
1833
+ */
1834
+ public void setLogNumber(final long logNumber) {
1835
+ assert(isOwningHandle());
1836
+ setLogNumber(nativeHandle_, logNumber);
1837
+ }
1838
+
1839
+ /**
1840
+ * Get the log number.
1841
+ *
1842
+ * @return the log number
1843
+ */
1844
+ public long getLogNumber() {
1845
+ assert(isOwningHandle());
1846
+ return getLogNumber(nativeHandle_);
1847
+ }
1848
+
1849
+ /**
1850
+ * Set the name of the transaction.
1851
+ *
1852
+ * @param transactionName the name of the transaction
1853
+ *
1854
+ * @throws RocksDBException if an error occurs when setting the transaction
1855
+ * name.
1856
+ */
1857
+ public void setName(final String transactionName) throws RocksDBException {
1858
+ assert(isOwningHandle());
1859
+ setName(nativeHandle_, transactionName);
1860
+ }
1861
+
1862
+ /**
1863
+ * Get the name of the transaction.
1864
+ *
1865
+ * @return the name of the transaction
1866
+ */
1867
+ public String getName() {
1868
+ assert(isOwningHandle());
1869
+ return getName(nativeHandle_);
1870
+ }
1871
+
1872
+ /**
1873
+ * Get the ID of the transaction.
1874
+ *
1875
+ * @return the ID of the transaction.
1876
+ */
1877
+ public long getID() {
1878
+ assert(isOwningHandle());
1879
+ return getID(nativeHandle_);
1880
+ }
1881
+
1882
+ /**
1883
+ * Determine if a deadlock has been detected.
1884
+ *
1885
+ * @return true if a deadlock has been detected.
1886
+ */
1887
+ public boolean isDeadlockDetect() {
1888
+ assert(isOwningHandle());
1889
+ return isDeadlockDetect(nativeHandle_);
1890
+ }
1891
+
1892
+ /**
1893
+ * Get the list of waiting transactions.
1894
+ *
1895
+ * @return The list of waiting transactions.
1896
+ */
1897
+ public WaitingTransactions getWaitingTxns() {
1898
+ assert(isOwningHandle());
1899
+ return getWaitingTxns(nativeHandle_);
1900
+ }
1901
+
1902
+ /**
1903
+ * Get the execution status of the transaction.
1904
+ * <p>
1905
+ * NOTE: The execution status of an Optimistic Transaction
1906
+ * never changes. This is only useful for non-optimistic transactions!
1907
+ *
1908
+ * @return The execution status of the transaction
1909
+ */
1910
+ public TransactionState getState() {
1911
+ assert(isOwningHandle());
1912
+ return TransactionState.getTransactionState(
1913
+ getState(nativeHandle_));
1914
+ }
1915
+
1916
+ /**
1917
+ * The globally unique id with which the transaction is identified. This id
1918
+ * might or might not be set depending on the implementation. Similarly the
1919
+ * implementation decides the point in lifetime of a transaction at which it
1920
+ * assigns the id. Although currently it is the case, the id is not guaranteed
1921
+ * to remain the same across restarts.
1922
+ *
1923
+ * @return the transaction id.
1924
+ */
1925
+ @Experimental("NOTE: Experimental feature")
1926
+ public long getId() {
1927
+ assert(isOwningHandle());
1928
+ return getId(nativeHandle_);
1929
+ }
1930
+
1931
+ public enum TransactionState {
1932
+ STARTED((byte)0),
1933
+ AWAITING_PREPARE((byte)1),
1934
+ PREPARED((byte)2),
1935
+ AWAITING_COMMIT((byte)3),
1936
+ COMMITTED((byte)4),
1937
+ AWAITING_ROLLBACK((byte)5),
1938
+ ROLLEDBACK((byte)6),
1939
+ LOCKS_STOLEN((byte)7);
1940
+
1941
+ /*
1942
+ * Keep old misspelled variable as alias
1943
+ * Tip from https://stackoverflow.com/a/37092410/454544
1944
+ */
1945
+ public static final TransactionState COMMITED = COMMITTED;
1946
+
1947
+ private final byte value;
1948
+
1949
+ TransactionState(final byte value) {
1950
+ this.value = value;
1951
+ }
1952
+
1953
+ /**
1954
+ * Get TransactionState by byte value.
1955
+ *
1956
+ * @param value byte representation of TransactionState.
1957
+ *
1958
+ * @return {@link org.rocksdb.Transaction.TransactionState} instance or null.
1959
+ * @throws java.lang.IllegalArgumentException if an invalid
1960
+ * value is provided.
1961
+ */
1962
+ public static TransactionState getTransactionState(final byte value) {
1963
+ for (final TransactionState transactionState : TransactionState.values()) {
1964
+ if (transactionState.value == value){
1965
+ return transactionState;
1966
+ }
1967
+ }
1968
+ throw new IllegalArgumentException(
1969
+ "Illegal value provided for TransactionState.");
1970
+ }
1971
+ }
1972
+
1973
+ /**
1974
+ * Called from C++ native method {@link #getWaitingTxns(long)}
1975
+ * to construct a WaitingTransactions object.
1976
+ *
1977
+ * @param columnFamilyId The id of the {@link ColumnFamilyHandle}
1978
+ * @param key The key
1979
+ * @param transactionIds The transaction ids
1980
+ *
1981
+ * @return The waiting transactions
1982
+ */
1983
+ private WaitingTransactions newWaitingTransactions(
1984
+ final long columnFamilyId, final String key,
1985
+ final long[] transactionIds) {
1986
+ return new WaitingTransactions(columnFamilyId, key, transactionIds);
1987
+ }
1988
+
1989
+ public static class WaitingTransactions {
1990
+ private final long columnFamilyId;
1991
+ private final String key;
1992
+ private final long[] transactionIds;
1993
+
1994
+ private WaitingTransactions(final long columnFamilyId, final String key,
1995
+ final long[] transactionIds) {
1996
+ this.columnFamilyId = columnFamilyId;
1997
+ this.key = key;
1998
+ this.transactionIds = transactionIds;
1999
+ }
2000
+
2001
+ /**
2002
+ * Get the Column Family ID.
2003
+ *
2004
+ * @return The column family ID
2005
+ */
2006
+ public long getColumnFamilyId() {
2007
+ return columnFamilyId;
2008
+ }
2009
+
2010
+ /**
2011
+ * Get the key on which the transactions are waiting.
2012
+ *
2013
+ * @return The key
2014
+ */
2015
+ public String getKey() {
2016
+ return key;
2017
+ }
2018
+
2019
+ /**
2020
+ * Get the IDs of the waiting transactions.
2021
+ *
2022
+ * @return The IDs of the waiting transactions
2023
+ */
2024
+ public long[] getTransactionIds() {
2025
+ return transactionIds;
2026
+ }
2027
+ }
2028
+
2029
+ private native void setSnapshot(final long handle);
2030
+ private native void setSnapshotOnNextOperation(final long handle);
2031
+ private native void setSnapshotOnNextOperation(final long handle,
2032
+ final long transactionNotifierHandle);
2033
+ private native long getSnapshot(final long handle);
2034
+ private native void clearSnapshot(final long handle);
2035
+ private native void prepare(final long handle) throws RocksDBException;
2036
+ private native void commit(final long handle) throws RocksDBException;
2037
+ private native void rollback(final long handle) throws RocksDBException;
2038
+ private native void setSavePoint(final long handle) throws RocksDBException;
2039
+ private native void rollbackToSavePoint(final long handle)
2040
+ throws RocksDBException;
2041
+ private native byte[] get(final long handle, final long readOptionsHandle, final byte[] key,
2042
+ final int keyLength, final long columnFamilyHandle) throws RocksDBException;
2043
+ private native byte[] get(final long handle, final long readOptionsHandle, final byte[] key,
2044
+ final int keyLen) throws RocksDBException;
2045
+ private native byte[][] multiGet(final long handle,
2046
+ final long readOptionsHandle, final byte[][] keys,
2047
+ final long[] columnFamilyHandles) throws RocksDBException;
2048
+ private native byte[][] multiGet(final long handle,
2049
+ final long readOptionsHandle, final byte[][] keys)
2050
+ throws RocksDBException;
2051
+ private native byte[] getForUpdate(final long handle, final long readOptionsHandle,
2052
+ final byte[] key, final int keyLength, final long columnFamilyHandle, final boolean exclusive,
2053
+ final boolean doValidate) throws RocksDBException;
2054
+ private native byte[] getForUpdate(final long handle, final long readOptionsHandle,
2055
+ final byte[] key, final int keyLen, final boolean exclusive, final boolean doValidate)
2056
+ throws RocksDBException;
2057
+ private native byte[][] multiGetForUpdate(final long handle,
2058
+ final long readOptionsHandle, final byte[][] keys,
2059
+ final long[] columnFamilyHandles) throws RocksDBException;
2060
+ private native byte[][] multiGetForUpdate(final long handle,
2061
+ final long readOptionsHandle, final byte[][] keys)
2062
+ throws RocksDBException;
2063
+ private native long getIterator(final long handle,
2064
+ final long readOptionsHandle);
2065
+ private native long getIterator(final long handle,
2066
+ final long readOptionsHandle, final long columnFamilyHandle);
2067
+ private native void put(final long handle, final byte[] key, final int keyLength,
2068
+ final byte[] value, final int valueLength, final long columnFamilyHandle,
2069
+ final boolean assumeTracked) throws RocksDBException;
2070
+ private native void put(final long handle, final byte[] key,
2071
+ final int keyLength, final byte[] value, final int valueLength)
2072
+ throws RocksDBException;
2073
+ private native void put(final long handle, final byte[][] keys, final int keysLength,
2074
+ final byte[][] values, final int valuesLength, final long columnFamilyHandle,
2075
+ final boolean assumeTracked) throws RocksDBException;
2076
+ private native void put(final long handle, final byte[][] keys,
2077
+ final int keysLength, final byte[][] values, final int valuesLength)
2078
+ throws RocksDBException;
2079
+ private native void merge(final long handle, final byte[] key, final int keyLength,
2080
+ final byte[] value, final int valueLength, final long columnFamilyHandle,
2081
+ final boolean assumeTracked) throws RocksDBException;
2082
+ private native void merge(final long handle, final byte[] key,
2083
+ final int keyLength, final byte[] value, final int valueLength)
2084
+ throws RocksDBException;
2085
+ private native void delete(final long handle, final byte[] key, final int keyLength,
2086
+ final long columnFamilyHandle, final boolean assumeTracked) throws RocksDBException;
2087
+ private native void delete(final long handle, final byte[] key,
2088
+ final int keyLength) throws RocksDBException;
2089
+ private native void delete(final long handle, final byte[][] keys, final int keysLength,
2090
+ final long columnFamilyHandle, final boolean assumeTracked) throws RocksDBException;
2091
+ private native void delete(final long handle, final byte[][] keys,
2092
+ final int keysLength) throws RocksDBException;
2093
+ private native void singleDelete(final long handle, final byte[] key, final int keyLength,
2094
+ final long columnFamilyHandle, final boolean assumeTracked) throws RocksDBException;
2095
+ private native void singleDelete(final long handle, final byte[] key,
2096
+ final int keyLength) throws RocksDBException;
2097
+ private native void singleDelete(final long handle, final byte[][] keys, final int keysLength,
2098
+ final long columnFamilyHandle, final boolean assumeTracked) throws RocksDBException;
2099
+ private native void singleDelete(final long handle, final byte[][] keys,
2100
+ final int keysLength) throws RocksDBException;
2101
+ private native void putUntracked(final long handle, final byte[] key,
2102
+ final int keyLength, final byte[] value, final int valueLength,
2103
+ final long columnFamilyHandle) throws RocksDBException;
2104
+ private native void putUntracked(final long handle, final byte[] key,
2105
+ final int keyLength, final byte[] value, final int valueLength)
2106
+ throws RocksDBException;
2107
+ private native void putUntracked(final long handle, final byte[][] keys,
2108
+ final int keysLength, final byte[][] values, final int valuesLength,
2109
+ final long columnFamilyHandle) throws RocksDBException;
2110
+ private native void putUntracked(final long handle, final byte[][] keys,
2111
+ final int keysLength, final byte[][] values, final int valuesLength)
2112
+ throws RocksDBException;
2113
+ private native void mergeUntracked(final long handle, final byte[] key,
2114
+ final int keyLength, final byte[] value, final int valueLength,
2115
+ final long columnFamilyHandle) throws RocksDBException;
2116
+ private native void mergeUntracked(final long handle, final byte[] key,
2117
+ final int keyLength, final byte[] value, final int valueLength)
2118
+ throws RocksDBException;
2119
+ private native void deleteUntracked(final long handle, final byte[] key,
2120
+ final int keyLength, final long columnFamilyHandle)
2121
+ throws RocksDBException;
2122
+ private native void deleteUntracked(final long handle, final byte[] key,
2123
+ final int keyLength) throws RocksDBException;
2124
+ private native void deleteUntracked(final long handle, final byte[][] keys,
2125
+ final int keysLength, final long columnFamilyHandle)
2126
+ throws RocksDBException;
2127
+ private native void deleteUntracked(final long handle, final byte[][] keys,
2128
+ final int keysLength) throws RocksDBException;
2129
+ private native void putLogData(final long handle, final byte[] blob,
2130
+ final int blobLength);
2131
+ private native void disableIndexing(final long handle);
2132
+ private native void enableIndexing(final long handle);
2133
+ private native long getNumKeys(final long handle);
2134
+ private native long getNumPuts(final long handle);
2135
+ private native long getNumDeletes(final long handle);
2136
+ private native long getNumMerges(final long handle);
2137
+ private native long getElapsedTime(final long handle);
2138
+ private native long getWriteBatch(final long handle);
2139
+ private native void setLockTimeout(final long handle, final long lockTimeout);
2140
+ private native long getWriteOptions(final long handle);
2141
+ private native void setWriteOptions(final long handle,
2142
+ final long writeOptionsHandle);
2143
+ private native void undoGetForUpdate(final long handle, final byte[] key,
2144
+ final int keyLength, final long columnFamilyHandle);
2145
+ private native void undoGetForUpdate(final long handle, final byte[] key,
2146
+ final int keyLength);
2147
+ private native void rebuildFromWriteBatch(final long handle,
2148
+ final long writeBatchHandle) throws RocksDBException;
2149
+ private native long getCommitTimeWriteBatch(final long handle);
2150
+ private native void setLogNumber(final long handle, final long logNumber);
2151
+ private native long getLogNumber(final long handle);
2152
+ private native void setName(final long handle, final String name)
2153
+ throws RocksDBException;
2154
+ private native String getName(final long handle);
2155
+ private native long getID(final long handle);
2156
+ private native boolean isDeadlockDetect(final long handle);
2157
+ private native WaitingTransactions getWaitingTxns(final long handle);
2158
+ private native byte getState(final long handle);
2159
+ private native long getId(final long handle);
2160
+
2161
+ @Override protected final native void disposeInternal(final long handle);
2162
+ }