rocksdb-native 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (691) hide show
  1. package/binding.gyp +23 -0
  2. package/binding.js +1 -1
  3. package/package.json +19 -1
  4. package/vendor/rocksdb.cc +79 -0
  5. package/vendor/rocksdb.gyp +414 -0
  6. package/.clang-format +0 -15
  7. package/.github/workflows/test-node.yml +0 -23
  8. package/.gitmodules +0 -4
  9. package/NOTICE +0 -13
  10. package/vendor/rocksdb/.circleci/config.yml +0 -892
  11. package/vendor/rocksdb/.circleci/ubsan_suppression_list.txt +0 -6
  12. package/vendor/rocksdb/.clang-format +0 -5
  13. package/vendor/rocksdb/.github/workflows/sanity_check.yml +0 -47
  14. package/vendor/rocksdb/.lgtm.yml +0 -4
  15. package/vendor/rocksdb/AUTHORS +0 -12
  16. package/vendor/rocksdb/CODE_OF_CONDUCT.md +0 -77
  17. package/vendor/rocksdb/CONTRIBUTING.md +0 -17
  18. package/vendor/rocksdb/DEFAULT_OPTIONS_HISTORY.md +0 -24
  19. package/vendor/rocksdb/DUMP_FORMAT.md +0 -16
  20. package/vendor/rocksdb/HISTORY.md +0 -2399
  21. package/vendor/rocksdb/INSTALL.md +0 -220
  22. package/vendor/rocksdb/LANGUAGE-BINDINGS.md +0 -26
  23. package/vendor/rocksdb/Makefile +0 -2579
  24. package/vendor/rocksdb/PLUGINS.md +0 -8
  25. package/vendor/rocksdb/TARGETS +0 -5599
  26. package/vendor/rocksdb/USERS.md +0 -165
  27. package/vendor/rocksdb/Vagrantfile +0 -39
  28. package/vendor/rocksdb/WINDOWS_PORT.md +0 -228
  29. package/vendor/rocksdb/buckifier/bench-slow.json +0 -6163
  30. package/vendor/rocksdb/buckifier/bench.json +0 -1594
  31. package/vendor/rocksdb/buckifier/buckify_rocksdb.py +0 -333
  32. package/vendor/rocksdb/buckifier/check_buck_targets.sh +0 -32
  33. package/vendor/rocksdb/buckifier/rocks_test_runner.sh +0 -6
  34. package/vendor/rocksdb/buckifier/targets_builder.py +0 -150
  35. package/vendor/rocksdb/buckifier/targets_cfg.py +0 -41
  36. package/vendor/rocksdb/buckifier/util.py +0 -118
  37. package/vendor/rocksdb/build_tools/amalgamate.py +0 -168
  38. package/vendor/rocksdb/build_tools/benchmark_log_tool.py +0 -238
  39. package/vendor/rocksdb/build_tools/build_detect_platform +0 -804
  40. package/vendor/rocksdb/build_tools/check-sources.sh +0 -48
  41. package/vendor/rocksdb/build_tools/dependencies_platform010.sh +0 -22
  42. package/vendor/rocksdb/build_tools/dockerbuild.sh +0 -3
  43. package/vendor/rocksdb/build_tools/error_filter.py +0 -181
  44. package/vendor/rocksdb/build_tools/fb_compile_mongo.sh +0 -55
  45. package/vendor/rocksdb/build_tools/fbcode_config.sh +0 -175
  46. package/vendor/rocksdb/build_tools/fbcode_config_platform010.sh +0 -175
  47. package/vendor/rocksdb/build_tools/format-diff.sh +0 -203
  48. package/vendor/rocksdb/build_tools/gnu_parallel +0 -7971
  49. package/vendor/rocksdb/build_tools/make_package.sh +0 -129
  50. package/vendor/rocksdb/build_tools/ps_with_stack +0 -38
  51. package/vendor/rocksdb/build_tools/regression_build_test.sh +0 -396
  52. package/vendor/rocksdb/build_tools/run_ci_db_test.ps1 +0 -493
  53. package/vendor/rocksdb/build_tools/setup_centos7.sh +0 -45
  54. package/vendor/rocksdb/build_tools/ubuntu20_image/Dockerfile +0 -57
  55. package/vendor/rocksdb/build_tools/update_dependencies.sh +0 -106
  56. package/vendor/rocksdb/build_tools/version.sh +0 -23
  57. package/vendor/rocksdb/common.mk +0 -30
  58. package/vendor/rocksdb/crash_test.mk +0 -107
  59. package/vendor/rocksdb/db/c_test.c +0 -3609
  60. package/vendor/rocksdb/docs/CNAME +0 -1
  61. package/vendor/rocksdb/docs/CONTRIBUTING.md +0 -115
  62. package/vendor/rocksdb/docs/Gemfile +0 -4
  63. package/vendor/rocksdb/docs/LICENSE-DOCUMENTATION +0 -385
  64. package/vendor/rocksdb/docs/TEMPLATE-INFORMATION.md +0 -17
  65. package/vendor/rocksdb/docs/_config.yml +0 -85
  66. package/vendor/rocksdb/docs/_data/authors.yml +0 -81
  67. package/vendor/rocksdb/docs/_data/features.yml +0 -19
  68. package/vendor/rocksdb/docs/_data/nav.yml +0 -30
  69. package/vendor/rocksdb/docs/_data/nav_docs.yml +0 -3
  70. package/vendor/rocksdb/docs/_data/powered_by.yml +0 -1
  71. package/vendor/rocksdb/docs/_data/powered_by_highlight.yml +0 -1
  72. package/vendor/rocksdb/docs/_data/promo.yml +0 -6
  73. package/vendor/rocksdb/docs/_docs/faq.md +0 -48
  74. package/vendor/rocksdb/docs/_docs/getting-started.md +0 -78
  75. package/vendor/rocksdb/docs/_includes/blog_pagination.html +0 -28
  76. package/vendor/rocksdb/docs/_includes/content/gridblocks.html +0 -5
  77. package/vendor/rocksdb/docs/_includes/content/items/gridblock.html +0 -37
  78. package/vendor/rocksdb/docs/_includes/doc.html +0 -25
  79. package/vendor/rocksdb/docs/_includes/doc_paging.html +0 -0
  80. package/vendor/rocksdb/docs/_includes/footer.html +0 -34
  81. package/vendor/rocksdb/docs/_includes/head.html +0 -23
  82. package/vendor/rocksdb/docs/_includes/header.html +0 -19
  83. package/vendor/rocksdb/docs/_includes/hero.html +0 -0
  84. package/vendor/rocksdb/docs/_includes/home_header.html +0 -22
  85. package/vendor/rocksdb/docs/_includes/katex_import.html +0 -3
  86. package/vendor/rocksdb/docs/_includes/katex_render.html +0 -210
  87. package/vendor/rocksdb/docs/_includes/nav/collection_nav.html +0 -64
  88. package/vendor/rocksdb/docs/_includes/nav/collection_nav_group.html +0 -19
  89. package/vendor/rocksdb/docs/_includes/nav/collection_nav_group_item.html +0 -1
  90. package/vendor/rocksdb/docs/_includes/nav/header_nav.html +0 -30
  91. package/vendor/rocksdb/docs/_includes/nav.html +0 -37
  92. package/vendor/rocksdb/docs/_includes/nav_search.html +0 -15
  93. package/vendor/rocksdb/docs/_includes/plugins/all_share.html +0 -3
  94. package/vendor/rocksdb/docs/_includes/plugins/ascii_cinema.html +0 -2
  95. package/vendor/rocksdb/docs/_includes/plugins/button.html +0 -6
  96. package/vendor/rocksdb/docs/_includes/plugins/github_star.html +0 -4
  97. package/vendor/rocksdb/docs/_includes/plugins/github_watch.html +0 -4
  98. package/vendor/rocksdb/docs/_includes/plugins/google_share.html +0 -5
  99. package/vendor/rocksdb/docs/_includes/plugins/iframe.html +0 -6
  100. package/vendor/rocksdb/docs/_includes/plugins/like_button.html +0 -18
  101. package/vendor/rocksdb/docs/_includes/plugins/plugin_row.html +0 -5
  102. package/vendor/rocksdb/docs/_includes/plugins/post_social_plugins.html +0 -41
  103. package/vendor/rocksdb/docs/_includes/plugins/slideshow.html +0 -88
  104. package/vendor/rocksdb/docs/_includes/plugins/twitter_follow.html +0 -12
  105. package/vendor/rocksdb/docs/_includes/plugins/twitter_share.html +0 -11
  106. package/vendor/rocksdb/docs/_includes/post.html +0 -40
  107. package/vendor/rocksdb/docs/_includes/powered_by.html +0 -28
  108. package/vendor/rocksdb/docs/_includes/social_plugins.html +0 -31
  109. package/vendor/rocksdb/docs/_includes/ui/button.html +0 -1
  110. package/vendor/rocksdb/docs/_layouts/basic.html +0 -12
  111. package/vendor/rocksdb/docs/_layouts/blog.html +0 -11
  112. package/vendor/rocksdb/docs/_layouts/blog_default.html +0 -14
  113. package/vendor/rocksdb/docs/_layouts/default.html +0 -12
  114. package/vendor/rocksdb/docs/_layouts/doc_default.html +0 -14
  115. package/vendor/rocksdb/docs/_layouts/doc_page.html +0 -10
  116. package/vendor/rocksdb/docs/_layouts/docs.html +0 -5
  117. package/vendor/rocksdb/docs/_layouts/home.html +0 -26
  118. package/vendor/rocksdb/docs/_layouts/page.html +0 -3
  119. package/vendor/rocksdb/docs/_layouts/plain.html +0 -10
  120. package/vendor/rocksdb/docs/_layouts/post.html +0 -8
  121. package/vendor/rocksdb/docs/_layouts/redirect.html +0 -6
  122. package/vendor/rocksdb/docs/_layouts/top-level.html +0 -10
  123. package/vendor/rocksdb/docs/_posts/2014-03-27-how-to-backup-rocksdb.markdown +0 -135
  124. package/vendor/rocksdb/docs/_posts/2014-03-27-how-to-persist-in-memory-rocksdb-database.markdown +0 -54
  125. package/vendor/rocksdb/docs/_posts/2014-04-02-the-1st-rocksdb-local-meetup-held-on-march-27-2014.markdown +0 -53
  126. package/vendor/rocksdb/docs/_posts/2014-04-07-rocksdb-2-8-release.markdown +0 -40
  127. package/vendor/rocksdb/docs/_posts/2014-04-21-indexing-sst-files-for-better-lookup-performance.markdown +0 -28
  128. package/vendor/rocksdb/docs/_posts/2014-05-14-lock.markdown +0 -88
  129. package/vendor/rocksdb/docs/_posts/2014-05-19-rocksdb-3-0-release.markdown +0 -24
  130. package/vendor/rocksdb/docs/_posts/2014-05-22-rocksdb-3-1-release.markdown +0 -20
  131. package/vendor/rocksdb/docs/_posts/2014-06-23-plaintable-a-new-file-format.markdown +0 -47
  132. package/vendor/rocksdb/docs/_posts/2014-06-27-avoid-expensive-locks-in-get.markdown +0 -89
  133. package/vendor/rocksdb/docs/_posts/2014-06-27-rocksdb-3-2-release.markdown +0 -30
  134. package/vendor/rocksdb/docs/_posts/2014-07-29-rocksdb-3-3-release.markdown +0 -34
  135. package/vendor/rocksdb/docs/_posts/2014-09-12-cuckoo.markdown +0 -74
  136. package/vendor/rocksdb/docs/_posts/2014-09-12-new-bloom-filter-format.markdown +0 -52
  137. package/vendor/rocksdb/docs/_posts/2014-09-15-rocksdb-3-5-release.markdown +0 -38
  138. package/vendor/rocksdb/docs/_posts/2015-01-16-migrating-from-leveldb-to-rocksdb-2.markdown +0 -112
  139. package/vendor/rocksdb/docs/_posts/2015-02-24-reading-rocksdb-options-from-a-file.markdown +0 -41
  140. package/vendor/rocksdb/docs/_posts/2015-02-27-write-batch-with-index.markdown +0 -20
  141. package/vendor/rocksdb/docs/_posts/2015-04-22-integrating-rocksdb-with-mongodb-2.markdown +0 -16
  142. package/vendor/rocksdb/docs/_posts/2015-06-12-rocksdb-in-osquery.markdown +0 -10
  143. package/vendor/rocksdb/docs/_posts/2015-07-15-rocksdb-2015-h2-roadmap.markdown +0 -92
  144. package/vendor/rocksdb/docs/_posts/2015-07-17-spatial-indexing-in-rocksdb.markdown +0 -78
  145. package/vendor/rocksdb/docs/_posts/2015-07-22-rocksdb-is-now-available-in-windows-platform.markdown +0 -30
  146. package/vendor/rocksdb/docs/_posts/2015-07-23-dynamic-level.markdown +0 -29
  147. package/vendor/rocksdb/docs/_posts/2015-10-27-getthreadlist.markdown +0 -193
  148. package/vendor/rocksdb/docs/_posts/2015-11-10-use-checkpoints-for-efficient-snapshots.markdown +0 -45
  149. package/vendor/rocksdb/docs/_posts/2015-11-16-analysis-file-read-latency-by-level.markdown +0 -244
  150. package/vendor/rocksdb/docs/_posts/2016-01-29-compaction_pri.markdown +0 -51
  151. package/vendor/rocksdb/docs/_posts/2016-02-24-rocksdb-4-2-release.markdown +0 -41
  152. package/vendor/rocksdb/docs/_posts/2016-02-25-rocksdb-ama.markdown +0 -20
  153. package/vendor/rocksdb/docs/_posts/2016-03-07-rocksdb-options-file.markdown +0 -24
  154. package/vendor/rocksdb/docs/_posts/2016-04-26-rocksdb-4-5-1-released.markdown +0 -60
  155. package/vendor/rocksdb/docs/_posts/2016-07-26-rocksdb-4-8-released.markdown +0 -48
  156. package/vendor/rocksdb/docs/_posts/2016-09-28-rocksdb-4-11-2-released.markdown +0 -49
  157. package/vendor/rocksdb/docs/_posts/2017-01-06-rocksdb-5-0-1-released.markdown +0 -26
  158. package/vendor/rocksdb/docs/_posts/2017-02-07-rocksdb-5-1-2-released.markdown +0 -15
  159. package/vendor/rocksdb/docs/_posts/2017-02-17-bulkoad-ingest-sst-file.markdown +0 -50
  160. package/vendor/rocksdb/docs/_posts/2017-03-02-rocksdb-5-2-1-released.markdown +0 -22
  161. package/vendor/rocksdb/docs/_posts/2017-05-12-partitioned-index-filter.markdown +0 -34
  162. package/vendor/rocksdb/docs/_posts/2017-05-14-core-local-stats.markdown +0 -106
  163. package/vendor/rocksdb/docs/_posts/2017-05-26-rocksdb-5-4-5-released.markdown +0 -39
  164. package/vendor/rocksdb/docs/_posts/2017-06-26-17-level-based-changes.markdown +0 -60
  165. package/vendor/rocksdb/docs/_posts/2017-06-29-rocksdb-5-5-1-released.markdown +0 -22
  166. package/vendor/rocksdb/docs/_posts/2017-07-25-rocksdb-5-6-1-released.markdown +0 -22
  167. package/vendor/rocksdb/docs/_posts/2017-08-24-pinnableslice.markdown +0 -37
  168. package/vendor/rocksdb/docs/_posts/2017-08-25-flushwal.markdown +0 -26
  169. package/vendor/rocksdb/docs/_posts/2017-09-28-rocksdb-5-8-released.markdown +0 -25
  170. package/vendor/rocksdb/docs/_posts/2017-12-18-17-auto-tuned-rate-limiter.markdown +0 -28
  171. package/vendor/rocksdb/docs/_posts/2017-12-19-write-prepared-txn.markdown +0 -41
  172. package/vendor/rocksdb/docs/_posts/2018-02-05-rocksdb-5-10-2-released.markdown +0 -22
  173. package/vendor/rocksdb/docs/_posts/2018-08-01-rocksdb-tuning-advisor.markdown +0 -58
  174. package/vendor/rocksdb/docs/_posts/2018-08-23-data-block-hash-index.markdown +0 -118
  175. package/vendor/rocksdb/docs/_posts/2018-11-21-delete-range.markdown +0 -292
  176. package/vendor/rocksdb/docs/_posts/2019-03-08-format-version-4.markdown +0 -36
  177. package/vendor/rocksdb/docs/_posts/2019-08-15-unordered-write.markdown +0 -56
  178. package/vendor/rocksdb/docs/_posts/2021-04-12-universal-improvements.markdown +0 -46
  179. package/vendor/rocksdb/docs/_posts/2021-05-26-integrated-blob-db.markdown +0 -101
  180. package/vendor/rocksdb/docs/_posts/2021-05-26-online-validation.markdown +0 -17
  181. package/vendor/rocksdb/docs/_posts/2021-05-27-rocksdb-secondary-cache.markdown +0 -195
  182. package/vendor/rocksdb/docs/_posts/2021-05-31-dictionary-compression.markdown +0 -157
  183. package/vendor/rocksdb/docs/_posts/2021-12-29-ribbon-filter.markdown +0 -281
  184. package/vendor/rocksdb/docs/_posts/2022-07-18-per-key-value-checksum.markdown +0 -142
  185. package/vendor/rocksdb/docs/_posts/2022-10-05-lost-buffered-write-recovery.markdown +0 -123
  186. package/vendor/rocksdb/docs/_posts/2022-10-07-asynchronous-io-in-rocksdb.markdown +0 -133
  187. package/vendor/rocksdb/docs/_posts/2022-10-31-align-compaction-output-file.markdown +0 -107
  188. package/vendor/rocksdb/docs/_posts/2022-11-09-time-aware-tiered-storage.markdown +0 -121
  189. package/vendor/rocksdb/docs/_sass/_base.scss +0 -492
  190. package/vendor/rocksdb/docs/_sass/_blog.scss +0 -47
  191. package/vendor/rocksdb/docs/_sass/_buttons.scss +0 -47
  192. package/vendor/rocksdb/docs/_sass/_footer.scss +0 -82
  193. package/vendor/rocksdb/docs/_sass/_gridBlock.scss +0 -115
  194. package/vendor/rocksdb/docs/_sass/_header.scss +0 -139
  195. package/vendor/rocksdb/docs/_sass/_poweredby.scss +0 -69
  196. package/vendor/rocksdb/docs/_sass/_promo.scss +0 -55
  197. package/vendor/rocksdb/docs/_sass/_react_docs_nav.scss +0 -332
  198. package/vendor/rocksdb/docs/_sass/_react_header_nav.scss +0 -141
  199. package/vendor/rocksdb/docs/_sass/_reset.scss +0 -43
  200. package/vendor/rocksdb/docs/_sass/_search.scss +0 -142
  201. package/vendor/rocksdb/docs/_sass/_slideshow.scss +0 -48
  202. package/vendor/rocksdb/docs/_sass/_syntax-highlighting.scss +0 -129
  203. package/vendor/rocksdb/docs/_sass/_tables.scss +0 -47
  204. package/vendor/rocksdb/docs/_top-level/support.md +0 -22
  205. package/vendor/rocksdb/docs/blog/all.html +0 -20
  206. package/vendor/rocksdb/docs/blog/index.html +0 -12
  207. package/vendor/rocksdb/docs/css/main.scss +0 -159
  208. package/vendor/rocksdb/docs/doc-type-examples/2016-04-07-blog-post-example.md +0 -21
  209. package/vendor/rocksdb/docs/doc-type-examples/docs-hello-world.md +0 -12
  210. package/vendor/rocksdb/docs/doc-type-examples/top-level-example.md +0 -8
  211. package/vendor/rocksdb/docs/docs/index.html +0 -6
  212. package/vendor/rocksdb/docs/feed.xml +0 -30
  213. package/vendor/rocksdb/docs/index.md +0 -9
  214. package/vendor/rocksdb/docs/static/favicon.png +0 -0
  215. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Black.woff +0 -0
  216. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Black.woff2 +0 -0
  217. package/vendor/rocksdb/docs/static/fonts/LatoLatin-BlackItalic.woff +0 -0
  218. package/vendor/rocksdb/docs/static/fonts/LatoLatin-BlackItalic.woff2 +0 -0
  219. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Italic.woff +0 -0
  220. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Italic.woff2 +0 -0
  221. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Light.woff +0 -0
  222. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Light.woff2 +0 -0
  223. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Regular.woff +0 -0
  224. package/vendor/rocksdb/docs/static/fonts/LatoLatin-Regular.woff2 +0 -0
  225. package/vendor/rocksdb/docs/static/images/Resize-of-20140327_200754-300x225.jpg +0 -0
  226. package/vendor/rocksdb/docs/static/images/align-compaction-output/compaction_output_file_size_compare.png +0 -0
  227. package/vendor/rocksdb/docs/static/images/align-compaction-output/file_cut_align.png +0 -0
  228. package/vendor/rocksdb/docs/static/images/align-compaction-output/file_cut_normal.png +0 -0
  229. package/vendor/rocksdb/docs/static/images/align-compaction-output/file_cut_trival_move.png +0 -0
  230. package/vendor/rocksdb/docs/static/images/align-compaction-output/file_size_compare.png +0 -0
  231. package/vendor/rocksdb/docs/static/images/align-compaction-output/write_amp_compare.png +0 -0
  232. package/vendor/rocksdb/docs/static/images/asynchronous-io/mget_async.png +0 -0
  233. package/vendor/rocksdb/docs/static/images/asynchronous-io/scan_async.png +0 -0
  234. package/vendor/rocksdb/docs/static/images/binaryseek.png +0 -0
  235. package/vendor/rocksdb/docs/static/images/bloom_fp_vs_bpk.png +0 -0
  236. package/vendor/rocksdb/docs/static/images/compaction/full-range.png +0 -0
  237. package/vendor/rocksdb/docs/static/images/compaction/l0-l1-contend.png +0 -0
  238. package/vendor/rocksdb/docs/static/images/compaction/l1-l2-contend.png +0 -0
  239. package/vendor/rocksdb/docs/static/images/compaction/part-range-old.png +0 -0
  240. package/vendor/rocksdb/docs/static/images/data-block-hash-index/block-format-binary-seek.png +0 -0
  241. package/vendor/rocksdb/docs/static/images/data-block-hash-index/block-format-hash-index.png +0 -0
  242. package/vendor/rocksdb/docs/static/images/data-block-hash-index/hash-index-data-structure.png +0 -0
  243. package/vendor/rocksdb/docs/static/images/data-block-hash-index/perf-cache-miss.png +0 -0
  244. package/vendor/rocksdb/docs/static/images/data-block-hash-index/perf-throughput.png +0 -0
  245. package/vendor/rocksdb/docs/static/images/delrange/delrange_collapsed.png +0 -0
  246. package/vendor/rocksdb/docs/static/images/delrange/delrange_key_schema.png +0 -0
  247. package/vendor/rocksdb/docs/static/images/delrange/delrange_sst_blocks.png +0 -0
  248. package/vendor/rocksdb/docs/static/images/delrange/delrange_uncollapsed.png +0 -0
  249. package/vendor/rocksdb/docs/static/images/delrange/delrange_write_path.png +0 -0
  250. package/vendor/rocksdb/docs/static/images/dictcmp/dictcmp_raw_sampled.png +0 -0
  251. package/vendor/rocksdb/docs/static/images/dictcmp/dictcmp_sst_blocks.png +0 -0
  252. package/vendor/rocksdb/docs/static/images/dictcmp/dictcmp_zstd_trained.png +0 -0
  253. package/vendor/rocksdb/docs/static/images/integrated-blob-db/BlobDB_Benchmarks_Legacy_Vs_Integrated.png +0 -0
  254. package/vendor/rocksdb/docs/static/images/integrated-blob-db/BlobDB_Benchmarks_RW_RO_Perf.png +0 -0
  255. package/vendor/rocksdb/docs/static/images/integrated-blob-db/BlobDB_Benchmarks_Write_Amp.png +0 -0
  256. package/vendor/rocksdb/docs/static/images/integrated-blob-db/BlobDB_Benchmarks_Write_Perf.png +0 -0
  257. package/vendor/rocksdb/docs/static/images/kv-checksum/Memtable-entry.png +0 -0
  258. package/vendor/rocksdb/docs/static/images/kv-checksum/Memtable-write.png +0 -0
  259. package/vendor/rocksdb/docs/static/images/kv-checksum/ProtInfo-Memtable.png +0 -0
  260. package/vendor/rocksdb/docs/static/images/kv-checksum/ProtInfo-Writebatch-to-Memtable.png +0 -0
  261. package/vendor/rocksdb/docs/static/images/kv-checksum/ProtInfo-Writebatch.png +0 -0
  262. package/vendor/rocksdb/docs/static/images/kv-checksum/WAL-fragment.png +0 -0
  263. package/vendor/rocksdb/docs/static/images/kv-checksum/WAL-read.png +0 -0
  264. package/vendor/rocksdb/docs/static/images/kv-checksum/WAL-write.png +0 -0
  265. package/vendor/rocksdb/docs/static/images/kv-checksum/Write-batch.png +0 -0
  266. package/vendor/rocksdb/docs/static/images/kv-checksum/Writebatch-write.png +0 -0
  267. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/angry-cat.png +0 -0
  268. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/basic-setup.png +0 -0
  269. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/happy-cat.png +0 -0
  270. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/replay-extension.png +0 -0
  271. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/test-fs-writable-file.png +0 -0
  272. package/vendor/rocksdb/docs/static/images/lost-buffered-write-recovery/trace-extension.png +0 -0
  273. package/vendor/rocksdb/docs/static/images/pcache-blockindex.jpg +0 -0
  274. package/vendor/rocksdb/docs/static/images/pcache-fileindex.jpg +0 -0
  275. package/vendor/rocksdb/docs/static/images/pcache-filelayout.jpg +0 -0
  276. package/vendor/rocksdb/docs/static/images/pcache-readiopath.jpg +0 -0
  277. package/vendor/rocksdb/docs/static/images/pcache-tieredstorage.jpg +0 -0
  278. package/vendor/rocksdb/docs/static/images/pcache-writeiopath.jpg +0 -0
  279. package/vendor/rocksdb/docs/static/images/promo-adapt.svg +0 -8
  280. package/vendor/rocksdb/docs/static/images/promo-flash.svg +0 -28
  281. package/vendor/rocksdb/docs/static/images/promo-operations.svg +0 -6
  282. package/vendor/rocksdb/docs/static/images/promo-performance.svg +0 -134
  283. package/vendor/rocksdb/docs/static/images/rate-limiter/auto-tuned-write-KBps-series.png +0 -0
  284. package/vendor/rocksdb/docs/static/images/rate-limiter/write-KBps-cdf.png +0 -0
  285. package/vendor/rocksdb/docs/static/images/rate-limiter/write-KBps-series.png +0 -0
  286. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/Mixgraph_hit_rate.png +0 -0
  287. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/Mixgraph_throughput.png +0 -0
  288. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/arch_diagram.png +0 -0
  289. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/insert_flow.png +0 -0
  290. package/vendor/rocksdb/docs/static/images/rocksdb-secondary-cache/lookup_flow.png +0 -0
  291. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/compaction_moving_up_conflict.png +0 -0
  292. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/per_key_placement_compaction.png +0 -0
  293. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/tiered_storage_design.png +0 -0
  294. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/tiered_storage_overview.png +0 -0
  295. package/vendor/rocksdb/docs/static/images/time-aware-tiered-storage/tiered_storage_problem.png +0 -0
  296. package/vendor/rocksdb/docs/static/images/tree_example1.png +0 -0
  297. package/vendor/rocksdb/docs/static/logo.svg +0 -76
  298. package/vendor/rocksdb/docs/static/og_image.png +0 -0
  299. package/vendor/rocksdb/examples/Makefile +0 -58
  300. package/vendor/rocksdb/examples/c_simple_example.c +0 -96
  301. package/vendor/rocksdb/examples/rocksdb_option_file_example.ini +0 -142
  302. package/vendor/rocksdb/fuzz/Makefile +0 -67
  303. package/vendor/rocksdb/fuzz/proto/db_operation.proto +0 -28
  304. package/vendor/rocksdb/issue_template.md +0 -7
  305. package/vendor/rocksdb/java/GetBenchmarks.md +0 -161
  306. package/vendor/rocksdb/java/HISTORY-JAVA.md +0 -86
  307. package/vendor/rocksdb/java/Makefile +0 -453
  308. package/vendor/rocksdb/java/RELEASE.md +0 -59
  309. package/vendor/rocksdb/java/benchmark/src/main/java/org/rocksdb/benchmark/DbBenchmark.java +0 -1640
  310. package/vendor/rocksdb/java/crossbuild/Vagrantfile +0 -51
  311. package/vendor/rocksdb/java/crossbuild/build-linux-alpine.sh +0 -70
  312. package/vendor/rocksdb/java/crossbuild/build-linux-centos.sh +0 -38
  313. package/vendor/rocksdb/java/crossbuild/build-linux.sh +0 -15
  314. package/vendor/rocksdb/java/crossbuild/docker-build-linux-alpine.sh +0 -17
  315. package/vendor/rocksdb/java/crossbuild/docker-build-linux-centos.sh +0 -38
  316. package/vendor/rocksdb/java/jdb_bench.sh +0 -13
  317. package/vendor/rocksdb/java/jmh/LICENSE-HEADER.txt +0 -5
  318. package/vendor/rocksdb/java/jmh/pom.xml +0 -138
  319. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/jmh/ComparatorBenchmarks.java +0 -139
  320. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/jmh/GetBenchmarks.java +0 -215
  321. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/jmh/MultiGetBenchmarks.java +0 -214
  322. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/jmh/PutBenchmarks.java +0 -112
  323. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/util/FileUtils.java +0 -59
  324. package/vendor/rocksdb/java/jmh/src/main/java/org/rocksdb/util/KVUtils.java +0 -72
  325. package/vendor/rocksdb/java/pom.xml.template +0 -178
  326. package/vendor/rocksdb/java/samples/src/main/java/OptimisticTransactionSample.java +0 -184
  327. package/vendor/rocksdb/java/samples/src/main/java/RocksDBColumnFamilySample.java +0 -78
  328. package/vendor/rocksdb/java/samples/src/main/java/RocksDBSample.java +0 -295
  329. package/vendor/rocksdb/java/samples/src/main/java/TransactionSample.java +0 -183
  330. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractCompactionFilter.java +0 -59
  331. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractCompactionFilterFactory.java +0 -77
  332. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractComparator.java +0 -124
  333. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractComparatorJniBridge.java +0 -119
  334. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractEventListener.java +0 -334
  335. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractImmutableNativeReference.java +0 -65
  336. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractMutableOptions.java +0 -368
  337. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractNativeReference.java +0 -49
  338. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractRocksIterator.java +0 -146
  339. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractSlice.java +0 -191
  340. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractTableFilter.java +0 -20
  341. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractTraceWriter.java +0 -70
  342. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractTransactionNotifier.java +0 -54
  343. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractWalFilter.java +0 -49
  344. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AbstractWriteBatch.java +0 -203
  345. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AccessHint.java +0 -53
  346. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AdvancedColumnFamilyOptionsInterface.java +0 -463
  347. package/vendor/rocksdb/java/src/main/java/org/rocksdb/AdvancedMutableColumnFamilyOptionsInterface.java +0 -830
  348. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BackgroundErrorReason.java +0 -46
  349. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BackupEngine.java +0 -259
  350. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BackupEngineOptions.java +0 -458
  351. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BackupInfo.java +0 -76
  352. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BlockBasedTableConfig.java +0 -951
  353. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BloomFilter.java +0 -73
  354. package/vendor/rocksdb/java/src/main/java/org/rocksdb/BuiltinComparator.java +0 -20
  355. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ByteBufferGetStatus.java +0 -50
  356. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Cache.java +0 -40
  357. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CassandraCompactionFilter.java +0 -20
  358. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CassandraValueMergeOperator.java +0 -25
  359. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Checkpoint.java +0 -62
  360. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ChecksumType.java +0 -45
  361. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ClockCache.java +0 -59
  362. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyDescriptor.java +0 -84
  363. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyHandle.java +0 -151
  364. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyMetaData.java +0 -70
  365. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyOptions.java +0 -1543
  366. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ColumnFamilyOptionsInterface.java +0 -536
  367. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactRangeOptions.java +0 -245
  368. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionJobInfo.java +0 -161
  369. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionJobStats.java +0 -295
  370. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionOptions.java +0 -121
  371. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionOptionsFIFO.java +0 -87
  372. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionOptionsUniversal.java +0 -273
  373. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionPriority.java +0 -81
  374. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionReason.java +0 -141
  375. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionStopStyle.java +0 -55
  376. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompactionStyle.java +0 -81
  377. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ComparatorOptions.java +0 -133
  378. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ComparatorType.java +0 -48
  379. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompressionOptions.java +0 -150
  380. package/vendor/rocksdb/java/src/main/java/org/rocksdb/CompressionType.java +0 -121
  381. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ConcurrentTaskLimiter.java +0 -44
  382. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ConcurrentTaskLimiterImpl.java +0 -48
  383. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ConfigOptions.java +0 -53
  384. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DBOptions.java +0 -1496
  385. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DBOptionsInterface.java +0 -1756
  386. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DataBlockIndexType.java +0 -32
  387. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DbPath.java +0 -47
  388. package/vendor/rocksdb/java/src/main/java/org/rocksdb/DirectSlice.java +0 -136
  389. package/vendor/rocksdb/java/src/main/java/org/rocksdb/EncodingType.java +0 -55
  390. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Env.java +0 -167
  391. package/vendor/rocksdb/java/src/main/java/org/rocksdb/EnvOptions.java +0 -366
  392. package/vendor/rocksdb/java/src/main/java/org/rocksdb/EventListener.java +0 -335
  393. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Experimental.java +0 -23
  394. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ExternalFileIngestionInfo.java +0 -103
  395. package/vendor/rocksdb/java/src/main/java/org/rocksdb/FileOperationInfo.java +0 -112
  396. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Filter.java +0 -36
  397. package/vendor/rocksdb/java/src/main/java/org/rocksdb/FlushJobInfo.java +0 -186
  398. package/vendor/rocksdb/java/src/main/java/org/rocksdb/FlushOptions.java +0 -90
  399. package/vendor/rocksdb/java/src/main/java/org/rocksdb/FlushReason.java +0 -53
  400. package/vendor/rocksdb/java/src/main/java/org/rocksdb/HashLinkedListMemTableConfig.java +0 -174
  401. package/vendor/rocksdb/java/src/main/java/org/rocksdb/HashSkipListMemTableConfig.java +0 -106
  402. package/vendor/rocksdb/java/src/main/java/org/rocksdb/HistogramData.java +0 -75
  403. package/vendor/rocksdb/java/src/main/java/org/rocksdb/HistogramType.java +0 -214
  404. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Holder.java +0 -46
  405. package/vendor/rocksdb/java/src/main/java/org/rocksdb/IndexShorteningMode.java +0 -60
  406. package/vendor/rocksdb/java/src/main/java/org/rocksdb/IndexType.java +0 -55
  407. package/vendor/rocksdb/java/src/main/java/org/rocksdb/InfoLogLevel.java +0 -49
  408. package/vendor/rocksdb/java/src/main/java/org/rocksdb/IngestExternalFileOptions.java +0 -227
  409. package/vendor/rocksdb/java/src/main/java/org/rocksdb/KeyMayExist.java +0 -35
  410. package/vendor/rocksdb/java/src/main/java/org/rocksdb/LRUCache.java +0 -106
  411. package/vendor/rocksdb/java/src/main/java/org/rocksdb/LevelMetaData.java +0 -56
  412. package/vendor/rocksdb/java/src/main/java/org/rocksdb/LiveFileMetaData.java +0 -55
  413. package/vendor/rocksdb/java/src/main/java/org/rocksdb/LogFile.java +0 -75
  414. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Logger.java +0 -121
  415. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MemTableConfig.java +0 -29
  416. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MemTableInfo.java +0 -103
  417. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MemoryUsageType.java +0 -72
  418. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MemoryUtil.java +0 -60
  419. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MergeOperator.java +0 -18
  420. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableColumnFamilyOptions.java +0 -621
  421. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableColumnFamilyOptionsInterface.java +0 -156
  422. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableDBOptions.java +0 -292
  423. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableDBOptionsInterface.java +0 -440
  424. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableOptionKey.java +0 -16
  425. package/vendor/rocksdb/java/src/main/java/org/rocksdb/MutableOptionValue.java +0 -368
  426. package/vendor/rocksdb/java/src/main/java/org/rocksdb/NativeComparatorWrapper.java +0 -59
  427. package/vendor/rocksdb/java/src/main/java/org/rocksdb/NativeLibraryLoader.java +0 -172
  428. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OperationStage.java +0 -59
  429. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OperationType.java +0 -55
  430. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OptimisticTransactionDB.java +0 -224
  431. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OptimisticTransactionOptions.java +0 -53
  432. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OptionString.java +0 -261
  433. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Options.java +0 -2574
  434. package/vendor/rocksdb/java/src/main/java/org/rocksdb/OptionsUtil.java +0 -101
  435. package/vendor/rocksdb/java/src/main/java/org/rocksdb/PersistentCache.java +0 -26
  436. package/vendor/rocksdb/java/src/main/java/org/rocksdb/PlainTableConfig.java +0 -251
  437. package/vendor/rocksdb/java/src/main/java/org/rocksdb/PrepopulateBlobCache.java +0 -117
  438. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Priority.java +0 -49
  439. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Range.java +0 -19
  440. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RateLimiter.java +0 -227
  441. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RateLimiterMode.java +0 -52
  442. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ReadOptions.java +0 -822
  443. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ReadTier.java +0 -49
  444. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RemoveEmptyValueCompactionFilter.java +0 -18
  445. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RestoreOptions.java +0 -32
  446. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ReusedSynchronisationType.java +0 -65
  447. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksCallbackObject.java +0 -73
  448. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksDB.java +0 -4688
  449. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksDBException.java +0 -44
  450. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksEnv.java +0 -31
  451. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksIterator.java +0 -140
  452. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksIteratorInterface.java +0 -127
  453. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksMemEnv.java +0 -31
  454. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksMutableObject.java +0 -87
  455. package/vendor/rocksdb/java/src/main/java/org/rocksdb/RocksObject.java +0 -45
  456. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SanityLevel.java +0 -47
  457. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SizeApproximationFlag.java +0 -31
  458. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SkipListMemTableConfig.java +0 -51
  459. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Slice.java +0 -135
  460. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Snapshot.java +0 -41
  461. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileManager.java +0 -249
  462. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileMetaData.java +0 -162
  463. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileReader.java +0 -82
  464. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileReaderIterator.java +0 -140
  465. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstFileWriter.java +0 -237
  466. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstPartitionerFactory.java +0 -15
  467. package/vendor/rocksdb/java/src/main/java/org/rocksdb/SstPartitionerFixedPrefixFactory.java +0 -19
  468. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StateType.java +0 -53
  469. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Statistics.java +0 -153
  470. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StatisticsCollector.java +0 -102
  471. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StatisticsCollectorCallback.java +0 -32
  472. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StatsCollectorInput.java +0 -35
  473. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StatsLevel.java +0 -65
  474. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Status.java +0 -155
  475. package/vendor/rocksdb/java/src/main/java/org/rocksdb/StringAppendOperator.java +0 -29
  476. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFileCreationBriefInfo.java +0 -107
  477. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFileCreationInfo.java +0 -86
  478. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFileCreationReason.java +0 -46
  479. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFileDeletionInfo.java +0 -86
  480. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFilter.java +0 -21
  481. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableFormatConfig.java +0 -22
  482. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TableProperties.java +0 -426
  483. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ThreadStatus.java +0 -224
  484. package/vendor/rocksdb/java/src/main/java/org/rocksdb/ThreadType.java +0 -65
  485. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TickerType.java +0 -802
  486. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TimedEnv.java +0 -30
  487. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TraceOptions.java +0 -32
  488. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TraceWriter.java +0 -36
  489. package/vendor/rocksdb/java/src/main/java/org/rocksdb/Transaction.java +0 -2162
  490. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionDB.java +0 -401
  491. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionDBOptions.java +0 -216
  492. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionLogIterator.java +0 -112
  493. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionOptions.java +0 -189
  494. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionalDB.java +0 -65
  495. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TransactionalOptions.java +0 -31
  496. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TtlDB.java +0 -242
  497. package/vendor/rocksdb/java/src/main/java/org/rocksdb/TxnDBWritePolicy.java +0 -62
  498. package/vendor/rocksdb/java/src/main/java/org/rocksdb/UInt64AddOperator.java +0 -19
  499. package/vendor/rocksdb/java/src/main/java/org/rocksdb/VectorMemTableConfig.java +0 -46
  500. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WALRecoveryMode.java +0 -82
  501. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WBWIRocksIterator.java +0 -203
  502. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WalFileType.java +0 -55
  503. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WalFilter.java +0 -86
  504. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WalProcessingOption.java +0 -54
  505. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteBatch.java +0 -394
  506. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteBatchInterface.java +0 -283
  507. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteBatchWithIndex.java +0 -358
  508. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteBufferManager.java +0 -50
  509. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteOptions.java +0 -255
  510. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteStallCondition.java +0 -44
  511. package/vendor/rocksdb/java/src/main/java/org/rocksdb/WriteStallInfo.java +0 -75
  512. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/ByteUtil.java +0 -52
  513. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/BytewiseComparator.java +0 -121
  514. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/Environment.java +0 -245
  515. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/IntComparator.java +0 -67
  516. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/ReverseBytewiseComparator.java +0 -88
  517. package/vendor/rocksdb/java/src/main/java/org/rocksdb/util/SizeUnit.java +0 -16
  518. package/vendor/rocksdb/java/src/test/java/org/rocksdb/AbstractTransactionTest.java +0 -979
  519. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BackupEngineOptionsTest.java +0 -297
  520. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BackupEngineTest.java +0 -261
  521. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BlobOptionsTest.java +0 -353
  522. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BlockBasedTableConfigTest.java +0 -415
  523. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BuiltinComparatorTest.java +0 -145
  524. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ByteBufferUnsupportedOperationTest.java +0 -132
  525. package/vendor/rocksdb/java/src/test/java/org/rocksdb/BytewiseComparatorRegressionTest.java +0 -132
  526. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CheckPointTest.java +0 -82
  527. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ClockCacheTest.java +0 -25
  528. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ColumnFamilyOptionsTest.java +0 -712
  529. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ColumnFamilyTest.java +0 -562
  530. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactRangeOptionsTest.java +0 -102
  531. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionFilterFactoryTest.java +0 -61
  532. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionJobInfoTest.java +0 -114
  533. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionJobStatsTest.java +0 -196
  534. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionOptionsFIFOTest.java +0 -35
  535. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionOptionsTest.java +0 -52
  536. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionOptionsUniversalTest.java +0 -80
  537. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionPriorityTest.java +0 -31
  538. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompactionStopStyleTest.java +0 -31
  539. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ComparatorOptionsTest.java +0 -58
  540. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompressionOptionsTest.java +0 -71
  541. package/vendor/rocksdb/java/src/test/java/org/rocksdb/CompressionTypesTest.java +0 -25
  542. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ConcurrentTaskLimiterTest.java +0 -56
  543. package/vendor/rocksdb/java/src/test/java/org/rocksdb/DBOptionsTest.java +0 -902
  544. package/vendor/rocksdb/java/src/test/java/org/rocksdb/DefaultEnvTest.java +0 -113
  545. package/vendor/rocksdb/java/src/test/java/org/rocksdb/DirectSliceTest.java +0 -93
  546. package/vendor/rocksdb/java/src/test/java/org/rocksdb/EnvOptionsTest.java +0 -145
  547. package/vendor/rocksdb/java/src/test/java/org/rocksdb/EventListenerTest.java +0 -725
  548. package/vendor/rocksdb/java/src/test/java/org/rocksdb/FilterTest.java +0 -39
  549. package/vendor/rocksdb/java/src/test/java/org/rocksdb/FlushOptionsTest.java +0 -31
  550. package/vendor/rocksdb/java/src/test/java/org/rocksdb/FlushTest.java +0 -49
  551. package/vendor/rocksdb/java/src/test/java/org/rocksdb/InfoLogLevelTest.java +0 -109
  552. package/vendor/rocksdb/java/src/test/java/org/rocksdb/IngestExternalFileOptionsTest.java +0 -107
  553. package/vendor/rocksdb/java/src/test/java/org/rocksdb/KeyMayExistTest.java +0 -528
  554. package/vendor/rocksdb/java/src/test/java/org/rocksdb/LRUCacheTest.java +0 -32
  555. package/vendor/rocksdb/java/src/test/java/org/rocksdb/LoggerTest.java +0 -235
  556. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MemTableTest.java +0 -108
  557. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MemoryUtilTest.java +0 -136
  558. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MergeTest.java +0 -465
  559. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MixedOptionsTest.java +0 -85
  560. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MultiColumnRegressionTest.java +0 -145
  561. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MultiGetManyKeysTest.java +0 -241
  562. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MultiGetTest.java +0 -530
  563. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MutableColumnFamilyOptionsTest.java +0 -167
  564. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MutableDBOptionsTest.java +0 -85
  565. package/vendor/rocksdb/java/src/test/java/org/rocksdb/MutableOptionsGetSetTest.java +0 -429
  566. package/vendor/rocksdb/java/src/test/java/org/rocksdb/NativeComparatorWrapperTest.java +0 -90
  567. package/vendor/rocksdb/java/src/test/java/org/rocksdb/NativeLibraryLoaderTest.java +0 -41
  568. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptimisticTransactionDBTest.java +0 -131
  569. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptimisticTransactionOptionsTest.java +0 -38
  570. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptimisticTransactionTest.java +0 -446
  571. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptionsTest.java +0 -1488
  572. package/vendor/rocksdb/java/src/test/java/org/rocksdb/OptionsUtilTest.java +0 -129
  573. package/vendor/rocksdb/java/src/test/java/org/rocksdb/PlainTableConfigTest.java +0 -89
  574. package/vendor/rocksdb/java/src/test/java/org/rocksdb/PlatformRandomHelper.java +0 -58
  575. package/vendor/rocksdb/java/src/test/java/org/rocksdb/PutMultiplePartsTest.java +0 -164
  576. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RateLimiterTest.java +0 -65
  577. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ReadOnlyTest.java +0 -222
  578. package/vendor/rocksdb/java/src/test/java/org/rocksdb/ReadOptionsTest.java +0 -374
  579. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksDBExceptionTest.java +0 -115
  580. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksDBTest.java +0 -1692
  581. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksIteratorTest.java +0 -289
  582. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksMemEnvTest.java +0 -137
  583. package/vendor/rocksdb/java/src/test/java/org/rocksdb/RocksNativeLibraryResource.java +0 -18
  584. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SecondaryDBTest.java +0 -135
  585. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SliceTest.java +0 -80
  586. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SnapshotTest.java +0 -169
  587. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SstFileManagerTest.java +0 -66
  588. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SstFileReaderTest.java +0 -222
  589. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SstFileWriterTest.java +0 -239
  590. package/vendor/rocksdb/java/src/test/java/org/rocksdb/SstPartitionerTest.java +0 -72
  591. package/vendor/rocksdb/java/src/test/java/org/rocksdb/StatisticsCollectorTest.java +0 -55
  592. package/vendor/rocksdb/java/src/test/java/org/rocksdb/StatisticsTest.java +0 -168
  593. package/vendor/rocksdb/java/src/test/java/org/rocksdb/StatsCallbackMock.java +0 -19
  594. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TableFilterTest.java +0 -106
  595. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TimedEnvTest.java +0 -40
  596. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionDBOptionsTest.java +0 -64
  597. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionDBTest.java +0 -177
  598. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionLogIteratorTest.java +0 -139
  599. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionOptionsTest.java +0 -72
  600. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TransactionTest.java +0 -488
  601. package/vendor/rocksdb/java/src/test/java/org/rocksdb/TtlDBTest.java +0 -112
  602. package/vendor/rocksdb/java/src/test/java/org/rocksdb/Types.java +0 -43
  603. package/vendor/rocksdb/java/src/test/java/org/rocksdb/VerifyChecksumsTest.java +0 -213
  604. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WALRecoveryModeTest.java +0 -22
  605. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WalFilterTest.java +0 -165
  606. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteBatchHandlerTest.java +0 -76
  607. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteBatchTest.java +0 -528
  608. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteBatchThreadedTest.java +0 -101
  609. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteBatchWithIndexTest.java +0 -1068
  610. package/vendor/rocksdb/java/src/test/java/org/rocksdb/WriteOptionsTest.java +0 -75
  611. package/vendor/rocksdb/java/src/test/java/org/rocksdb/test/RemoveEmptyValueCompactionFilterFactory.java +0 -21
  612. package/vendor/rocksdb/java/src/test/java/org/rocksdb/test/RocksJunitRunner.java +0 -174
  613. package/vendor/rocksdb/java/src/test/java/org/rocksdb/test/TestableEventListener.java +0 -23
  614. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/ByteBufferAllocator.java +0 -16
  615. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/BytewiseComparatorIntTest.java +0 -267
  616. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/BytewiseComparatorTest.java +0 -531
  617. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/CapturingWriteBatchHandler.java +0 -190
  618. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/DirectByteBufferAllocator.java +0 -18
  619. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/EnvironmentTest.java +0 -304
  620. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/HeapByteBufferAllocator.java +0 -18
  621. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/IntComparatorTest.java +0 -266
  622. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/JNIComparatorTest.java +0 -180
  623. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/ReverseBytewiseComparatorIntTest.java +0 -270
  624. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/SizeUnitTest.java +0 -27
  625. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/TestUtil.java +0 -72
  626. package/vendor/rocksdb/java/src/test/java/org/rocksdb/util/WriteBatchGetter.java +0 -139
  627. package/vendor/rocksdb/java/understanding_options.md +0 -79
  628. package/vendor/rocksdb/src.mk +0 -713
  629. package/vendor/rocksdb/thirdparty.inc +0 -268
  630. package/vendor/rocksdb/tools/Dockerfile +0 -5
  631. package/vendor/rocksdb/tools/advisor/advisor/__init__.py +0 -0
  632. package/vendor/rocksdb/tools/advisor/advisor/bench_runner.py +0 -39
  633. package/vendor/rocksdb/tools/advisor/advisor/config_optimizer_example.py +0 -140
  634. package/vendor/rocksdb/tools/advisor/advisor/db_bench_runner.py +0 -237
  635. package/vendor/rocksdb/tools/advisor/advisor/db_config_optimizer.py +0 -293
  636. package/vendor/rocksdb/tools/advisor/advisor/db_log_parser.py +0 -134
  637. package/vendor/rocksdb/tools/advisor/advisor/db_options_parser.py +0 -348
  638. package/vendor/rocksdb/tools/advisor/advisor/db_stats_fetcher.py +0 -346
  639. package/vendor/rocksdb/tools/advisor/advisor/db_timeseries_parser.py +0 -203
  640. package/vendor/rocksdb/tools/advisor/advisor/ini_parser.py +0 -76
  641. package/vendor/rocksdb/tools/advisor/advisor/rule_parser.py +0 -510
  642. package/vendor/rocksdb/tools/advisor/advisor/rule_parser_example.py +0 -98
  643. package/vendor/rocksdb/tools/advisor/advisor/rules.ini +0 -214
  644. package/vendor/rocksdb/tools/advisor/test/__init__.py +0 -0
  645. package/vendor/rocksdb/tools/advisor/test/input_files/LOG-0 +0 -30
  646. package/vendor/rocksdb/tools/advisor/test/input_files/LOG-1 +0 -25
  647. package/vendor/rocksdb/tools/advisor/test/input_files/OPTIONS-000005 +0 -49
  648. package/vendor/rocksdb/tools/advisor/test/input_files/log_stats_parser_keys_ts +0 -3
  649. package/vendor/rocksdb/tools/advisor/test/input_files/rules_err1.ini +0 -56
  650. package/vendor/rocksdb/tools/advisor/test/input_files/rules_err2.ini +0 -15
  651. package/vendor/rocksdb/tools/advisor/test/input_files/rules_err3.ini +0 -15
  652. package/vendor/rocksdb/tools/advisor/test/input_files/rules_err4.ini +0 -15
  653. package/vendor/rocksdb/tools/advisor/test/input_files/test_rules.ini +0 -47
  654. package/vendor/rocksdb/tools/advisor/test/input_files/triggered_rules.ini +0 -83
  655. package/vendor/rocksdb/tools/advisor/test/test_db_bench_runner.py +0 -141
  656. package/vendor/rocksdb/tools/advisor/test/test_db_log_parser.py +0 -96
  657. package/vendor/rocksdb/tools/advisor/test/test_db_options_parser.py +0 -214
  658. package/vendor/rocksdb/tools/advisor/test/test_db_stats_fetcher.py +0 -121
  659. package/vendor/rocksdb/tools/advisor/test/test_rule_parser.py +0 -226
  660. package/vendor/rocksdb/tools/analyze_txn_stress_test.sh +0 -77
  661. package/vendor/rocksdb/tools/auto_sanity_test.sh +0 -93
  662. package/vendor/rocksdb/tools/backup_db.sh +0 -15
  663. package/vendor/rocksdb/tools/benchmark.sh +0 -1173
  664. package/vendor/rocksdb/tools/benchmark_ci.py +0 -182
  665. package/vendor/rocksdb/tools/benchmark_compare.sh +0 -342
  666. package/vendor/rocksdb/tools/benchmark_leveldb.sh +0 -187
  667. package/vendor/rocksdb/tools/block_cache_analyzer/__init__.py +0 -2
  668. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_pysim.py +0 -2000
  669. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_pysim.sh +0 -156
  670. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_pysim_test.py +0 -734
  671. package/vendor/rocksdb/tools/block_cache_analyzer/block_cache_trace_analyzer_plot.py +0 -729
  672. package/vendor/rocksdb/tools/check_all_python.py +0 -22
  673. package/vendor/rocksdb/tools/check_format_compatible.sh +0 -379
  674. package/vendor/rocksdb/tools/db_crashtest.py +0 -1018
  675. package/vendor/rocksdb/tools/dbench_monitor +0 -102
  676. package/vendor/rocksdb/tools/generate_random_db.sh +0 -31
  677. package/vendor/rocksdb/tools/ingest_external_sst.sh +0 -18
  678. package/vendor/rocksdb/tools/ldb_test.py +0 -955
  679. package/vendor/rocksdb/tools/pflag +0 -217
  680. package/vendor/rocksdb/tools/regression_test.sh +0 -525
  681. package/vendor/rocksdb/tools/restore_db.sh +0 -15
  682. package/vendor/rocksdb/tools/rocksdb_dump_test.sh +0 -9
  683. package/vendor/rocksdb/tools/run_blob_bench.sh +0 -223
  684. package/vendor/rocksdb/tools/run_flash_bench.sh +0 -359
  685. package/vendor/rocksdb/tools/run_leveldb.sh +0 -175
  686. package/vendor/rocksdb/tools/sample-dump.dmp +0 -0
  687. package/vendor/rocksdb/tools/verify_random_db.sh +0 -41
  688. package/vendor/rocksdb/tools/write_external_sst.sh +0 -26
  689. package/vendor/rocksdb/tools/write_stress_runner.py +0 -83
  690. package/vendor/rocksdb/util/crc32c_ppc.c +0 -94
  691. package/vendor/rocksdb/util/crc32c_ppc_asm.S +0 -756
@@ -1,1068 +0,0 @@
1
- // Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
2
- // This source code is licensed under both the GPLv2 (found in the
3
- // COPYING file in the root directory) and Apache 2.0 License
4
- // (found in the LICENSE.Apache file in the root directory).
5
- //
6
- // Copyright (c) 2011 The LevelDB Authors. All rights reserved.
7
- // Use of this source code is governed by a BSD-style license that can be
8
- // found in the LICENSE file. See the AUTHORS file for names of contributors.
9
-
10
- package org.rocksdb;
11
-
12
- import static java.nio.charset.StandardCharsets.UTF_8;
13
- import static org.assertj.core.api.Assertions.assertThat;
14
-
15
- import java.nio.ByteBuffer;
16
- import java.util.ArrayList;
17
- import java.util.Arrays;
18
- import java.util.List;
19
- import org.junit.ClassRule;
20
- import org.junit.Rule;
21
- import org.junit.Test;
22
- import org.junit.rules.TemporaryFolder;
23
- import org.rocksdb.util.ByteBufferAllocator;
24
-
25
- public class WriteBatchWithIndexTest {
26
-
27
- @ClassRule
28
- public static final RocksNativeLibraryResource ROCKS_NATIVE_LIBRARY_RESOURCE =
29
- new RocksNativeLibraryResource();
30
-
31
- @Rule
32
- public TemporaryFolder dbFolder = new TemporaryFolder();
33
-
34
- @Test
35
- public void readYourOwnWrites() throws RocksDBException {
36
- try (final Options options = new Options().setCreateIfMissing(true);
37
- final RocksDB db = RocksDB.open(options,
38
- dbFolder.getRoot().getAbsolutePath())) {
39
-
40
- final byte[] k1 = "key1".getBytes();
41
- final byte[] v1 = "value1".getBytes();
42
- final byte[] k2 = "key2".getBytes();
43
- final byte[] v2 = "value2".getBytes();
44
-
45
- db.put(k1, v1);
46
- db.put(k2, v2);
47
-
48
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
49
- final RocksIterator base = db.newIterator();
50
- final RocksIterator it = wbwi.newIteratorWithBase(base)) {
51
- it.seek(k1);
52
- assertThat(it.isValid()).isTrue();
53
- assertThat(it.key()).isEqualTo(k1);
54
- assertThat(it.value()).isEqualTo(v1);
55
-
56
- it.seek(k2);
57
- assertThat(it.isValid()).isTrue();
58
- assertThat(it.key()).isEqualTo(k2);
59
- assertThat(it.value()).isEqualTo(v2);
60
-
61
- //put data to the write batch and make sure we can read it.
62
- final byte[] k3 = "key3".getBytes();
63
- final byte[] v3 = "value3".getBytes();
64
- wbwi.put(k3, v3);
65
- it.seek(k3);
66
- assertThat(it.isValid()).isTrue();
67
- assertThat(it.key()).isEqualTo(k3);
68
- assertThat(it.value()).isEqualTo(v3);
69
-
70
- //update k2 in the write batch and check the value
71
- final byte[] v2Other = "otherValue2".getBytes();
72
- wbwi.put(k2, v2Other);
73
- it.seek(k2);
74
- assertThat(it.isValid()).isTrue();
75
- assertThat(it.key()).isEqualTo(k2);
76
- assertThat(it.value()).isEqualTo(v2Other);
77
-
78
- //delete k1 and make sure we can read back the write
79
- wbwi.delete(k1);
80
- it.seek(k1);
81
- assertThat(it.key()).isNotEqualTo(k1);
82
-
83
- //reinsert k1 and make sure we see the new value
84
- final byte[] v1Other = "otherValue1".getBytes();
85
- wbwi.put(k1, v1Other);
86
- it.seek(k1);
87
- assertThat(it.isValid()).isTrue();
88
- assertThat(it.key()).isEqualTo(k1);
89
- assertThat(it.value()).isEqualTo(v1Other);
90
-
91
- //single remove k3 and make sure we can read back the write
92
- wbwi.singleDelete(k3);
93
- it.seek(k3);
94
- assertThat(it.isValid()).isEqualTo(false);
95
-
96
- //reinsert k3 and make sure we see the new value
97
- final byte[] v3Other = "otherValue3".getBytes();
98
- wbwi.put(k3, v3Other);
99
- it.seek(k3);
100
- assertThat(it.isValid()).isTrue();
101
- assertThat(it.key()).isEqualTo(k3);
102
- assertThat(it.value()).isEqualTo(v3Other);
103
- }
104
- }
105
- }
106
-
107
- @Test
108
- public void readYourOwnWritesCf() throws RocksDBException {
109
- final List<ColumnFamilyDescriptor> cfNames =
110
- Arrays.asList(new ColumnFamilyDescriptor(RocksDB.DEFAULT_COLUMN_FAMILY),
111
- new ColumnFamilyDescriptor("new_cf".getBytes()));
112
-
113
- final List<ColumnFamilyHandle> columnFamilyHandleList = new ArrayList<>();
114
-
115
- // Test open database with column family names
116
- try (final DBOptions options =
117
- new DBOptions().setCreateIfMissing(true).setCreateMissingColumnFamilies(true);
118
- final RocksDB db = RocksDB.open(
119
- options, dbFolder.getRoot().getAbsolutePath(), cfNames, columnFamilyHandleList)) {
120
- final ColumnFamilyHandle newCf = columnFamilyHandleList.get(1);
121
-
122
- try {
123
- final byte[] k1 = "key1".getBytes();
124
- final byte[] v1 = "value1".getBytes();
125
- final byte[] k2 = "key2".getBytes();
126
- final byte[] v2 = "value2".getBytes();
127
-
128
- db.put(newCf, k1, v1);
129
- db.put(newCf, k2, v2);
130
-
131
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
132
- final ReadOptions readOptions = new ReadOptions();
133
- final RocksIterator base = db.newIterator(newCf, readOptions);
134
- final RocksIterator it = wbwi.newIteratorWithBase(newCf, base, readOptions)) {
135
- it.seek(k1);
136
- assertThat(it.isValid()).isTrue();
137
- assertThat(it.key()).isEqualTo(k1);
138
- assertThat(it.value()).isEqualTo(v1);
139
-
140
- it.seek(k2);
141
- assertThat(it.isValid()).isTrue();
142
- assertThat(it.key()).isEqualTo(k2);
143
- assertThat(it.value()).isEqualTo(v2);
144
-
145
- // put data to the write batch and make sure we can read it.
146
- final byte[] k3 = "key3".getBytes();
147
- final byte[] v3 = "value3".getBytes();
148
- wbwi.put(newCf, k3, v3);
149
- it.seek(k3);
150
- assertThat(it.isValid()).isTrue();
151
- assertThat(it.key()).isEqualTo(k3);
152
- assertThat(it.value()).isEqualTo(v3);
153
-
154
- // update k2 in the write batch and check the value
155
- final byte[] v2Other = "otherValue2".getBytes();
156
- wbwi.put(newCf, k2, v2Other);
157
- it.seek(k2);
158
- assertThat(it.isValid()).isTrue();
159
- assertThat(it.key()).isEqualTo(k2);
160
- assertThat(it.value()).isEqualTo(v2Other);
161
-
162
- // delete k1 and make sure we can read back the write
163
- wbwi.delete(newCf, k1);
164
- it.seek(k1);
165
- assertThat(it.key()).isNotEqualTo(k1);
166
-
167
- // reinsert k1 and make sure we see the new value
168
- final byte[] v1Other = "otherValue1".getBytes();
169
- wbwi.put(newCf, k1, v1Other);
170
- it.seek(k1);
171
- assertThat(it.isValid()).isTrue();
172
- assertThat(it.key()).isEqualTo(k1);
173
- assertThat(it.value()).isEqualTo(v1Other);
174
-
175
- // single remove k3 and make sure we can read back the write
176
- wbwi.singleDelete(newCf, k3);
177
- it.seek(k3);
178
- assertThat(it.isValid()).isEqualTo(false);
179
-
180
- // reinsert k3 and make sure we see the new value
181
- final byte[] v3Other = "otherValue3".getBytes();
182
- wbwi.put(newCf, k3, v3Other);
183
- it.seek(k3);
184
- assertThat(it.isValid()).isTrue();
185
- assertThat(it.key()).isEqualTo(k3);
186
- assertThat(it.value()).isEqualTo(v3Other);
187
- }
188
- } finally {
189
- for (final ColumnFamilyHandle columnFamilyHandle : columnFamilyHandleList) {
190
- columnFamilyHandle.close();
191
- }
192
- }
193
- }
194
- }
195
-
196
- @Test
197
- public void readYourOwnWritesCfIterDirectBB() throws RocksDBException {
198
- readYourOwnWritesCfIterDirect(ByteBufferAllocator.DIRECT);
199
- }
200
-
201
- @Test
202
- public void readYourOwnWritesCfIterIndirectBB() throws RocksDBException {
203
- readYourOwnWritesCfIterDirect(ByteBufferAllocator.HEAP);
204
- }
205
-
206
- public void readYourOwnWritesCfIterDirect(final ByteBufferAllocator byteBufferAllocator)
207
- throws RocksDBException {
208
- final List<ColumnFamilyDescriptor> cfNames =
209
- Arrays.asList(new ColumnFamilyDescriptor(RocksDB.DEFAULT_COLUMN_FAMILY),
210
- new ColumnFamilyDescriptor("new_cf".getBytes()));
211
-
212
- final List<ColumnFamilyHandle> columnFamilyHandleList = new ArrayList<>();
213
-
214
- // Test open database with column family names
215
- try (final DBOptions options =
216
- new DBOptions().setCreateIfMissing(true).setCreateMissingColumnFamilies(true);
217
- final RocksDB db = RocksDB.open(
218
- options, dbFolder.getRoot().getAbsolutePath(), cfNames, columnFamilyHandleList)) {
219
- final ColumnFamilyHandle newCf = columnFamilyHandleList.get(1);
220
-
221
- try {
222
- final byte[] kv1 = "key1".getBytes();
223
- final byte[] vv1 = "value1".getBytes();
224
- final ByteBuffer k1 = byteBufferAllocator.allocate(12);
225
- k1.put(kv1);
226
- final byte[] kv2 = "key2".getBytes();
227
- final byte[] vv2 = "value2".getBytes();
228
- final ByteBuffer k2 = byteBufferAllocator.allocate(12);
229
- k2.put(kv2);
230
-
231
- db.put(newCf, kv1, vv1);
232
- db.put(newCf, kv2, vv2);
233
-
234
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
235
- final ReadOptions readOptions = new ReadOptions();
236
- final RocksIterator base = db.newIterator(newCf, readOptions);
237
- final RocksIterator it = wbwi.newIteratorWithBase(newCf, base, readOptions)) {
238
- k1.flip();
239
- it.seek(k1);
240
- assertThat(it.isValid()).isTrue();
241
- assertThat(it.key()).isEqualTo(kv1);
242
- assertThat(it.value()).isEqualTo(vv1);
243
-
244
- k2.flip();
245
- it.seek(k2);
246
- assertThat(it.isValid()).isTrue();
247
- assertThat(it.key()).isEqualTo(kv2);
248
- assertThat(it.value()).isEqualTo(vv2);
249
-
250
- final byte[] kv1point5 = "key1point5".getBytes();
251
- final ByteBuffer k1point5 = byteBufferAllocator.allocate(12);
252
- k1point5.put(kv1point5);
253
-
254
- k1point5.flip();
255
- it.seek(k1point5);
256
- assertThat(it.isValid()).isTrue();
257
- assertThat(it.key()).isEqualTo(kv2);
258
- assertThat(it.value()).isEqualTo(vv2);
259
-
260
- k1point5.flip();
261
- it.seekForPrev(k1point5);
262
- assertThat(it.isValid()).isTrue();
263
- assertThat(it.key()).isEqualTo(kv1);
264
- assertThat(it.value()).isEqualTo(vv1);
265
-
266
- // put data to the write batch and make sure we can read it.
267
- final byte[] kv3 = "key3".getBytes();
268
- final ByteBuffer k3 = byteBufferAllocator.allocate(12);
269
- k3.put(kv3);
270
- final byte[] vv3 = "value3".getBytes();
271
- wbwi.put(newCf, kv3, vv3);
272
- k3.flip();
273
- it.seek(k3);
274
- assertThat(it.isValid()).isTrue();
275
- assertThat(it.key()).isEqualTo(kv3);
276
- assertThat(it.value()).isEqualTo(vv3);
277
-
278
- // update k2 in the write batch and check the value
279
- final byte[] v2Other = "otherValue2".getBytes();
280
- wbwi.put(newCf, kv2, v2Other);
281
- k2.flip();
282
- it.seek(k2);
283
- assertThat(it.isValid()).isTrue();
284
- assertThat(it.key()).isEqualTo(kv2);
285
- assertThat(it.value()).isEqualTo(v2Other);
286
-
287
- // delete k1 and make sure we can read back the write
288
- wbwi.delete(newCf, kv1);
289
- k1.flip();
290
- it.seek(k1);
291
- assertThat(it.key()).isNotEqualTo(kv1);
292
-
293
- // reinsert k1 and make sure we see the new value
294
- final byte[] v1Other = "otherValue1".getBytes();
295
- wbwi.put(newCf, kv1, v1Other);
296
- k1.flip();
297
- it.seek(k1);
298
- assertThat(it.isValid()).isTrue();
299
- assertThat(it.key()).isEqualTo(kv1);
300
- assertThat(it.value()).isEqualTo(v1Other);
301
-
302
- // single remove k3 and make sure we can read back the write
303
- wbwi.singleDelete(newCf, kv3);
304
- k3.flip();
305
- it.seek(k3);
306
- assertThat(it.isValid()).isEqualTo(false);
307
-
308
- // reinsert k3 and make sure we see the new value
309
- final byte[] v3Other = "otherValue3".getBytes();
310
- wbwi.put(newCf, kv3, v3Other);
311
- k3.flip();
312
- it.seek(k3);
313
- assertThat(it.isValid()).isTrue();
314
- assertThat(it.key()).isEqualTo(kv3);
315
- assertThat(it.value()).isEqualTo(v3Other);
316
- }
317
- } finally {
318
- for (final ColumnFamilyHandle columnFamilyHandle : columnFamilyHandleList) {
319
- columnFamilyHandle.close();
320
- }
321
- }
322
- }
323
- }
324
-
325
- @Test
326
- public void readYourOwnWritesCfIterIndirect() throws RocksDBException {
327
- final List<ColumnFamilyDescriptor> cfNames =
328
- Arrays.asList(new ColumnFamilyDescriptor(RocksDB.DEFAULT_COLUMN_FAMILY),
329
- new ColumnFamilyDescriptor("new_cf".getBytes()));
330
-
331
- final List<ColumnFamilyHandle> columnFamilyHandleList = new ArrayList<>();
332
-
333
- // Test open database with column family names
334
- try (final DBOptions options =
335
- new DBOptions().setCreateIfMissing(true).setCreateMissingColumnFamilies(true);
336
- final RocksDB db = RocksDB.open(
337
- options, dbFolder.getRoot().getAbsolutePath(), cfNames, columnFamilyHandleList)) {
338
- final ColumnFamilyHandle newCf = columnFamilyHandleList.get(1);
339
-
340
- try {
341
- final byte[] kv1 = "key1".getBytes();
342
- final byte[] vv1 = "value1".getBytes();
343
- final ByteBuffer k1 = ByteBuffer.allocate(12);
344
- k1.put(kv1).flip();
345
- final byte[] kv2 = "key2".getBytes();
346
- final byte[] vv2 = "value2".getBytes();
347
- final ByteBuffer k2 = ByteBuffer.allocate(12);
348
- k2.put(kv2).flip();
349
-
350
- db.put(newCf, kv1, vv1);
351
- db.put(newCf, kv2, vv2);
352
-
353
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
354
- final ReadOptions readOptions = new ReadOptions();
355
- final RocksIterator base = db.newIterator(newCf, readOptions);
356
- final RocksIterator it = wbwi.newIteratorWithBase(newCf, base, readOptions)) {
357
- it.seek(k1);
358
- assertThat(it.isValid()).isTrue();
359
- assertThat(it.key()).isEqualTo(kv1);
360
- assertThat(it.value()).isEqualTo(vv1);
361
-
362
- it.seek(k2);
363
- assertThat(it.isValid()).isTrue();
364
- assertThat(it.key()).isEqualTo(kv2);
365
- assertThat(it.value()).isEqualTo(vv2);
366
-
367
- // put data to the write batch and make sure we can read it.
368
- final byte[] kv3 = "key3".getBytes();
369
- final ByteBuffer k3 = ByteBuffer.allocate(12);
370
- k3.put(kv3);
371
- final byte[] vv3 = "value3".getBytes();
372
- wbwi.put(newCf, kv3, vv3);
373
- k3.flip();
374
- it.seek(k3);
375
- assertThat(it.isValid()).isTrue();
376
- assertThat(it.key()).isEqualTo(kv3);
377
- assertThat(it.value()).isEqualTo(vv3);
378
-
379
- // update k2 in the write batch and check the value
380
- final byte[] v2Other = "otherValue2".getBytes();
381
- wbwi.put(newCf, kv2, v2Other);
382
- k2.flip();
383
- it.seek(k2);
384
- assertThat(it.isValid()).isTrue();
385
- assertThat(it.key()).isEqualTo(kv2);
386
- assertThat(it.value()).isEqualTo(v2Other);
387
-
388
- // delete k1 and make sure we can read back the write
389
- wbwi.delete(newCf, kv1);
390
- k1.flip();
391
- it.seek(k1);
392
- assertThat(it.key()).isNotEqualTo(kv1);
393
-
394
- // reinsert k1 and make sure we see the new value
395
- final byte[] v1Other = "otherValue1".getBytes();
396
- wbwi.put(newCf, kv1, v1Other);
397
- k1.flip();
398
- it.seek(k1);
399
- assertThat(it.isValid()).isTrue();
400
- assertThat(it.key()).isEqualTo(kv1);
401
- assertThat(it.value()).isEqualTo(v1Other);
402
-
403
- // single remove k3 and make sure we can read back the write
404
- wbwi.singleDelete(newCf, kv3);
405
- k3.flip();
406
- it.seek(k3);
407
- assertThat(it.isValid()).isEqualTo(false);
408
-
409
- // reinsert k3 and make sure we see the new value
410
- final byte[] v3Other = "otherValue3".getBytes();
411
- wbwi.put(newCf, kv3, v3Other);
412
- k3.flip();
413
- it.seek(k3);
414
- assertThat(it.isValid()).isTrue();
415
- assertThat(it.key()).isEqualTo(kv3);
416
- assertThat(it.value()).isEqualTo(v3Other);
417
- }
418
- } finally {
419
- for (final ColumnFamilyHandle columnFamilyHandle : columnFamilyHandleList) {
420
- columnFamilyHandle.close();
421
- }
422
- }
423
- }
424
- }
425
-
426
- @Test
427
- public void writeBatchWithIndex() throws RocksDBException {
428
- try (final Options options = new Options().setCreateIfMissing(true);
429
- final RocksDB db = RocksDB.open(options,
430
- dbFolder.getRoot().getAbsolutePath())) {
431
-
432
- final byte[] k1 = "key1".getBytes();
433
- final byte[] v1 = "value1".getBytes();
434
- final byte[] k2 = "key2".getBytes();
435
- final byte[] v2 = "value2".getBytes();
436
-
437
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex();
438
- final WriteOptions wOpt = new WriteOptions()) {
439
- wbwi.put(k1, v1);
440
- wbwi.put(k2, v2);
441
-
442
- db.write(wOpt, wbwi);
443
- }
444
-
445
- assertThat(db.get(k1)).isEqualTo(v1);
446
- assertThat(db.get(k2)).isEqualTo(v2);
447
- }
448
- }
449
-
450
- @Test
451
- public void write_writeBatchWithIndexDirect() throws RocksDBException {
452
- try (final Options options = new Options().setCreateIfMissing(true);
453
- final RocksDB db = RocksDB.open(options, dbFolder.getRoot().getAbsolutePath())) {
454
- final ByteBuffer k1 = ByteBuffer.allocateDirect(16);
455
- final ByteBuffer v1 = ByteBuffer.allocateDirect(16);
456
- final ByteBuffer k2 = ByteBuffer.allocateDirect(16);
457
- final ByteBuffer v2 = ByteBuffer.allocateDirect(16);
458
- k1.put("key1".getBytes()).flip();
459
- v1.put("value1".getBytes()).flip();
460
- k2.put("key2".getBytes()).flip();
461
- v2.put("value2".getBytes()).flip();
462
-
463
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
464
- wbwi.put(k1, v1);
465
- assertThat(k1.position()).isEqualTo(4);
466
- assertThat(k1.limit()).isEqualTo(4);
467
- assertThat(v1.position()).isEqualTo(6);
468
- assertThat(v1.limit()).isEqualTo(6);
469
-
470
- wbwi.put(k2, v2);
471
-
472
- db.write(new WriteOptions(), wbwi);
473
- }
474
-
475
- assertThat(db.get("key1".getBytes())).isEqualTo("value1".getBytes());
476
- assertThat(db.get("key2".getBytes())).isEqualTo("value2".getBytes());
477
- }
478
- }
479
-
480
- @Test
481
- public void iterator() throws RocksDBException {
482
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true)) {
483
-
484
- final String k1 = "key1";
485
- final String v1 = "value1";
486
- final String k2 = "key2";
487
- final String v2 = "value2";
488
- final String k3 = "key3";
489
- final String v3 = "value3";
490
- final String k4 = "key4";
491
- final String k5 = "key5";
492
- final String v8 = "value8";
493
- final byte[] k1b = k1.getBytes(UTF_8);
494
- final byte[] v1b = v1.getBytes(UTF_8);
495
- final byte[] k2b = k2.getBytes(UTF_8);
496
- final byte[] v2b = v2.getBytes(UTF_8);
497
- final byte[] k3b = k3.getBytes(UTF_8);
498
- final byte[] v3b = v3.getBytes(UTF_8);
499
- final byte[] k4b = k4.getBytes(UTF_8);
500
- final byte[] k5b = k5.getBytes(UTF_8);
501
- final byte[] v8b = v8.getBytes(UTF_8);
502
-
503
- final String k1point5 = "key1point5";
504
- final String k2point5 = "key2point5";
505
-
506
- // add put records
507
- wbwi.put(k1b, v1b);
508
- wbwi.put(k2b, v2b);
509
- wbwi.put(k3b, v3b);
510
-
511
- // add a deletion record
512
- wbwi.delete(k4b);
513
-
514
- // add a single deletion record
515
- wbwi.singleDelete(k5b);
516
-
517
- // add a log record
518
- wbwi.putLogData(v8b);
519
-
520
- final WBWIRocksIterator.WriteEntry[] expected = {
521
- new WBWIRocksIterator.WriteEntry(WBWIRocksIterator.WriteType.PUT,
522
- new DirectSlice(k1), new DirectSlice(v1)),
523
- new WBWIRocksIterator.WriteEntry(WBWIRocksIterator.WriteType.PUT,
524
- new DirectSlice(k2), new DirectSlice(v2)),
525
- new WBWIRocksIterator.WriteEntry(WBWIRocksIterator.WriteType.PUT,
526
- new DirectSlice(k3), new DirectSlice(v3)),
527
- new WBWIRocksIterator.WriteEntry(WBWIRocksIterator.WriteType.DELETE,
528
- new DirectSlice(k4), DirectSlice.NONE),
529
- new WBWIRocksIterator.WriteEntry(WBWIRocksIterator.WriteType.SINGLE_DELETE,
530
- new DirectSlice(k5), DirectSlice.NONE),
531
- };
532
-
533
- try (final WBWIRocksIterator it = wbwi.newIterator()) {
534
- //direct access - seek to key offsets
535
- final int[] testOffsets = {2, 0, 3, 4, 1};
536
- for (final int testOffset : testOffsets) {
537
- final byte[] key = toArray(expected[testOffset].getKey().data());
538
-
539
- it.seek(key);
540
- assertThat(it.isValid()).isTrue();
541
-
542
- final WBWIRocksIterator.WriteEntry entry = it.entry();
543
- assertThat(entry).isEqualTo(expected[testOffset]);
544
- }
545
-
546
- for (final int testOffset : testOffsets) {
547
- final byte[] key = toArray(expected[testOffset].getKey().data());
548
-
549
- // Direct buffer seek
550
- final ByteBuffer db = expected[testOffset].getKey().data();
551
- it.seek(db);
552
- assertThat(db.position()).isEqualTo(key.length);
553
- assertThat(it.isValid()).isTrue();
554
-
555
- final WBWIRocksIterator.WriteEntry entry = it.entry();
556
- assertThat(entry).isEqualTo(expected[testOffset]);
557
- }
558
-
559
- for (final int testOffset : testOffsets) {
560
- final byte[] key = toArray(expected[testOffset].getKey().data());
561
-
562
- // Direct buffer seek
563
- final ByteBuffer db = expected[testOffset].getKey().data();
564
- it.seekForPrev(db);
565
- assertThat(db.position()).isEqualTo(key.length);
566
- assertThat(it.isValid()).isTrue();
567
-
568
- final WBWIRocksIterator.WriteEntry entry = it.entry();
569
- assertThat(entry).isEqualTo(expected[testOffset]);
570
- }
571
-
572
- for (final int testOffset : testOffsets) {
573
- final byte[] key = toArray(expected[testOffset].getKey().data());
574
-
575
- // Indirect buffer seek
576
- final ByteBuffer db = ByteBuffer.allocate(key.length);
577
- System.arraycopy(key, 0, db.array(), 0, key.length);
578
- it.seek(db);
579
- assertThat(db.position()).isEqualTo(key.length);
580
- assertThat(it.isValid()).isTrue();
581
-
582
- final WBWIRocksIterator.WriteEntry entry = it.entry();
583
- assertThat(entry).isEqualTo(expected[testOffset]);
584
- }
585
-
586
- for (final int testOffset : testOffsets) {
587
- final byte[] key = toArray(expected[testOffset].getKey().data());
588
-
589
- // Indirect buffer seek for prev
590
- final ByteBuffer db = ByteBuffer.allocate(key.length);
591
- System.arraycopy(key, 0, db.array(), 0, key.length);
592
- it.seekForPrev(db);
593
- assertThat(db.position()).isEqualTo(key.length);
594
- assertThat(it.isValid()).isTrue();
595
-
596
- final WBWIRocksIterator.WriteEntry entry = it.entry();
597
- assertThat(entry).isEqualTo(expected[testOffset]);
598
- }
599
-
600
- {
601
- it.seekForPrev(k2point5.getBytes());
602
- assertThat(it.isValid()).isTrue();
603
- final WBWIRocksIterator.WriteEntry entry = it.entry();
604
- assertThat(entry).isEqualTo(expected[1]);
605
- }
606
-
607
- {
608
- it.seekForPrev(k1point5.getBytes());
609
- assertThat(it.isValid()).isTrue();
610
- final WBWIRocksIterator.WriteEntry entry = it.entry();
611
- assertThat(entry).isEqualTo(expected[0]);
612
- }
613
-
614
- {
615
- final ByteBuffer db = ByteBuffer.allocate(k2point5.length());
616
- db.put(k2point5.getBytes());
617
- db.flip();
618
- it.seekForPrev(db);
619
- assertThat(it.isValid()).isTrue();
620
- final WBWIRocksIterator.WriteEntry entry = it.entry();
621
- assertThat(entry).isEqualTo(expected[1]);
622
- }
623
-
624
- {
625
- final ByteBuffer db = ByteBuffer.allocate(k1point5.length());
626
- db.put(k1point5.getBytes());
627
- db.flip();
628
- it.seekForPrev(db);
629
- assertThat(it.isValid()).isTrue();
630
- final WBWIRocksIterator.WriteEntry entry = it.entry();
631
- assertThat(entry).isEqualTo(expected[0]);
632
- }
633
-
634
- //forward iterative access
635
- int i = 0;
636
- for (it.seekToFirst(); it.isValid(); it.next()) {
637
- assertThat(it.entry()).isEqualTo(expected[i++]);
638
- }
639
-
640
- //reverse iterative access
641
- i = expected.length - 1;
642
- for (it.seekToLast(); it.isValid(); it.prev()) {
643
- assertThat(it.entry()).isEqualTo(expected[i--]);
644
- }
645
- }
646
- }
647
- }
648
-
649
- @Test
650
- public void zeroByteTests() throws RocksDBException {
651
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true)) {
652
- final byte[] zeroByteValue = new byte[]{0, 0};
653
- //add zero byte value
654
- wbwi.put(zeroByteValue, zeroByteValue);
655
-
656
- final ByteBuffer buffer = ByteBuffer.allocateDirect(zeroByteValue.length);
657
- buffer.put(zeroByteValue);
658
-
659
- final WBWIRocksIterator.WriteEntry expected =
660
- new WBWIRocksIterator.WriteEntry(WBWIRocksIterator.WriteType.PUT,
661
- new DirectSlice(buffer, zeroByteValue.length),
662
- new DirectSlice(buffer, zeroByteValue.length));
663
-
664
- try (final WBWIRocksIterator it = wbwi.newIterator()) {
665
- it.seekToFirst();
666
- final WBWIRocksIterator.WriteEntry actual = it.entry();
667
- assertThat(actual.equals(expected)).isTrue();
668
- assertThat(it.entry().hashCode() == expected.hashCode()).isTrue();
669
- }
670
- }
671
- }
672
-
673
- @Test
674
- public void savePoints() throws RocksDBException {
675
- try (final Options options = new Options().setCreateIfMissing(true);
676
- final RocksDB db = RocksDB.open(options,
677
- dbFolder.getRoot().getAbsolutePath())) {
678
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
679
- final ReadOptions readOptions = new ReadOptions()) {
680
- wbwi.put("k1".getBytes(), "v1".getBytes());
681
- wbwi.put("k2".getBytes(), "v2".getBytes());
682
- wbwi.put("k3".getBytes(), "v3".getBytes());
683
-
684
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k1"))
685
- .isEqualTo("v1");
686
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k2"))
687
- .isEqualTo("v2");
688
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k3"))
689
- .isEqualTo("v3");
690
-
691
-
692
- wbwi.setSavePoint();
693
-
694
- wbwi.delete("k2".getBytes());
695
- wbwi.put("k3".getBytes(), "v3-2".getBytes());
696
-
697
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k2"))
698
- .isNull();
699
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k3"))
700
- .isEqualTo("v3-2");
701
-
702
-
703
- wbwi.setSavePoint();
704
-
705
- wbwi.put("k3".getBytes(), "v3-3".getBytes());
706
- wbwi.put("k4".getBytes(), "v4".getBytes());
707
-
708
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k3"))
709
- .isEqualTo("v3-3");
710
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k4"))
711
- .isEqualTo("v4");
712
-
713
-
714
- wbwi.rollbackToSavePoint();
715
-
716
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k2"))
717
- .isNull();
718
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k3"))
719
- .isEqualTo("v3-2");
720
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k4"))
721
- .isNull();
722
-
723
-
724
- wbwi.rollbackToSavePoint();
725
-
726
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k1"))
727
- .isEqualTo("v1");
728
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k2"))
729
- .isEqualTo("v2");
730
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k3"))
731
- .isEqualTo("v3");
732
- assertThat(getFromWriteBatchWithIndex(db, readOptions, wbwi, "k4"))
733
- .isNull();
734
- }
735
- }
736
- }
737
-
738
- @Test
739
- public void restorePoints() throws RocksDBException {
740
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
741
-
742
- wbwi.put("k1".getBytes(UTF_8), "v1".getBytes(UTF_8));
743
- wbwi.put("k2".getBytes(UTF_8), "v2".getBytes(UTF_8));
744
-
745
- wbwi.setSavePoint();
746
-
747
- wbwi.put("k1".getBytes(UTF_8), "123456789".getBytes(UTF_8));
748
- wbwi.delete("k2".getBytes(UTF_8));
749
-
750
- wbwi.rollbackToSavePoint();
751
-
752
- try(final DBOptions options = new DBOptions()) {
753
- assertThat(wbwi.getFromBatch(options,"k1".getBytes(UTF_8))).isEqualTo("v1".getBytes());
754
- assertThat(wbwi.getFromBatch(options,"k2".getBytes(UTF_8))).isEqualTo("v2".getBytes());
755
- }
756
- }
757
- }
758
-
759
- @Test(expected = RocksDBException.class)
760
- public void restorePoints_withoutSavePoints() throws RocksDBException {
761
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
762
- wbwi.rollbackToSavePoint();
763
- }
764
- }
765
-
766
- @Test(expected = RocksDBException.class)
767
- public void restorePoints_withoutSavePoints_nested() throws RocksDBException {
768
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
769
-
770
- wbwi.setSavePoint();
771
- wbwi.rollbackToSavePoint();
772
-
773
- // without previous corresponding setSavePoint
774
- wbwi.rollbackToSavePoint();
775
- }
776
- }
777
-
778
- @Test
779
- public void popSavePoint() throws RocksDBException {
780
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
781
-
782
- wbwi.put("k1".getBytes(), "v1".getBytes());
783
- wbwi.put("k2".getBytes(), "v2".getBytes());
784
-
785
- wbwi.setSavePoint();
786
-
787
- wbwi.put("k1".getBytes(), "123456789".getBytes());
788
- wbwi.delete("k2".getBytes());
789
-
790
- wbwi.setSavePoint();
791
-
792
- wbwi.popSavePoint();
793
-
794
- wbwi.rollbackToSavePoint();
795
-
796
- try(final DBOptions options = new DBOptions()) {
797
- assertThat(wbwi.getFromBatch(options,"k1".getBytes(UTF_8))).isEqualTo("v1".getBytes());
798
- assertThat(wbwi.getFromBatch(options,"k2".getBytes(UTF_8))).isEqualTo("v2".getBytes());
799
- }
800
- }
801
- }
802
-
803
- @Test(expected = RocksDBException.class)
804
- public void popSavePoint_withoutSavePoints() throws RocksDBException {
805
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
806
- wbwi.popSavePoint();
807
- }
808
- }
809
-
810
- @Test(expected = RocksDBException.class)
811
- public void popSavePoint_withoutSavePoints_nested() throws RocksDBException {
812
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
813
-
814
- wbwi.setSavePoint();
815
- wbwi.popSavePoint();
816
-
817
- // without previous corresponding setSavePoint
818
- wbwi.popSavePoint();
819
- }
820
- }
821
-
822
- @Test
823
- public void maxBytes() throws RocksDBException {
824
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
825
- wbwi.setMaxBytes(19);
826
-
827
- wbwi.put("k1".getBytes(), "v1".getBytes());
828
- }
829
- }
830
-
831
- @Test(expected = RocksDBException.class)
832
- public void maxBytes_over() throws RocksDBException {
833
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
834
- wbwi.setMaxBytes(1);
835
-
836
- wbwi.put("k1".getBytes(), "v1".getBytes());
837
- }
838
- }
839
-
840
- @Test
841
- public void getWriteBatch() {
842
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex()) {
843
-
844
- final WriteBatch wb = wbwi.getWriteBatch();
845
- assertThat(wb).isNotNull();
846
- assertThat(wb.isOwningHandle()).isFalse();
847
- }
848
- }
849
-
850
- private static String getFromWriteBatchWithIndex(final RocksDB db,
851
- final ReadOptions readOptions, final WriteBatchWithIndex wbwi,
852
- final String skey) {
853
- final byte[] key = skey.getBytes();
854
- try (final RocksIterator baseIterator = db.newIterator(readOptions);
855
- final RocksIterator iterator = wbwi.newIteratorWithBase(baseIterator)) {
856
- iterator.seek(key);
857
-
858
- // Arrays.equals(key, iterator.key()) ensures an exact match in Rocks,
859
- // instead of a nearest match
860
- return iterator.isValid() &&
861
- Arrays.equals(key, iterator.key()) ?
862
- new String(iterator.value()) : null;
863
- }
864
- }
865
-
866
- @Test
867
- public void getFromBatch() throws RocksDBException {
868
- final byte[] k1 = "k1".getBytes();
869
- final byte[] k2 = "k2".getBytes();
870
- final byte[] k3 = "k3".getBytes();
871
- final byte[] k4 = "k4".getBytes();
872
-
873
- final byte[] v1 = "v1".getBytes();
874
- final byte[] v2 = "v2".getBytes();
875
- final byte[] v3 = "v3".getBytes();
876
-
877
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
878
- final DBOptions dbOptions = new DBOptions()) {
879
- wbwi.put(k1, v1);
880
- wbwi.put(k2, v2);
881
- wbwi.put(k3, v3);
882
-
883
- assertThat(wbwi.getFromBatch(dbOptions, k1)).isEqualTo(v1);
884
- assertThat(wbwi.getFromBatch(dbOptions, k2)).isEqualTo(v2);
885
- assertThat(wbwi.getFromBatch(dbOptions, k3)).isEqualTo(v3);
886
- assertThat(wbwi.getFromBatch(dbOptions, k4)).isNull();
887
-
888
- wbwi.delete(k2);
889
-
890
- assertThat(wbwi.getFromBatch(dbOptions, k2)).isNull();
891
- }
892
- }
893
-
894
- @Test
895
- public void getFromBatchAndDB() throws RocksDBException {
896
- final byte[] k1 = "k1".getBytes();
897
- final byte[] k2 = "k2".getBytes();
898
- final byte[] k3 = "k3".getBytes();
899
- final byte[] k4 = "k4".getBytes();
900
-
901
- final byte[] v1 = "v1".getBytes();
902
- final byte[] v2 = "v2".getBytes();
903
- final byte[] v3 = "v3".getBytes();
904
- final byte[] v4 = "v4".getBytes();
905
-
906
- try (final Options options = new Options().setCreateIfMissing(true);
907
- final RocksDB db = RocksDB.open(options,
908
- dbFolder.getRoot().getAbsolutePath())) {
909
-
910
- db.put(k1, v1);
911
- db.put(k2, v2);
912
- db.put(k4, v4);
913
-
914
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
915
- final DBOptions dbOptions = new DBOptions();
916
- final ReadOptions readOptions = new ReadOptions()) {
917
-
918
- assertThat(wbwi.getFromBatch(dbOptions, k1)).isNull();
919
- assertThat(wbwi.getFromBatch(dbOptions, k2)).isNull();
920
- assertThat(wbwi.getFromBatch(dbOptions, k4)).isNull();
921
-
922
- wbwi.put(k3, v3);
923
-
924
- assertThat(wbwi.getFromBatch(dbOptions, k3)).isEqualTo(v3);
925
-
926
- assertThat(wbwi.getFromBatchAndDB(db, readOptions, k1)).isEqualTo(v1);
927
- assertThat(wbwi.getFromBatchAndDB(db, readOptions, k2)).isEqualTo(v2);
928
- assertThat(wbwi.getFromBatchAndDB(db, readOptions, k3)).isEqualTo(v3);
929
- assertThat(wbwi.getFromBatchAndDB(db, readOptions, k4)).isEqualTo(v4);
930
-
931
- wbwi.delete(k4);
932
-
933
- assertThat(wbwi.getFromBatchAndDB(db, readOptions, k4)).isNull();
934
- }
935
- }
936
- }
937
- private byte[] toArray(final ByteBuffer buf) {
938
- final byte[] ary = new byte[buf.remaining()];
939
- buf.get(ary);
940
- return ary;
941
- }
942
-
943
- @Test
944
- public void deleteRange() throws RocksDBException {
945
- try (final RocksDB db = RocksDB.open(dbFolder.getRoot().getAbsolutePath());
946
- final WriteBatch batch = new WriteBatch();
947
- final WriteOptions wOpt = new WriteOptions()) {
948
- db.put("key1".getBytes(), "value".getBytes());
949
- db.put("key2".getBytes(), "12345678".getBytes());
950
- db.put("key3".getBytes(), "abcdefg".getBytes());
951
- db.put("key4".getBytes(), "xyz".getBytes());
952
- assertThat(db.get("key1".getBytes())).isEqualTo("value".getBytes());
953
- assertThat(db.get("key2".getBytes())).isEqualTo("12345678".getBytes());
954
- assertThat(db.get("key3".getBytes())).isEqualTo("abcdefg".getBytes());
955
- assertThat(db.get("key4".getBytes())).isEqualTo("xyz".getBytes());
956
-
957
- batch.deleteRange("key2".getBytes(), "key4".getBytes());
958
- db.write(wOpt, batch);
959
-
960
- assertThat(db.get("key1".getBytes())).isEqualTo("value".getBytes());
961
- assertThat(db.get("key2".getBytes())).isNull();
962
- assertThat(db.get("key3".getBytes())).isNull();
963
- assertThat(db.get("key4".getBytes())).isEqualTo("xyz".getBytes());
964
- }
965
- }
966
-
967
- @Test
968
- public void iteratorWithBaseOverwriteTrue() throws RocksDBException {
969
- try (final Options options = new Options().setCreateIfMissing(true);
970
- final RocksDB db = RocksDB.open(options, dbFolder.getRoot().getAbsolutePath())) {
971
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
972
- final RocksIterator baseIter = db.newIterator();
973
- final RocksIterator wbwiIter = wbwi.newIteratorWithBase(baseIter)) {
974
- assertThat(wbwiIter).isNotNull();
975
- assertThat(wbwiIter.nativeHandle_).isGreaterThan(0);
976
- wbwiIter.status();
977
- }
978
-
979
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
980
- final RocksIterator baseIter = db.newIterator();
981
- final ReadOptions readOptions = new ReadOptions();
982
- final RocksIterator wbwiIter = wbwi.newIteratorWithBase(baseIter, readOptions)) {
983
- assertThat(wbwiIter).isNotNull();
984
- assertThat(wbwiIter.nativeHandle_).isGreaterThan(0);
985
- wbwiIter.status();
986
- }
987
- }
988
-
989
- final List<ColumnFamilyDescriptor> cfNames =
990
- Arrays.asList(new ColumnFamilyDescriptor(RocksDB.DEFAULT_COLUMN_FAMILY),
991
- new ColumnFamilyDescriptor("new_cf".getBytes()));
992
- final List<ColumnFamilyHandle> columnFamilyHandleList = new ArrayList<>();
993
- try (final DBOptions options =
994
- new DBOptions().setCreateIfMissing(true).setCreateMissingColumnFamilies(true);
995
- final RocksDB db = RocksDB.open(
996
- options, dbFolder.getRoot().getAbsolutePath(), cfNames, columnFamilyHandleList)) {
997
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
998
- final RocksIterator baseIter = db.newIterator();
999
- final RocksIterator wbwiIter =
1000
- wbwi.newIteratorWithBase(columnFamilyHandleList.get(1), baseIter)) {
1001
- assertThat(wbwiIter).isNotNull();
1002
- assertThat(wbwiIter.nativeHandle_).isGreaterThan(0);
1003
- wbwiIter.status();
1004
- }
1005
-
1006
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(true);
1007
- final RocksIterator baseIter = db.newIterator();
1008
- final ReadOptions readOptions = new ReadOptions();
1009
- final RocksIterator wbwiIter =
1010
- wbwi.newIteratorWithBase(columnFamilyHandleList.get(1), baseIter, readOptions)) {
1011
- assertThat(wbwiIter).isNotNull();
1012
- assertThat(wbwiIter.nativeHandle_).isGreaterThan(0);
1013
- wbwiIter.status();
1014
- }
1015
- }
1016
- }
1017
-
1018
- @Test
1019
- public void iteratorWithBaseOverwriteFalse() throws RocksDBException {
1020
- try (final Options options = new Options().setCreateIfMissing(true);
1021
- final RocksDB db = RocksDB.open(options, dbFolder.getRoot().getAbsolutePath())) {
1022
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(false);
1023
- final RocksIterator baseIter = db.newIterator();
1024
- final RocksIterator wbwiIter = wbwi.newIteratorWithBase(baseIter)) {
1025
- assertThat(wbwiIter).isNotNull();
1026
- assertThat(wbwiIter.nativeHandle_).isGreaterThan(0);
1027
- wbwiIter.status();
1028
- }
1029
-
1030
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(false);
1031
- final RocksIterator baseIter = db.newIterator();
1032
- final ReadOptions readOptions = new ReadOptions();
1033
- final RocksIterator wbwiIter = wbwi.newIteratorWithBase(baseIter, readOptions)) {
1034
- assertThat(wbwiIter).isNotNull();
1035
- assertThat(wbwiIter.nativeHandle_).isGreaterThan(0);
1036
- wbwiIter.status();
1037
- }
1038
- }
1039
-
1040
- final List<ColumnFamilyDescriptor> cfNames =
1041
- Arrays.asList(new ColumnFamilyDescriptor(RocksDB.DEFAULT_COLUMN_FAMILY),
1042
- new ColumnFamilyDescriptor("new_cf".getBytes()));
1043
- final List<ColumnFamilyHandle> columnFamilyHandleList = new ArrayList<>();
1044
- try (final DBOptions options =
1045
- new DBOptions().setCreateIfMissing(true).setCreateMissingColumnFamilies(true);
1046
- final RocksDB db = RocksDB.open(
1047
- options, dbFolder.getRoot().getAbsolutePath(), cfNames, columnFamilyHandleList)) {
1048
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(false);
1049
- final RocksIterator baseIter = db.newIterator();
1050
- final RocksIterator wbwiIter =
1051
- wbwi.newIteratorWithBase(columnFamilyHandleList.get(1), baseIter)) {
1052
- assertThat(wbwiIter).isNotNull();
1053
- assertThat(wbwiIter.nativeHandle_).isGreaterThan(0);
1054
- wbwiIter.status();
1055
- }
1056
-
1057
- try (final WriteBatchWithIndex wbwi = new WriteBatchWithIndex(false);
1058
- final RocksIterator baseIter = db.newIterator();
1059
- final ReadOptions readOptions = new ReadOptions();
1060
- final RocksIterator wbwiIter =
1061
- wbwi.newIteratorWithBase(columnFamilyHandleList.get(1), baseIter, readOptions)) {
1062
- assertThat(wbwiIter).isNotNull();
1063
- assertThat(wbwiIter.nativeHandle_).isGreaterThan(0);
1064
- wbwiIter.status();
1065
- }
1066
- }
1067
- }
1068
- }