# distributedCache **Repository Path**: wanyuxiang000/distributedCache ## Basic Information - **Project Name**: distributedCache - **Description**: go语言实现的分布式缓存服务 - **Primary Language**: Go - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-07-05 - **Last Updated**: 2022-06-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # distributedCache #### 介绍 go语言实现的分布式缓存服务 #### 软件架构 #软件架构版本说明 1. ✔ master分支为:HTTP服务的分布式缓存 2. ✔ V1.0分支为:TCP服务的分布式缓存 3. ✔ V2.0分支为:rocksdb作为持久层服务的分布式缓存 4. ✔ V3.0分支为:rocksdb 批量处理(多客户端并发[客户端优化],pipeline[客户端优化]),rocksdb批量写[服务器端优化]) 5. ✔ V4.0分支为:运行在ubuntu18.04环境下,链接加载会出错,goland也不支持直接运行,最好使用命令行形式 6. ✔ V6.0分支为:将缓存服务全部改成异步进行处理 7. ✔ V7.0分支为:提交gossip分布式服务器集群版本,CAP原则提供了(AP可用性和分区容错性,但是不提供一致性) 8. ✔ V8.0分支为:提交rocksdb数据再平衡功能处理 8. ✔ V9.0分支为:缓存生命周期和超时的处理,实现先进先出(FIFO)淘汰策略 #### 安装教程 1. 引入rocksdb子模块 git rm -r --cached src/com.mgface.discache/rocksdb git submodule add https://github.com/facebook/rocksdb.git src/com.mgface.discache/rocksdb 将rocksDB设置为本书的源码的子模块,在源码根目录执行以下的命令进行下载: git submodule update --init 下载 RocksDB 源码后,还需要将其编译成静态链接库,让 Go 程序能够链接, 编译命令如下: cd rocksdb && make static_lib 编译 RocksDB 静态链接库需要用到 make 和 g++工具。另外编译好的RocksDB库还需要用到其他库,参考第二步 2. rocksdb安装(mac osx) 参考https://github.com/facebook/rocksdb/blob/master/INSTALL.md安装 * **OS X**: * Install latest C++ compiler that supports C++ 11: * Update XCode: run `xcode-select --install` (or install it from XCode App's settting). * Install via [homebrew](http://brew.sh/). * If you're first time developer in MacOS, you still need to run: `xcode-select --install` in your command line. * run `brew tap homebrew/versions; brew install gcc48 --use-llvm` to install gcc 4.8 (or higher). * run `brew install rocksdb` 2. https://studygolang.com/articles/10589[Golang官方依赖管理工具:dep] #### 使用说明
└── com.mgface.discache
    ├── Gopkg.lock
    ├── Gopkg.toml
    ├── cache
    │   ├── common
    │   │   ├── pair.go
    │   │   └── statistics.go
    │   ├── instance.go
    │   ├── interfaces
    │   │   └── interfaces.go
    │   ├── memory
    │   │   ├── memoryCache.go
    │   │   └── memory_scanner.go
    │   └── rocksdb
    │       ├── rocksdb.go
    │       ├── rocksdb_batch.go
    │       ├── rocksdb_del.go
    │       ├── rocksdb_get.go
    │       ├── rocksdb_getstat.go
    │       ├── rocksdb_new.go
    │       ├── rocksdb_scanner.go
    │       └── rocksdb_set.go
    ├── cache-benchmark
    │   ├── cacheClient
    │   │   ├── client.go
    │   │   ├── http.go
    │   │   ├── redis.go
    │   │   └── tcp.go
    │   └── main.go
    ├── chttp
    │   ├── Server.go
    │   ├── cacheHandler.go
    │   ├── clusterHandler.go
    │   ├── rebalanceHandler.go
    │   └── statusHandler.go
    ├── cluster
    │   └── node.go
    ├── constVar
    │   └── constVariables.go
    ├── ctcp
    │   ├── Server.go
    │   ├── ops.go
    │   ├── process.go
    │   └── utils.go
    ├── main.go
    ├── rocksdb
    │   ├── AUTHORS
    │   ├── CMakeLists.txt
    │   ├── CODE_OF_CONDUCT.md
    │   ├── CONTRIBUTING.md
    │   ├── COPYING
    │   ├── DEFAULT_OPTIONS_HISTORY.md
    │   ├── DUMP_FORMAT.md
    │   ├── HISTORY.md
    │   ├── INSTALL.md
    │   ├── LANGUAGE-BINDINGS.md
    │   ├── LICENSE.Apache
    │   ├── LICENSE.leveldb
    │   ├── Makefile
    │   ├── README.md
    │   ├── ROCKSDB_LITE.md
    │   ├── TARGETS
    │   ├── USERS.md
    │   ├── Vagrantfile
    │   ├── WINDOWS_PORT.md
    │   ├── appveyor.yml
    │   ├── buckifier
    │   │   ├── buckify_rocksdb.py
    │   │   ├── rocks_test_runner.sh
    │   │   ├── targets_builder.py
    │   │   ├── targets_cfg.py
    │   │   └── util.py
    │   ├── build_tools
    │   │   ├── RocksDBCommonHelper.php
    │   │   ├── amalgamate.py
    │   │   ├── build_detect_platform
    │   │   ├── cont_integration.sh
    │   │   ├── dependencies.sh
    │   │   ├── dependencies_4.8.1.sh
    │   │   ├── dependencies_platform007.sh
    │   │   ├── dockerbuild.sh
    │   │   ├── error_filter.py
    │   │   ├── fb_compile_mongo.sh
    │   │   ├── fbcode_config.sh
    │   │   ├── fbcode_config4.8.1.sh
    │   │   ├── fbcode_config_platform007.sh
    │   │   ├── format-diff.sh
    │   │   ├── gnu_parallel
    │   │   ├── make_package.sh
    │   │   ├── precommit_checker.py
    │   │   ├── regression_build_test.sh
    │   │   ├── rocksdb-lego-determinator
    │   │   ├── run_ci_db_test.ps1
    │   │   ├── setup_centos7.sh
    │   │   ├── update_dependencies.sh
    │   │   └── version.sh
    │   ├── cache
    │   │   ├── cache_bench.cc
    │   │   ├── cache_bench.cc.d
    │   │   ├── cache_test.cc
    │   │   ├── cache_test.cc.d
    │   │   ├── clock_cache.cc
    │   │   ├── clock_cache.cc.d
    │   │   ├── clock_cache.h
    │   │   ├── clock_cache.o
    │   │   ├── lru_cache.cc
    │   │   ├── lru_cache.cc.d
    │   │   ├── lru_cache.h
    │   │   ├── lru_cache.o
    │   │   ├── lru_cache_test.cc
    │   │   ├── sharded_cache.cc
    │   │   ├── sharded_cache.cc.d
    │   │   ├── sharded_cache.h
    │   │   └── sharded_cache.o
    │   ├── cmake
    │   │   ├── RocksDBConfig.cmake.in
    │   │   └── modules
    │   │       ├── FindJeMalloc.cmake
    │   │       ├── FindNUMA.cmake
    │   │       ├── FindTBB.cmake
    │   │       ├── Findbzip2.cmake
    │   │       ├── Findlz4.cmake
    │   │       ├── Findsnappy.cmake
    │   │       └── Findzstd.cmake
    │   ├── coverage
    │   │   ├── coverage_test.sh
    │   │   └── parse_gcov_output.py
    │   ├── db
    │   │   ├── builder.cc
    │   │   ├── builder.cc.d
    │   │   ├── builder.h
    │   │   ├── builder.o
    │   │   ├── c.cc
    │   │   ├── c.cc.d
    │   │   ├── c.o
    │   │   ├── c_test.c
    │   │   ├── column_family.cc
    │   │   ├── column_family.cc.d
    │   │   ├── column_family.h
    │   │   ├── column_family.o
    │   │   ├── column_family_test.cc
    │   │   ├── column_family_test.cc.d
    │   │   ├── compact_files_test.cc
    │   │   ├── compact_files_test.cc.d
    │   │   ├── compacted_db_impl.cc
    │   │   ├── compacted_db_impl.cc.d
    │   │   ├── compacted_db_impl.h
    │   │   ├── compacted_db_impl.o
    │   │   ├── compaction
    │   │   │   ├── compaction.cc
    │   │   │   ├── compaction.cc.d
    │   │   │   ├── compaction.h
    │   │   │   ├── compaction.o
    │   │   │   ├── compaction_iteration_stats.h
    │   │   │   ├── compaction_iterator.cc
    │   │   │   ├── compaction_iterator.cc.d
    │   │   │   ├── compaction_iterator.h
    │   │   │   ├── compaction_iterator.o
    │   │   │   ├── compaction_iterator_test.cc
    │   │   │   ├── compaction_iterator_test.cc.d
    │   │   │   ├── compaction_job.cc
    │   │   │   ├── compaction_job.cc.d
    │   │   │   ├── compaction_job.h
    │   │   │   ├── compaction_job.o
    │   │   │   ├── compaction_job_stats_test.cc
    │   │   │   ├── compaction_job_stats_test.cc.d
    │   │   │   ├── compaction_job_test.cc
    │   │   │   ├── compaction_job_test.cc.d
    │   │   │   ├── compaction_picker.cc
    │   │   │   ├── compaction_picker.cc.d
    │   │   │   ├── compaction_picker.h
    │   │   │   ├── compaction_picker.o
    │   │   │   ├── compaction_picker_fifo.cc
    │   │   │   ├── compaction_picker_fifo.cc.d
    │   │   │   ├── compaction_picker_fifo.h
    │   │   │   ├── compaction_picker_fifo.o
    │   │   │   ├── compaction_picker_level.cc
    │   │   │   ├── compaction_picker_level.cc.d
    │   │   │   ├── compaction_picker_level.h
    │   │   │   ├── compaction_picker_level.o
    │   │   │   ├── compaction_picker_test.cc
    │   │   │   ├── compaction_picker_test.cc.d
    │   │   │   ├── compaction_picker_universal.cc
    │   │   │   ├── compaction_picker_universal.cc.d
    │   │   │   ├── compaction_picker_universal.h
    │   │   │   └── compaction_picker_universal.o
    │   │   ├── comparator_db_test.cc
    │   │   ├── comparator_db_test.cc.d
    │   │   ├── convenience.cc
    │   │   ├── convenience.cc.d
    │   │   ├── convenience.o
    │   │   ├── corruption_test.cc
    │   │   ├── corruption_test.cc.d
    │   │   ├── cuckoo_table_db_test.cc
    │   │   ├── cuckoo_table_db_test.cc.d
    │   │   ├── db_basic_test.cc
    │   │   ├── db_basic_test.cc.d
    │   │   ├── db_blob_index_test.cc
    │   │   ├── db_blob_index_test.cc.d
    │   │   ├── db_block_cache_test.cc
    │   │   ├── db_block_cache_test.cc.d
    │   │   ├── db_bloom_filter_test.cc
    │   │   ├── db_bloom_filter_test.cc.d
    │   │   ├── db_compaction_filter_test.cc
    │   │   ├── db_compaction_filter_test.cc.d
    │   │   ├── db_compaction_test.cc
    │   │   ├── db_compaction_test.cc.d
    │   │   ├── db_dynamic_level_test.cc
    │   │   ├── db_dynamic_level_test.cc.d
    │   │   ├── db_encryption_test.cc
    │   │   ├── db_encryption_test.cc.d
    │   │   ├── db_filesnapshot.cc
    │   │   ├── db_filesnapshot.cc.d
    │   │   ├── db_filesnapshot.o
    │   │   ├── db_flush_test.cc
    │   │   ├── db_flush_test.cc.d
    │   │   ├── db_impl
    │   │   │   ├── db_impl.cc
    │   │   │   ├── db_impl.cc.d
    │   │   │   ├── db_impl.h
    │   │   │   ├── db_impl.o
    │   │   │   ├── db_impl_compaction_flush.cc
    │   │   │   ├── db_impl_compaction_flush.cc.d
    │   │   │   ├── db_impl_compaction_flush.o
    │   │   │   ├── db_impl_debug.cc
    │   │   │   ├── db_impl_debug.cc.d
    │   │   │   ├── db_impl_debug.o
    │   │   │   ├── db_impl_experimental.cc
    │   │   │   ├── db_impl_experimental.cc.d
    │   │   │   ├── db_impl_experimental.o
    │   │   │   ├── db_impl_files.cc
    │   │   │   ├── db_impl_files.cc.d
    │   │   │   ├── db_impl_files.o
    │   │   │   ├── db_impl_open.cc
    │   │   │   ├── db_impl_open.cc.d
    │   │   │   ├── db_impl_open.o
    │   │   │   ├── db_impl_readonly.cc
    │   │   │   ├── db_impl_readonly.cc.d
    │   │   │   ├── db_impl_readonly.h
    │   │   │   ├── db_impl_readonly.o
    │   │   │   ├── db_impl_secondary.cc
    │   │   │   ├── db_impl_secondary.cc.d
    │   │   │   ├── db_impl_secondary.h
    │   │   │   ├── db_impl_secondary.o
    │   │   │   ├── db_impl_write.cc
    │   │   │   ├── db_impl_write.cc.d
    │   │   │   ├── db_impl_write.o
    │   │   │   ├── db_secondary_test.cc
    │   │   │   └── db_secondary_test.cc.d
    │   │   ├── db_info_dumper.cc
    │   │   ├── db_info_dumper.cc.d
    │   │   ├── db_info_dumper.h
    │   │   ├── db_info_dumper.o
    │   │   ├── db_inplace_update_test.cc
    │   │   ├── db_inplace_update_test.cc.d
    │   │   ├── db_io_failure_test.cc
    │   │   ├── db_io_failure_test.cc.d
    │   │   ├── db_iter.cc
    │   │   ├── db_iter.cc.d
    │   │   ├── db_iter.h
    │   │   ├── db_iter.o
    │   │   ├── db_iter_stress_test.cc
    │   │   ├── db_iter_stress_test.cc.d
    │   │   ├── db_iter_test.cc
    │   │   ├── db_iter_test.cc.d
    │   │   ├── db_iterator_test.cc
    │   │   ├── db_iterator_test.cc.d
    │   │   ├── db_log_iter_test.cc
    │   │   ├── db_log_iter_test.cc.d
    │   │   ├── db_memtable_test.cc
    │   │   ├── db_memtable_test.cc.d
    │   │   ├── db_merge_operator_test.cc
    │   │   ├── db_merge_operator_test.cc.d
    │   │   ├── db_options_test.cc
    │   │   ├── db_options_test.cc.d
    │   │   ├── db_properties_test.cc
    │   │   ├── db_properties_test.cc.d
    │   │   ├── db_range_del_test.cc
    │   │   ├── db_range_del_test.cc.d
    │   │   ├── db_sst_test.cc
    │   │   ├── db_sst_test.cc.d
    │   │   ├── db_statistics_test.cc
    │   │   ├── db_statistics_test.cc.d
    │   │   ├── db_table_properties_test.cc
    │   │   ├── db_table_properties_test.cc.d
    │   │   ├── db_tailing_iter_test.cc
    │   │   ├── db_tailing_iter_test.cc.d
    │   │   ├── db_test.cc
    │   │   ├── db_test.cc.d
    │   │   ├── db_test2.cc
    │   │   ├── db_test2.cc.d
    │   │   ├── db_test_util.cc
    │   │   ├── db_test_util.cc.d
    │   │   ├── db_test_util.h
    │   │   ├── db_universal_compaction_test.cc
    │   │   ├── db_universal_compaction_test.cc.d
    │   │   ├── db_wal_test.cc
    │   │   ├── db_wal_test.cc.d
    │   │   ├── db_write_test.cc
    │   │   ├── db_write_test.cc.d
    │   │   ├── dbformat.cc
    │   │   ├── dbformat.cc.d
    │   │   ├── dbformat.h
    │   │   ├── dbformat.o
    │   │   ├── dbformat_test.cc
    │   │   ├── dbformat_test.cc.d
    │   │   ├── deletefile_test.cc
    │   │   ├── deletefile_test.cc.d
    │   │   ├── error_handler.cc
    │   │   ├── error_handler.cc.d
    │   │   ├── error_handler.h
    │   │   ├── error_handler.o
    │   │   ├── error_handler_test.cc
    │   │   ├── error_handler_test.cc.d
    │   │   ├── event_helpers.cc
    │   │   ├── event_helpers.cc.d
    │   │   ├── event_helpers.h
    │   │   ├── event_helpers.o
    │   │   ├── experimental.cc
    │   │   ├── experimental.cc.d
    │   │   ├── experimental.o
    │   │   ├── external_sst_file_basic_test.cc
    │   │   ├── external_sst_file_basic_test.cc.d
    │   │   ├── external_sst_file_ingestion_job.cc
    │   │   ├── external_sst_file_ingestion_job.cc.d
    │   │   ├── external_sst_file_ingestion_job.h
    │   │   ├── external_sst_file_ingestion_job.o
    │   │   ├── external_sst_file_test.cc
    │   │   ├── external_sst_file_test.cc.d
    │   │   ├── fault_injection_test.cc
    │   │   ├── fault_injection_test.cc.d
    │   │   ├── file_indexer.cc
    │   │   ├── file_indexer.cc.d
    │   │   ├── file_indexer.h
    │   │   ├── file_indexer.o
    │   │   ├── file_indexer_test.cc
    │   │   ├── file_indexer_test.cc.d
    │   │   ├── filename_test.cc
    │   │   ├── filename_test.cc.d
    │   │   ├── flush_job.cc
    │   │   ├── flush_job.cc.d
    │   │   ├── flush_job.h
    │   │   ├── flush_job.o
    │   │   ├── flush_job_test.cc
    │   │   ├── flush_job_test.cc.d
    │   │   ├── flush_scheduler.cc
    │   │   ├── flush_scheduler.cc.d
    │   │   ├── flush_scheduler.h
    │   │   ├── flush_scheduler.o
    │   │   ├── forward_iterator.cc
    │   │   ├── forward_iterator.cc.d
    │   │   ├── forward_iterator.h
    │   │   ├── forward_iterator.o
    │   │   ├── forward_iterator_bench.cc
    │   │   ├── internal_stats.cc
    │   │   ├── internal_stats.cc.d
    │   │   ├── internal_stats.h
    │   │   ├── internal_stats.o
    │   │   ├── job_context.h
    │   │   ├── listener_test.cc
    │   │   ├── listener_test.cc.d
    │   │   ├── log_format.h
    │   │   ├── log_reader.cc
    │   │   ├── log_reader.cc.d
    │   │   ├── log_reader.h
    │   │   ├── log_reader.o
    │   │   ├── log_test.cc
    │   │   ├── log_test.cc.d
    │   │   ├── log_writer.cc
    │   │   ├── log_writer.cc.d
    │   │   ├── log_writer.h
    │   │   ├── log_writer.o
    │   │   ├── logs_with_prep_tracker.cc
    │   │   ├── logs_with_prep_tracker.cc.d
    │   │   ├── logs_with_prep_tracker.h
    │   │   ├── logs_with_prep_tracker.o
    │   │   ├── lookup_key.h
    │   │   ├── malloc_stats.cc
    │   │   ├── malloc_stats.cc.d
    │   │   ├── malloc_stats.h
    │   │   ├── malloc_stats.o
    │   │   ├── manual_compaction_test.cc
    │   │   ├── manual_compaction_test.cc.d
    │   │   ├── memtable.cc
    │   │   ├── memtable.cc.d
    │   │   ├── memtable.h
    │   │   ├── memtable.o
    │   │   ├── memtable_list.cc
    │   │   ├── memtable_list.cc.d
    │   │   ├── memtable_list.h
    │   │   ├── memtable_list.o
    │   │   ├── memtable_list_test.cc
    │   │   ├── memtable_list_test.cc.d
    │   │   ├── merge_context.h
    │   │   ├── merge_helper.cc
    │   │   ├── merge_helper.cc.d
    │   │   ├── merge_helper.h
    │   │   ├── merge_helper.o
    │   │   ├── merge_helper_test.cc
    │   │   ├── merge_helper_test.cc.d
    │   │   ├── merge_operator.cc
    │   │   ├── merge_operator.cc.d
    │   │   ├── merge_operator.o
    │   │   ├── merge_test.cc
    │   │   ├── merge_test.cc.d
    │   │   ├── obsolete_files_test.cc
    │   │   ├── obsolete_files_test.cc.d
    │   │   ├── options_file_test.cc
    │   │   ├── options_file_test.cc.d
    │   │   ├── perf_context_test.cc
    │   │   ├── perf_context_test.cc.d
    │   │   ├── pinned_iterators_manager.h
    │   │   ├── plain_table_db_test.cc
    │   │   ├── plain_table_db_test.cc.d
    │   │   ├── pre_release_callback.h
    │   │   ├── prefix_test.cc
    │   │   ├── prefix_test.cc.d
    │   │   ├── range_del_aggregator.cc
    │   │   ├── range_del_aggregator.cc.d
    │   │   ├── range_del_aggregator.h
    │   │   ├── range_del_aggregator.o
    │   │   ├── range_del_aggregator_bench.cc
    │   │   ├── range_del_aggregator_bench.cc.d
    │   │   ├── range_del_aggregator_test.cc
    │   │   ├── range_del_aggregator_test.cc.d
    │   │   ├── range_tombstone_fragmenter.cc
    │   │   ├── range_tombstone_fragmenter.cc.d
    │   │   ├── range_tombstone_fragmenter.h
    │   │   ├── range_tombstone_fragmenter.o
    │   │   ├── range_tombstone_fragmenter_test.cc
    │   │   ├── range_tombstone_fragmenter_test.cc.d
    │   │   ├── read_callback.h
    │   │   ├── repair.cc
    │   │   ├── repair.cc.d
    │   │   ├── repair.o
    │   │   ├── repair_test.cc
    │   │   ├── repair_test.cc.d
    │   │   ├── snapshot_checker.h
    │   │   ├── snapshot_impl.cc
    │   │   ├── snapshot_impl.cc.d
    │   │   ├── snapshot_impl.h
    │   │   ├── snapshot_impl.o
    │   │   ├── table_cache.cc
    │   │   ├── table_cache.cc.d
    │   │   ├── table_cache.h
    │   │   ├── table_cache.o
    │   │   ├── table_properties_collector.cc
    │   │   ├── table_properties_collector.cc.d
    │   │   ├── table_properties_collector.h
    │   │   ├── table_properties_collector.o
    │   │   ├── table_properties_collector_test.cc
    │   │   ├── table_properties_collector_test.cc.d
    │   │   ├── transaction_log_impl.cc
    │   │   ├── transaction_log_impl.cc.d
    │   │   ├── transaction_log_impl.h
    │   │   ├── transaction_log_impl.o
    │   │   ├── version_builder.cc
    │   │   ├── version_builder.cc.d
    │   │   ├── version_builder.h
    │   │   ├── version_builder.o
    │   │   ├── version_builder_test.cc
    │   │   ├── version_builder_test.cc.d
    │   │   ├── version_edit.cc
    │   │   ├── version_edit.cc.d
    │   │   ├── version_edit.h
    │   │   ├── version_edit.o
    │   │   ├── version_edit_test.cc
    │   │   ├── version_edit_test.cc.d
    │   │   ├── version_set.cc
    │   │   ├── version_set.cc.d
    │   │   ├── version_set.h
    │   │   ├── version_set.o
    │   │   ├── version_set_test.cc
    │   │   ├── version_set_test.cc.d
    │   │   ├── wal_manager.cc
    │   │   ├── wal_manager.cc.d
    │   │   ├── wal_manager.h
    │   │   ├── wal_manager.o
    │   │   ├── wal_manager_test.cc
    │   │   ├── wal_manager_test.cc.d
    │   │   ├── write_batch.cc
    │   │   ├── write_batch.cc.d
    │   │   ├── write_batch.o
    │   │   ├── write_batch_base.cc
    │   │   ├── write_batch_base.cc.d
    │   │   ├── write_batch_base.o
    │   │   ├── write_batch_internal.h
    │   │   ├── write_batch_test.cc
    │   │   ├── write_batch_test.cc.d
    │   │   ├── write_callback.h
    │   │   ├── write_callback_test.cc
    │   │   ├── write_callback_test.cc.d
    │   │   ├── write_controller.cc
    │   │   ├── write_controller.cc.d
    │   │   ├── write_controller.h
    │   │   ├── write_controller.o
    │   │   ├── write_controller_test.cc
    │   │   ├── write_controller_test.cc.d
    │   │   ├── write_thread.cc
    │   │   ├── write_thread.cc.d
    │   │   ├── write_thread.h
    │   │   └── write_thread.o
    │   ├── defs.bzl
    │   ├── docs
    │   │   ├── CNAME
    │   │   ├── CONTRIBUTING.md
    │   │   ├── Gemfile
    │   │   ├── Gemfile.lock
    │   │   ├── LICENSE-DOCUMENTATION
    │   │   ├── README.md
    │   │   ├── TEMPLATE-INFORMATION.md
    │   │   ├── _config.yml
    │   │   ├── _data
    │   │   │   ├── authors.yml
    │   │   │   ├── features.yml
    │   │   │   ├── nav.yml
    │   │   │   ├── nav_docs.yml
    │   │   │   ├── powered_by.yml
    │   │   │   ├── powered_by_highlight.yml
    │   │   │   └── promo.yml
    │   │   ├── _docs
    │   │   │   ├── faq.md
    │   │   │   └── getting-started.md
    │   │   ├── _includes
    │   │   │   ├── blog_pagination.html
    │   │   │   ├── content
    │   │   │   │   ├── gridblocks.html
    │   │   │   │   └── items
    │   │   │   │       └── gridblock.html
    │   │   │   ├── doc.html
    │   │   │   ├── doc_paging.html
    │   │   │   ├── footer.html
    │   │   │   ├── head.html
    │   │   │   ├── header.html
    │   │   │   ├── hero.html
    │   │   │   ├── home_header.html
    │   │   │   ├── katex_import.html
    │   │   │   ├── katex_render.html
    │   │   │   ├── nav
    │   │   │   │   ├── collection_nav.html
    │   │   │   │   ├── collection_nav_group.html
    │   │   │   │   ├── collection_nav_group_item.html
    │   │   │   │   └── header_nav.html
    │   │   │   ├── nav.html
    │   │   │   ├── nav_search.html
    │   │   │   ├── plugins
    │   │   │   │   ├── all_share.html
    │   │   │   │   ├── ascii_cinema.html
    │   │   │   │   ├── button.html
    │   │   │   │   ├── github_star.html
    │   │   │   │   ├── github_watch.html
    │   │   │   │   ├── google_share.html
    │   │   │   │   ├── iframe.html
    │   │   │   │   ├── like_button.html
    │   │   │   │   ├── plugin_row.html
    │   │   │   │   ├── post_social_plugins.html
    │   │   │   │   ├── slideshow.html
    │   │   │   │   ├── twitter_follow.html
    │   │   │   │   └── twitter_share.html
    │   │   │   ├── post.html
    │   │   │   ├── powered_by.html
    │   │   │   ├── social_plugins.html
    │   │   │   └── ui
    │   │   │       └── button.html
    │   │   ├── _layouts
    │   │   │   ├── basic.html
    │   │   │   ├── blog.html
    │   │   │   ├── blog_default.html
    │   │   │   ├── default.html
    │   │   │   ├── doc_default.html
    │   │   │   ├── doc_page.html
    │   │   │   ├── docs.html
    │   │   │   ├── home.html
    │   │   │   ├── page.html
    │   │   │   ├── plain.html
    │   │   │   ├── post.html
    │   │   │   ├── redirect.html
    │   │   │   └── top-level.html
    │   │   ├── _posts
    │   │   │   ├── 2014-03-27-how-to-backup-rocksdb.markdown
    │   │   │   ├── 2014-03-27-how-to-persist-in-memory-rocksdb-database.markdown
    │   │   │   ├── 2014-04-02-the-1st-rocksdb-local-meetup-held-on-march-27-2014.markdown
    │   │   │   ├── 2014-04-07-rocksdb-2-8-release.markdown
    │   │   │   ├── 2014-04-21-indexing-sst-files-for-better-lookup-performance.markdown
    │   │   │   ├── 2014-05-14-lock.markdown
    │   │   │   ├── 2014-05-19-rocksdb-3-0-release.markdown
    │   │   │   ├── 2014-05-22-rocksdb-3-1-release.markdown
    │   │   │   ├── 2014-06-23-plaintable-a-new-file-format.markdown
    │   │   │   ├── 2014-06-27-avoid-expensive-locks-in-get.markdown
    │   │   │   ├── 2014-06-27-rocksdb-3-2-release.markdown
    │   │   │   ├── 2014-07-29-rocksdb-3-3-release.markdown
    │   │   │   ├── 2014-09-12-cuckoo.markdown
    │   │   │   ├── 2014-09-12-new-bloom-filter-format.markdown
    │   │   │   ├── 2014-09-15-rocksdb-3-5-release.markdown
    │   │   │   ├── 2015-01-16-migrating-from-leveldb-to-rocksdb-2.markdown
    │   │   │   ├── 2015-02-24-reading-rocksdb-options-from-a-file.markdown
    │   │   │   ├── 2015-02-27-write-batch-with-index.markdown
    │   │   │   ├── 2015-04-22-integrating-rocksdb-with-mongodb-2.markdown
    │   │   │   ├── 2015-06-12-rocksdb-in-osquery.markdown
    │   │   │   ├── 2015-07-15-rocksdb-2015-h2-roadmap.markdown
    │   │   │   ├── 2015-07-17-spatial-indexing-in-rocksdb.markdown
    │   │   │   ├── 2015-07-22-rocksdb-is-now-available-in-windows-platform.markdown
    │   │   │   ├── 2015-07-23-dynamic-level.markdown
    │   │   │   ├── 2015-10-27-getthreadlist.markdown
    │   │   │   ├── 2015-11-10-use-checkpoints-for-efficient-snapshots.markdown
    │   │   │   ├── 2015-11-16-analysis-file-read-latency-by-level.markdown
    │   │   │   ├── 2016-01-29-compaction_pri.markdown
    │   │   │   ├── 2016-02-24-rocksdb-4-2-release.markdown
    │   │   │   ├── 2016-02-25-rocksdb-ama.markdown
    │   │   │   ├── 2016-03-07-rocksdb-options-file.markdown
    │   │   │   ├── 2016-04-26-rocksdb-4-5-1-released.markdown
    │   │   │   ├── 2016-07-26-rocksdb-4-8-released.markdown
    │   │   │   ├── 2016-09-28-rocksdb-4-11-2-released.markdown
    │   │   │   ├── 2017-01-06-rocksdb-5-0-1-released.markdown
    │   │   │   ├── 2017-02-07-rocksdb-5-1-2-released.markdown
    │   │   │   ├── 2017-02-17-bulkoad-ingest-sst-file.markdown
    │   │   │   ├── 2017-03-02-rocksdb-5-2-1-released.markdown
    │   │   │   ├── 2017-05-12-partitioned-index-filter.markdown
    │   │   │   ├── 2017-05-14-core-local-stats.markdown
    │   │   │   ├── 2017-05-26-rocksdb-5-4-5-released.markdown
    │   │   │   ├── 2017-06-26-17-level-based-changes.markdown
    │   │   │   ├── 2017-06-29-rocksdb-5-5-1-released.markdown
    │   │   │   ├── 2017-07-25-rocksdb-5-6-1-released.markdown
    │   │   │   ├── 2017-08-24-pinnableslice.markdown
    │   │   │   ├── 2017-08-25-flushwal.markdown
    │   │   │   ├── 2017-09-28-rocksdb-5-8-released.markdown
    │   │   │   ├── 2017-12-18-17-auto-tuned-rate-limiter.markdown
    │   │   │   ├── 2017-12-19-write-prepared-txn.markdown
    │   │   │   ├── 2018-02-05-rocksdb-5-10-2-released.markdown
    │   │   │   ├── 2018-08-01-rocksdb-tuning-advisor.markdown
    │   │   │   ├── 2018-08-23-data-block-hash-index.markdown
    │   │   │   ├── 2018-11-21-delete-range.markdown
    │   │   │   └── 2019-03-08-format-version-4.markdown
    │   │   ├── _sass
    │   │   │   ├── _base.scss
    │   │   │   ├── _blog.scss
    │   │   │   ├── _buttons.scss
    │   │   │   ├── _footer.scss
    │   │   │   ├── _gridBlock.scss
    │   │   │   ├── _header.scss
    │   │   │   ├── _poweredby.scss
    │   │   │   ├── _promo.scss
    │   │   │   ├── _react_docs_nav.scss
    │   │   │   ├── _react_header_nav.scss
    │   │   │   ├── _reset.scss
    │   │   │   ├── _search.scss
    │   │   │   ├── _slideshow.scss
    │   │   │   ├── _syntax-highlighting.scss
    │   │   │   └── _tables.scss
    │   │   ├── _top-level
    │   │   │   └── support.md
    │   │   ├── blog
    │   │   │   ├── all.html
    │   │   │   └── index.html
    │   │   ├── css
    │   │   │   └── main.scss
    │   │   ├── doc-type-examples
    │   │   │   ├── 2016-04-07-blog-post-example.md
    │   │   │   ├── docs-hello-world.md
    │   │   │   └── top-level-example.md
    │   │   ├── docs
    │   │   │   └── index.html
    │   │   ├── feed.xml
    │   │   ├── index.md
    │   │   └── static
    │   │       ├── favicon.png
    │   │       ├── fonts
    │   │       │   ├── LatoLatin-Black.woff
    │   │       │   ├── LatoLatin-Black.woff2
    │   │       │   ├── LatoLatin-BlackItalic.woff
    │   │       │   ├── LatoLatin-BlackItalic.woff2
    │   │       │   ├── LatoLatin-Italic.woff
    │   │       │   ├── LatoLatin-Italic.woff2
    │   │       │   ├── LatoLatin-Light.woff
    │   │       │   ├── LatoLatin-Light.woff2
    │   │       │   ├── LatoLatin-Regular.woff
    │   │       │   └── LatoLatin-Regular.woff2
    │   │       ├── images
    │   │       │   ├── Resize-of-20140327_200754-300x225.jpg
    │   │       │   ├── binaryseek.png
    │   │       │   ├── compaction
    │   │       │   │   ├── full-range.png
    │   │       │   │   ├── l0-l1-contend.png
    │   │       │   │   ├── l1-l2-contend.png
    │   │       │   │   └── part-range-old.png
    │   │       │   ├── data-block-hash-index
    │   │       │   │   ├── block-format-binary-seek.png
    │   │       │   │   ├── block-format-hash-index.png
    │   │       │   │   ├── hash-index-data-structure.png
    │   │       │   │   ├── perf-cache-miss.png
    │   │       │   │   └── perf-throughput.png
    │   │       │   ├── delrange
    │   │       │   │   ├── delrange_collapsed.png
    │   │       │   │   ├── delrange_key_schema.png
    │   │       │   │   ├── delrange_sst_blocks.png
    │   │       │   │   ├── delrange_uncollapsed.png
    │   │       │   │   └── delrange_write_path.png
    │   │       │   ├── pcache-blockindex.jpg
    │   │       │   ├── pcache-fileindex.jpg
    │   │       │   ├── pcache-filelayout.jpg
    │   │       │   ├── pcache-readiopath.jpg
    │   │       │   ├── pcache-tieredstorage.jpg
    │   │       │   ├── pcache-writeiopath.jpg
    │   │       │   ├── promo-adapt.svg
    │   │       │   ├── promo-flash.svg
    │   │       │   ├── promo-operations.svg
    │   │       │   ├── promo-performance.svg
    │   │       │   ├── rate-limiter
    │   │       │   │   ├── auto-tuned-write-KBps-series.png
    │   │       │   │   ├── write-KBps-cdf.png
    │   │       │   │   └── write-KBps-series.png
    │   │       │   └── tree_example1.png
    │   │       ├── logo.svg
    │   │       └── og_image.png
    │   ├── env
    │   │   ├── env.cc
    │   │   ├── env.cc.d
    │   │   ├── env.o
    │   │   ├── env_basic_test.cc
    │   │   ├── env_basic_test.cc.d
    │   │   ├── env_chroot.cc
    │   │   ├── env_chroot.cc.d
    │   │   ├── env_chroot.h
    │   │   ├── env_chroot.o
    │   │   ├── env_encryption.cc
    │   │   ├── env_encryption.cc.d
    │   │   ├── env_encryption.o
    │   │   ├── env_hdfs.cc
    │   │   ├── env_hdfs.cc.d
    │   │   ├── env_hdfs.o
    │   │   ├── env_posix.cc
    │   │   ├── env_posix.cc.d
    │   │   ├── env_posix.o
    │   │   ├── env_test.cc
    │   │   ├── env_test.cc.d
    │   │   ├── io_posix.cc
    │   │   ├── io_posix.cc.d
    │   │   ├── io_posix.h
    │   │   ├── io_posix.o
    │   │   ├── mock_env.cc
    │   │   ├── mock_env.cc.d
    │   │   ├── mock_env.h
    │   │   ├── mock_env.o
    │   │   ├── mock_env_test.cc
    │   │   └── mock_env_test.cc.d
    │   ├── examples
    │   │   ├── Makefile
    │   │   ├── README.md
    │   │   ├── c_simple_example.c
    │   │   ├── column_families_example.cc
    │   │   ├── compact_files_example.cc
    │   │   ├── compaction_filter_example.cc
    │   │   ├── multi_processes_example.cc
    │   │   ├── optimistic_transaction_example.cc
    │   │   ├── options_file_example.cc
    │   │   ├── rocksdb_option_file_example.ini
    │   │   ├── simple_example.cc
    │   │   └── transaction_example.cc
    │   ├── file
    │   │   ├── delete_scheduler.cc
    │   │   ├── delete_scheduler.cc.d
    │   │   ├── delete_scheduler.h
    │   │   ├── delete_scheduler.o
    │   │   ├── delete_scheduler_test.cc
    │   │   ├── file_util.cc
    │   │   ├── file_util.cc.d
    │   │   ├── file_util.h
    │   │   ├── file_util.o
    │   │   ├── filename.cc
    │   │   ├── filename.cc.d
    │   │   ├── filename.h
    │   │   ├── filename.o
    │   │   ├── sst_file_manager_impl.cc
    │   │   ├── sst_file_manager_impl.cc.d
    │   │   ├── sst_file_manager_impl.h
    │   │   └── sst_file_manager_impl.o
    │   ├── hdfs
    │   │   ├── README
    │   │   ├── env_hdfs.h
    │   │   └── setup.sh
    │   ├── include
    │   │   └── rocksdb
    │   │       ├── advanced_options.h
    │   │       ├── c.h
    │   │       ├── cache.h
    │   │       ├── cleanable.h
    │   │       ├── compaction_filter.h
    │   │       ├── compaction_job_stats.h
    │   │       ├── comparator.h
    │   │       ├── concurrent_task_limiter.h
    │   │       ├── convenience.h
    │   │       ├── db.h
    │   │       ├── db_bench_tool.h
    │   │       ├── db_dump_tool.h
    │   │       ├── env.h
    │   │       ├── env_encryption.h
    │   │       ├── experimental.h
    │   │       ├── filter_policy.h
    │   │       ├── flush_block_policy.h
    │   │       ├── iostats_context.h
    │   │       ├── iterator.h
    │   │       ├── ldb_tool.h
    │   │       ├── listener.h
    │   │       ├── memory_allocator.h
    │   │       ├── memtablerep.h
    │   │       ├── merge_operator.h
    │   │       ├── metadata.h
    │   │       ├── options.h
    │   │       ├── perf_context.h
    │   │       ├── perf_level.h
    │   │       ├── persistent_cache.h
    │   │       ├── rate_limiter.h
    │   │       ├── slice.h
    │   │       ├── slice_transform.h
    │   │       ├── snapshot.h
    │   │       ├── sst_dump_tool.h
    │   │       ├── sst_file_manager.h
    │   │       ├── sst_file_reader.h
    │   │       ├── sst_file_writer.h
    │   │       ├── statistics.h
    │   │       ├── stats_history.h
    │   │       ├── status.h
    │   │       ├── table.h
    │   │       ├── table_properties.h
    │   │       ├── thread_status.h
    │   │       ├── threadpool.h
    │   │       ├── trace_reader_writer.h
    │   │       ├── transaction_log.h
    │   │       ├── types.h
    │   │       ├── universal_compaction.h
    │   │       ├── utilities
    │   │       │   ├── backupable_db.h
    │   │       │   ├── checkpoint.h
    │   │       │   ├── convenience.h
    │   │       │   ├── db_ttl.h
    │   │       │   ├── debug.h
    │   │       │   ├── env_librados.h
    │   │       │   ├── env_mirror.h
    │   │       │   ├── info_log_finder.h
    │   │       │   ├── ldb_cmd.h
    │   │       │   ├── ldb_cmd_execute_result.h
    │   │       │   ├── leveldb_options.h
    │   │       │   ├── lua
    │   │       │   │   ├── rocks_lua_custom_library.h
    │   │       │   │   └── rocks_lua_util.h
    │   │       │   ├── memory_util.h
    │   │       │   ├── object_registry.h
    │   │       │   ├── optimistic_transaction_db.h
    │   │       │   ├── option_change_migration.h
    │   │       │   ├── options_util.h
    │   │       │   ├── sim_cache.h
    │   │       │   ├── stackable_db.h
    │   │       │   ├── table_properties_collectors.h
    │   │       │   ├── transaction.h
    │   │       │   ├── transaction_db.h
    │   │       │   ├── transaction_db_mutex.h
    │   │       │   ├── utility_db.h
    │   │       │   └── write_batch_with_index.h
    │   │       ├── version.h
    │   │       ├── wal_filter.h
    │   │       ├── write_batch.h
    │   │       ├── write_batch_base.h
    │   │       └── write_buffer_manager.h
    │   ├── issue_template.md
    │   ├── java
    │   │   ├── CMakeLists.txt
    │   │   ├── HISTORY-JAVA.md
    │   │   ├── Makefile
    │   │   ├── RELEASE.md
    │   │   ├── benchmark
    │   │   │   └── src
    │   │   │       └── main
    │   │   │           └── java
    │   │   │               └── org
    │   │   │                   └── rocksdb
    │   │   │                       └── benchmark
    │   │   │                           └── DbBenchmark.java
    │   │   ├── crossbuild
    │   │   │   ├── Vagrantfile
    │   │   │   ├── build-linux-centos.sh
    │   │   │   ├── build-linux.sh
    │   │   │   └── docker-build-linux-centos.sh
    │   │   ├── jdb_bench.sh
    │   │   ├── rocksjni
    │   │   │   ├── backupablejni.cc
    │   │   │   ├── backupenginejni.cc
    │   │   │   ├── cassandra_compactionfilterjni.cc
    │   │   │   ├── cassandra_value_operator.cc
    │   │   │   ├── checkpoint.cc
    │   │   │   ├── clock_cache.cc
    │   │   │   ├── columnfamilyhandle.cc
    │   │   │   ├── compact_range_options.cc
    │   │   │   ├── compaction_filter.cc
    │   │   │   ├── compaction_filter_factory.cc
    │   │   │   ├── compaction_filter_factory_jnicallback.cc
    │   │   │   ├── compaction_filter_factory_jnicallback.h
    │   │   │   ├── compaction_job_info.cc
    │   │   │   ├── compaction_job_stats.cc
    │   │   │   ├── compaction_options.cc
    │   │   │   ├── compaction_options_fifo.cc
    │   │   │   ├── compaction_options_universal.cc
    │   │   │   ├── comparator.cc
    │   │   │   ├── comparatorjnicallback.cc
    │   │   │   ├── comparatorjnicallback.h
    │   │   │   ├── compression_options.cc
    │   │   │   ├── env.cc
    │   │   │   ├── env_options.cc
    │   │   │   ├── filter.cc
    │   │   │   ├── ingest_external_file_options.cc
    │   │   │   ├── iterator.cc
    │   │   │   ├── jnicallback.cc
    │   │   │   ├── jnicallback.h
    │   │   │   ├── loggerjnicallback.cc
    │   │   │   ├── loggerjnicallback.h
    │   │   │   ├── lru_cache.cc
    │   │   │   ├── memory_util.cc
    │   │   │   ├── memtablejni.cc
    │   │   │   ├── merge_operator.cc
    │   │   │   ├── native_comparator_wrapper_test.cc
    │   │   │   ├── optimistic_transaction_db.cc
    │   │   │   ├── optimistic_transaction_options.cc
    │   │   │   ├── options.cc
    │   │   │   ├── options_util.cc
    │   │   │   ├── persistent_cache.cc
    │   │   │   ├── portal.h
    │   │   │   ├── ratelimiterjni.cc
    │   │   │   ├── remove_emptyvalue_compactionfilterjni.cc
    │   │   │   ├── restorejni.cc
    │   │   │   ├── rocks_callback_object.cc
    │   │   │   ├── rocksdb_exception_test.cc
    │   │   │   ├── rocksjni.cc
    │   │   │   ├── slice.cc
    │   │   │   ├── snapshot.cc
    │   │   │   ├── sst_file_manager.cc
    │   │   │   ├── sst_file_writerjni.cc
    │   │   │   ├── statistics.cc
    │   │   │   ├── statisticsjni.cc
    │   │   │   ├── statisticsjni.h
    │   │   │   ├── table.cc
    │   │   │   ├── table_filter.cc
    │   │   │   ├── table_filter_jnicallback.cc
    │   │   │   ├── table_filter_jnicallback.h
    │   │   │   ├── thread_status.cc
    │   │   │   ├── trace_writer.cc
    │   │   │   ├── trace_writer_jnicallback.cc
    │   │   │   ├── trace_writer_jnicallback.h
    │   │   │   ├── transaction.cc
    │   │   │   ├── transaction_db.cc
    │   │   │   ├── transaction_db_options.cc
    │   │   │   ├── transaction_log.cc
    │   │   │   ├── transaction_notifier.cc
    │   │   │   ├── transaction_notifier_jnicallback.cc
    │   │   │   ├── transaction_notifier_jnicallback.h
    │   │   │   ├── transaction_options.cc
    │   │   │   ├── ttl.cc
    │   │   │   ├── wal_filter.cc
    │   │   │   ├── wal_filter_jnicallback.cc
    │   │   │   ├── wal_filter_jnicallback.h
    │   │   │   ├── write_batch.cc
    │   │   │   ├── write_batch_test.cc
    │   │   │   ├── write_batch_with_index.cc
    │   │   │   ├── write_buffer_manager.cc
    │   │   │   ├── writebatchhandlerjnicallback.cc
    │   │   │   └── writebatchhandlerjnicallback.h
    │   │   ├── rocksjni.pom
    │   │   ├── samples
    │   │   │   └── src
    │   │   │       └── main
    │   │   │           └── java
    │   │   │               ├── OptimisticTransactionSample.java
    │   │   │               ├── RocksDBColumnFamilySample.java
    │   │   │               ├── RocksDBSample.java
    │   │   │               └── TransactionSample.java
    │   │   └── src
    │   │       ├── main
    │   │       │   └── java
    │   │       │       └── org
    │   │       │           └── rocksdb
    │   │       │               ├── AbstractCompactionFilter.java
    │   │       │               ├── AbstractCompactionFilterFactory.java
    │   │       │               ├── AbstractComparator.java
    │   │       │               ├── AbstractImmutableNativeReference.java
    │   │       │               ├── AbstractMutableOptions.java
    │   │       │               ├── AbstractNativeReference.java
    │   │       │               ├── AbstractRocksIterator.java
    │   │       │               ├── AbstractSlice.java
    │   │       │               ├── AbstractTableFilter.java
    │   │       │               ├── AbstractTraceWriter.java
    │   │       │               ├── AbstractTransactionNotifier.java
    │   │       │               ├── AbstractWalFilter.java
    │   │       │               ├── AbstractWriteBatch.java
    │   │       │               ├── AccessHint.java
    │   │       │               ├── AdvancedColumnFamilyOptionsInterface.java
    │   │       │               ├── AdvancedMutableColumnFamilyOptionsInterface.java
    │   │       │               ├── BackupEngine.java
    │   │       │               ├── BackupInfo.java
    │   │       │               ├── BackupableDBOptions.java
    │   │       │               ├── BlockBasedTableConfig.java
    │   │       │               ├── BloomFilter.java
    │   │       │               ├── BuiltinComparator.java
    │   │       │               ├── Cache.java
    │   │       │               ├── CassandraCompactionFilter.java
    │   │       │               ├── CassandraValueMergeOperator.java
    │   │       │               ├── Checkpoint.java
    │   │       │               ├── ChecksumType.java
    │   │       │               ├── ClockCache.java
    │   │       │               ├── ColumnFamilyDescriptor.java
    │   │       │               ├── ColumnFamilyHandle.java
    │   │       │               ├── ColumnFamilyMetaData.java
    │   │       │               ├── ColumnFamilyOptions.java
    │   │       │               ├── ColumnFamilyOptionsInterface.java
    │   │       │               ├── CompactRangeOptions.java
    │   │       │               ├── CompactionJobInfo.java
    │   │       │               ├── CompactionJobStats.java
    │   │       │               ├── CompactionOptions.java
    │   │       │               ├── CompactionOptionsFIFO.java
    │   │       │               ├── CompactionOptionsUniversal.java
    │   │       │               ├── CompactionPriority.java
    │   │       │               ├── CompactionReason.java
    │   │       │               ├── CompactionStopStyle.java
    │   │       │               ├── CompactionStyle.java
    │   │       │               ├── Comparator.java
    │   │       │               ├── ComparatorOptions.java
    │   │       │               ├── ComparatorType.java
    │   │       │               ├── CompressionOptions.java
    │   │       │               ├── CompressionType.java
    │   │       │               ├── DBOptions.java
    │   │       │               ├── DBOptionsInterface.java
    │   │       │               ├── DataBlockIndexType.java
    │   │       │               ├── DbPath.java
    │   │       │               ├── DirectComparator.java
    │   │       │               ├── DirectSlice.java
    │   │       │               ├── EncodingType.java
    │   │       │               ├── Env.java
    │   │       │               ├── EnvOptions.java
    │   │       │               ├── Experimental.java
    │   │       │               ├── Filter.java
    │   │       │               ├── FlushOptions.java
    │   │       │               ├── HashLinkedListMemTableConfig.java
    │   │       │               ├── HashSkipListMemTableConfig.java
    │   │       │               ├── HdfsEnv.java
    │   │       │               ├── HistogramData.java
    │   │       │               ├── HistogramType.java
    │   │       │               ├── IndexType.java
    │   │       │               ├── InfoLogLevel.java
    │   │       │               ├── IngestExternalFileOptions.java
    │   │       │               ├── LRUCache.java
    │   │       │               ├── LevelMetaData.java
    │   │       │               ├── LiveFileMetaData.java
    │   │       │               ├── LogFile.java
    │   │       │               ├── Logger.java
    │   │       │               ├── MemTableConfig.java
    │   │       │               ├── MemoryUsageType.java
    │   │       │               ├── MemoryUtil.java
    │   │       │               ├── MergeOperator.java
    │   │       │               ├── MutableColumnFamilyOptions.java
    │   │       │               ├── MutableColumnFamilyOptionsInterface.java
    │   │       │               ├── MutableDBOptions.java
    │   │       │               ├── MutableDBOptionsInterface.java
    │   │       │               ├── MutableOptionKey.java
    │   │       │               ├── MutableOptionValue.java
    │   │       │               ├── NativeComparatorWrapper.java
    │   │       │               ├── NativeLibraryLoader.java
    │   │       │               ├── OperationStage.java
    │   │       │               ├── OperationType.java
    │   │       │               ├── OptimisticTransactionDB.java
    │   │       │               ├── OptimisticTransactionOptions.java
    │   │       │               ├── Options.java
    │   │       │               ├── OptionsUtil.java
    │   │       │               ├── PersistentCache.java
    │   │       │               ├── PlainTableConfig.java
    │   │       │               ├── Priority.java
    │   │       │               ├── Range.java
    │   │       │               ├── RateLimiter.java
    │   │       │               ├── RateLimiterMode.java
    │   │       │               ├── ReadOptions.java
    │   │       │               ├── ReadTier.java
    │   │       │               ├── RemoveEmptyValueCompactionFilter.java
    │   │       │               ├── RestoreOptions.java
    │   │       │               ├── RocksCallbackObject.java
    │   │       │               ├── RocksDB.java
    │   │       │               ├── RocksDBException.java
    │   │       │               ├── RocksEnv.java
    │   │       │               ├── RocksIterator.java
    │   │       │               ├── RocksIteratorInterface.java
    │   │       │               ├── RocksMemEnv.java
    │   │       │               ├── RocksMutableObject.java
    │   │       │               ├── RocksObject.java
    │   │       │               ├── SizeApproximationFlag.java
    │   │       │               ├── SkipListMemTableConfig.java
    │   │       │               ├── Slice.java
    │   │       │               ├── Snapshot.java
    │   │       │               ├── SstFileManager.java
    │   │       │               ├── SstFileMetaData.java
    │   │       │               ├── SstFileWriter.java
    │   │       │               ├── StateType.java
    │   │       │               ├── Statistics.java
    │   │       │               ├── StatisticsCollector.java
    │   │       │               ├── StatisticsCollectorCallback.java
    │   │       │               ├── StatsCollectorInput.java
    │   │       │               ├── StatsLevel.java
    │   │       │               ├── Status.java
    │   │       │               ├── StringAppendOperator.java
    │   │       │               ├── TableFilter.java
    │   │       │               ├── TableFormatConfig.java
    │   │       │               ├── TableProperties.java
    │   │       │               ├── ThreadStatus.java
    │   │       │               ├── ThreadType.java
    │   │       │               ├── TickerType.java
    │   │       │               ├── TimedEnv.java
    │   │       │               ├── TraceOptions.java
    │   │       │               ├── TraceWriter.java
    │   │       │               ├── Transaction.java
    │   │       │               ├── TransactionDB.java
    │   │       │               ├── TransactionDBOptions.java
    │   │       │               ├── TransactionLogIterator.java
    │   │       │               ├── TransactionOptions.java
    │   │       │               ├── TransactionalDB.java
    │   │       │               ├── TransactionalOptions.java
    │   │       │               ├── TtlDB.java
    │   │       │               ├── TxnDBWritePolicy.java
    │   │       │               ├── UInt64AddOperator.java
    │   │       │               ├── VectorMemTableConfig.java
    │   │       │               ├── WALRecoveryMode.java
    │   │       │               ├── WBWIRocksIterator.java
    │   │       │               ├── WalFileType.java
    │   │       │               ├── WalFilter.java
    │   │       │               ├── WalProcessingOption.java
    │   │       │               ├── WriteBatch.java
    │   │       │               ├── WriteBatchInterface.java
    │   │       │               ├── WriteBatchWithIndex.java
    │   │       │               ├── WriteBufferManager.java
    │   │       │               ├── WriteOptions.java
    │   │       │               └── util
    │   │       │                   ├── BytewiseComparator.java
    │   │       │                   ├── DirectBytewiseComparator.java
    │   │       │                   ├── Environment.java
    │   │       │                   ├── ReverseBytewiseComparator.java
    │   │       │                   └── SizeUnit.java
    │   │       └── test
    │   │           └── java
    │   │               └── org
    │   │                   └── rocksdb
    │   │                       ├── AbstractComparatorTest.java
    │   │                       ├── AbstractTransactionTest.java
    │   │                       ├── BackupEngineTest.java
    │   │                       ├── BackupableDBOptionsTest.java
    │   │                       ├── BlockBasedTableConfigTest.java
    │   │                       ├── CheckPointTest.java
    │   │                       ├── ClockCacheTest.java
    │   │                       ├── ColumnFamilyOptionsTest.java
    │   │                       ├── ColumnFamilyTest.java
    │   │                       ├── CompactRangeOptionsTest.java
    │   │                       ├── CompactionFilterFactoryTest.java
    │   │                       ├── CompactionJobInfoTest.java
    │   │                       ├── CompactionJobStatsTest.java
    │   │                       ├── CompactionOptionsFIFOTest.java
    │   │                       ├── CompactionOptionsTest.java
    │   │                       ├── CompactionOptionsUniversalTest.java
    │   │                       ├── CompactionPriorityTest.java
    │   │                       ├── CompactionStopStyleTest.java
    │   │                       ├── ComparatorOptionsTest.java
    │   │                       ├── ComparatorTest.java
    │   │                       ├── CompressionOptionsTest.java
    │   │                       ├── CompressionTypesTest.java
    │   │                       ├── DBOptionsTest.java
    │   │                       ├── DefaultEnvTest.java
    │   │                       ├── DirectComparatorTest.java
    │   │                       ├── DirectSliceTest.java
    │   │                       ├── EnvOptionsTest.java
    │   │                       ├── FilterTest.java
    │   │                       ├── FlushOptionsTest.java
    │   │                       ├── FlushTest.java
    │   │                       ├── HdfsEnvTest.java
    │   │                       ├── InfoLogLevelTest.java
    │   │                       ├── IngestExternalFileOptionsTest.java
    │   │                       ├── KeyMayExistTest.java
    │   │                       ├── LRUCacheTest.java
    │   │                       ├── LoggerTest.java
    │   │                       ├── MemTableTest.java
    │   │                       ├── MemoryUtilTest.java
    │   │                       ├── MergeTest.java
    │   │                       ├── MixedOptionsTest.java
    │   │                       ├── MutableColumnFamilyOptionsTest.java
    │   │                       ├── MutableDBOptionsTest.java
    │   │                       ├── NativeComparatorWrapperTest.java
    │   │                       ├── NativeLibraryLoaderTest.java
    │   │                       ├── OptimisticTransactionDBTest.java
    │   │                       ├── OptimisticTransactionOptionsTest.java
    │   │                       ├── OptimisticTransactionTest.java
    │   │                       ├── OptionsTest.java
    │   │                       ├── OptionsUtilTest.java
    │   │                       ├── PlainTableConfigTest.java
    │   │                       ├── PlatformRandomHelper.java
    │   │                       ├── RateLimiterTest.java
    │   │                       ├── ReadOnlyTest.java
    │   │                       ├── ReadOptionsTest.java
    │   │                       ├── RocksDBExceptionTest.java
    │   │                       ├── RocksDBTest.java
    │   │                       ├── RocksIteratorTest.java
    │   │                       ├── RocksMemEnvTest.java
    │   │                       ├── RocksMemoryResource.java
    │   │                       ├── SliceTest.java
    │   │                       ├── SnapshotTest.java
    │   │                       ├── SstFileManagerTest.java
    │   │                       ├── SstFileWriterTest.java
    │   │                       ├── StatisticsCollectorTest.java
    │   │                       ├── StatisticsTest.java
    │   │                       ├── StatsCallbackMock.java
    │   │                       ├── TableFilterTest.java
    │   │                       ├── TimedEnvTest.java
    │   │                       ├── TransactionDBOptionsTest.java
    │   │                       ├── TransactionDBTest.java
    │   │                       ├── TransactionLogIteratorTest.java
    │   │                       ├── TransactionOptionsTest.java
    │   │                       ├── TransactionTest.java
    │   │                       ├── TtlDBTest.java
    │   │                       ├── Types.java
    │   │                       ├── WALRecoveryModeTest.java
    │   │                       ├── WalFilterTest.java
    │   │                       ├── WriteBatchHandlerTest.java
    │   │                       ├── WriteBatchTest.java
    │   │                       ├── WriteBatchThreadedTest.java
    │   │                       ├── WriteBatchWithIndexTest.java
    │   │                       ├── WriteOptionsTest.java
    │   │                       ├── test
    │   │                       │   ├── RemoveEmptyValueCompactionFilterFactory.java
    │   │                       │   └── RocksJunitRunner.java
    │   │                       └── util
    │   │                           ├── BytewiseComparatorTest.java
    │   │                           ├── CapturingWriteBatchHandler.java
    │   │                           ├── EnvironmentTest.java
    │   │                           ├── SizeUnitTest.java
    │   │                           ├── TestUtil.java
    │   │                           └── WriteBatchGetter.java
    │   ├── librocksdb.a
    │   ├── logging
    │   │   ├── auto_roll_logger.cc
    │   │   ├── auto_roll_logger.cc.d
    │   │   ├── auto_roll_logger.h
    │   │   ├── auto_roll_logger.o
    │   │   ├── auto_roll_logger_test.cc
    │   │   ├── auto_roll_logger_test.cc.d
    │   │   ├── event_logger.cc
    │   │   ├── event_logger.cc.d
    │   │   ├── event_logger.h
    │   │   ├── event_logger.o
    │   │   ├── event_logger_test.cc
    │   │   ├── event_logger_test.cc.d
    │   │   ├── log_buffer.cc
    │   │   ├── log_buffer.cc.d
    │   │   ├── log_buffer.h
    │   │   ├── log_buffer.o
    │   │   ├── logging.h
    │   │   └── posix_logger.h
    │   ├── make_config.mk
    │   ├── memory
    │   │   ├── allocator.h
    │   │   ├── arena.cc
    │   │   ├── arena.cc.d
    │   │   ├── arena.h
    │   │   ├── arena.o
    │   │   ├── arena_test.cc
    │   │   ├── arena_test.cc.d
    │   │   ├── concurrent_arena.cc
    │   │   ├── concurrent_arena.cc.d
    │   │   ├── concurrent_arena.h
    │   │   ├── concurrent_arena.o
    │   │   ├── jemalloc_nodump_allocator.cc
    │   │   ├── jemalloc_nodump_allocator.cc.d
    │   │   ├── jemalloc_nodump_allocator.h
    │   │   ├── jemalloc_nodump_allocator.o
    │   │   ├── memory_allocator.h
    │   │   └── memory_usage.h
    │   ├── memtable
    │   │   ├── alloc_tracker.cc
    │   │   ├── alloc_tracker.cc.d
    │   │   ├── alloc_tracker.o
    │   │   ├── hash_linklist_rep.cc
    │   │   ├── hash_linklist_rep.cc.d
    │   │   ├── hash_linklist_rep.h
    │   │   ├── hash_linklist_rep.o
    │   │   ├── hash_skiplist_rep.cc
    │   │   ├── hash_skiplist_rep.cc.d
    │   │   ├── hash_skiplist_rep.h
    │   │   ├── hash_skiplist_rep.o
    │   │   ├── inlineskiplist.h
    │   │   ├── inlineskiplist_test.cc
    │   │   ├── inlineskiplist_test.cc.d
    │   │   ├── memtablerep_bench.cc
    │   │   ├── memtablerep_bench.cc.d
    │   │   ├── skiplist.h
    │   │   ├── skiplist_test.cc
    │   │   ├── skiplist_test.cc.d
    │   │   ├── skiplistrep.cc
    │   │   ├── skiplistrep.cc.d
    │   │   ├── skiplistrep.o
    │   │   ├── stl_wrappers.h
    │   │   ├── vectorrep.cc
    │   │   ├── vectorrep.cc.d
    │   │   ├── vectorrep.o
    │   │   ├── write_buffer_manager.cc
    │   │   ├── write_buffer_manager.cc.d
    │   │   ├── write_buffer_manager.o
    │   │   ├── write_buffer_manager_test.cc
    │   │   └── write_buffer_manager_test.cc.d
    │   ├── monitoring
    │   │   ├── file_read_sample.h
    │   │   ├── histogram.cc
    │   │   ├── histogram.cc.d
    │   │   ├── histogram.h
    │   │   ├── histogram.o
    │   │   ├── histogram_test.cc
    │   │   ├── histogram_test.cc.d
    │   │   ├── histogram_windowing.cc
    │   │   ├── histogram_windowing.cc.d
    │   │   ├── histogram_windowing.h
    │   │   ├── histogram_windowing.o
    │   │   ├── in_memory_stats_history.cc
    │   │   ├── in_memory_stats_history.cc.d
    │   │   ├── in_memory_stats_history.h
    │   │   ├── in_memory_stats_history.o
    │   │   ├── instrumented_mutex.cc
    │   │   ├── instrumented_mutex.cc.d
    │   │   ├── instrumented_mutex.h
    │   │   ├── instrumented_mutex.o
    │   │   ├── iostats_context.cc
    │   │   ├── iostats_context.cc.d
    │   │   ├── iostats_context.o
    │   │   ├── iostats_context_imp.h
    │   │   ├── iostats_context_test.cc
    │   │   ├── iostats_context_test.cc.d
    │   │   ├── perf_context.cc
    │   │   ├── perf_context.cc.d
    │   │   ├── perf_context.o
    │   │   ├── perf_context_imp.h
    │   │   ├── perf_level.cc
    │   │   ├── perf_level.cc.d
    │   │   ├── perf_level.o
    │   │   ├── perf_level_imp.h
    │   │   ├── perf_step_timer.h
    │   │   ├── persistent_stats_history.cc
    │   │   ├── persistent_stats_history.cc.d
    │   │   ├── persistent_stats_history.h
    │   │   ├── persistent_stats_history.o
    │   │   ├── statistics.cc
    │   │   ├── statistics.cc.d
    │   │   ├── statistics.h
    │   │   ├── statistics.o
    │   │   ├── statistics_test.cc
    │   │   ├── statistics_test.cc.d
    │   │   ├── stats_history_test.cc
    │   │   ├── stats_history_test.cc.d
    │   │   ├── thread_status_impl.cc
    │   │   ├── thread_status_impl.cc.d
    │   │   ├── thread_status_impl.o
    │   │   ├── thread_status_updater.cc
    │   │   ├── thread_status_updater.cc.d
    │   │   ├── thread_status_updater.h
    │   │   ├── thread_status_updater.o
    │   │   ├── thread_status_updater_debug.cc
    │   │   ├── thread_status_updater_debug.cc.d
    │   │   ├── thread_status_updater_debug.o
    │   │   ├── thread_status_util.cc
    │   │   ├── thread_status_util.cc.d
    │   │   ├── thread_status_util.h
    │   │   ├── thread_status_util.o
    │   │   ├── thread_status_util_debug.cc
    │   │   ├── thread_status_util_debug.cc.d
    │   │   └── thread_status_util_debug.o
    │   ├── options
    │   │   ├── cf_options.cc
    │   │   ├── cf_options.cc.d
    │   │   ├── cf_options.h
    │   │   ├── cf_options.o
    │   │   ├── db_options.cc
    │   │   ├── db_options.cc.d
    │   │   ├── db_options.h
    │   │   ├── db_options.o
    │   │   ├── options.cc
    │   │   ├── options.cc.d
    │   │   ├── options.o
    │   │   ├── options_helper.cc
    │   │   ├── options_helper.cc.d
    │   │   ├── options_helper.h
    │   │   ├── options_helper.o
    │   │   ├── options_parser.cc
    │   │   ├── options_parser.cc.d
    │   │   ├── options_parser.h
    │   │   ├── options_parser.o
    │   │   ├── options_sanity_check.cc
    │   │   ├── options_sanity_check.cc.d
    │   │   ├── options_sanity_check.h
    │   │   ├── options_sanity_check.o
    │   │   ├── options_settable_test.cc
    │   │   ├── options_test.cc
    │   │   └── options_test.cc.d
    │   ├── port
    │   │   ├── README
    │   │   ├── jemalloc_helper.h
    │   │   ├── likely.h
    │   │   ├── port.h
    │   │   ├── port_dirent.h
    │   │   ├── port_example.h
    │   │   ├── port_posix.cc
    │   │   ├── port_posix.cc.d
    │   │   ├── port_posix.h
    │   │   ├── port_posix.o
    │   │   ├── stack_trace.cc
    │   │   ├── stack_trace.cc.d
    │   │   ├── stack_trace.h
    │   │   ├── stack_trace.o
    │   │   ├── sys_time.h
    │   │   ├── util_logger.h
    │   │   ├── win
    │   │   │   ├── env_default.cc
    │   │   │   ├── env_win.cc
    │   │   │   ├── env_win.h
    │   │   │   ├── io_win.cc
    │   │   │   ├── io_win.h
    │   │   │   ├── port_win.cc
    │   │   │   ├── port_win.h
    │   │   │   ├── win_jemalloc.cc
    │   │   │   ├── win_logger.cc
    │   │   │   ├── win_logger.h
    │   │   │   ├── win_thread.cc
    │   │   │   ├── win_thread.h
    │   │   │   ├── xpress_win.cc
    │   │   │   └── xpress_win.h
    │   │   └── xpress.h
    │   ├── src.mk
    │   ├── table
    │   │   ├── adaptive
    │   │   │   ├── adaptive_table_factory.cc
    │   │   │   ├── adaptive_table_factory.cc.d
    │   │   │   ├── adaptive_table_factory.h
    │   │   │   └── adaptive_table_factory.o
    │   │   ├── block_based
    │   │   │   ├── block.cc
    │   │   │   ├── block.cc.d
    │   │   │   ├── block.h
    │   │   │   ├── block.o
    │   │   │   ├── block_based_filter_block.cc
    │   │   │   ├── block_based_filter_block.cc.d
    │   │   │   ├── block_based_filter_block.h
    │   │   │   ├── block_based_filter_block.o
    │   │   │   ├── block_based_filter_block_test.cc
    │   │   │   ├── block_based_filter_block_test.cc.d
    │   │   │   ├── block_based_table_builder.cc
    │   │   │   ├── block_based_table_builder.cc.d
    │   │   │   ├── block_based_table_builder.h
    │   │   │   ├── block_based_table_builder.o
    │   │   │   ├── block_based_table_factory.cc
    │   │   │   ├── block_based_table_factory.cc.d
    │   │   │   ├── block_based_table_factory.h
    │   │   │   ├── block_based_table_factory.o
    │   │   │   ├── block_based_table_reader.cc
    │   │   │   ├── block_based_table_reader.cc.d
    │   │   │   ├── block_based_table_reader.h
    │   │   │   ├── block_based_table_reader.o
    │   │   │   ├── block_builder.cc
    │   │   │   ├── block_builder.cc.d
    │   │   │   ├── block_builder.h
    │   │   │   ├── block_builder.o
    │   │   │   ├── block_prefix_index.cc
    │   │   │   ├── block_prefix_index.cc.d
    │   │   │   ├── block_prefix_index.h
    │   │   │   ├── block_prefix_index.o
    │   │   │   ├── block_test.cc
    │   │   │   ├── block_test.cc.d
    │   │   │   ├── block_type.h
    │   │   │   ├── cachable_entry.h
    │   │   │   ├── data_block_footer.cc
    │   │   │   ├── data_block_footer.cc.d
    │   │   │   ├── data_block_footer.h
    │   │   │   ├── data_block_footer.o
    │   │   │   ├── data_block_hash_index.cc
    │   │   │   ├── data_block_hash_index.cc.d
    │   │   │   ├── data_block_hash_index.h
    │   │   │   ├── data_block_hash_index.o
    │   │   │   ├── data_block_hash_index_test.cc
    │   │   │   ├── data_block_hash_index_test.cc.d
    │   │   │   ├── filter_block.h
    │   │   │   ├── flush_block_policy.cc
    │   │   │   ├── flush_block_policy.cc.d
    │   │   │   ├── flush_block_policy.h
    │   │   │   ├── flush_block_policy.o
    │   │   │   ├── full_filter_block.cc
    │   │   │   ├── full_filter_block.cc.d
    │   │   │   ├── full_filter_block.h
    │   │   │   ├── full_filter_block.o
    │   │   │   ├── full_filter_block_test.cc
    │   │   │   ├── full_filter_block_test.cc.d
    │   │   │   ├── index_builder.cc
    │   │   │   ├── index_builder.cc.d
    │   │   │   ├── index_builder.h
    │   │   │   ├── index_builder.o
    │   │   │   ├── partitioned_filter_block.cc
    │   │   │   ├── partitioned_filter_block.cc.d
    │   │   │   ├── partitioned_filter_block.h
    │   │   │   ├── partitioned_filter_block.o
    │   │   │   ├── partitioned_filter_block_test.cc
    │   │   │   └── partitioned_filter_block_test.cc.d
    │   │   ├── block_fetcher.cc
    │   │   ├── block_fetcher.cc.d
    │   │   ├── block_fetcher.h
    │   │   ├── block_fetcher.o
    │   │   ├── bloom_block.cc
    │   │   ├── bloom_block.cc.d
    │   │   ├── bloom_block.h
    │   │   ├── bloom_block.o
    │   │   ├── cleanable_test.cc
    │   │   ├── cleanable_test.cc.d
    │   │   ├── cuckoo
    │   │   │   ├── cuckoo_table_builder.cc
    │   │   │   ├── cuckoo_table_builder.cc.d
    │   │   │   ├── cuckoo_table_builder.h
    │   │   │   ├── cuckoo_table_builder.o
    │   │   │   ├── cuckoo_table_builder_test.cc
    │   │   │   ├── cuckoo_table_builder_test.cc.d
    │   │   │   ├── cuckoo_table_factory.cc
    │   │   │   ├── cuckoo_table_factory.cc.d
    │   │   │   ├── cuckoo_table_factory.h
    │   │   │   ├── cuckoo_table_factory.o
    │   │   │   ├── cuckoo_table_reader.cc
    │   │   │   ├── cuckoo_table_reader.cc.d
    │   │   │   ├── cuckoo_table_reader.h
    │   │   │   ├── cuckoo_table_reader.o
    │   │   │   ├── cuckoo_table_reader_test.cc
    │   │   │   └── cuckoo_table_reader_test.cc.d
    │   │   ├── format.cc
    │   │   ├── format.cc.d
    │   │   ├── format.h
    │   │   ├── format.o
    │   │   ├── full_filter_bits_builder.h
    │   │   ├── get_context.cc
    │   │   ├── get_context.cc.d
    │   │   ├── get_context.h
    │   │   ├── get_context.o
    │   │   ├── internal_iterator.h
    │   │   ├── iter_heap.h
    │   │   ├── iterator.cc
    │   │   ├── iterator.cc.d
    │   │   ├── iterator.o
    │   │   ├── iterator_wrapper.h
    │   │   ├── merger_test.cc
    │   │   ├── merger_test.cc.d
    │   │   ├── merging_iterator.cc
    │   │   ├── merging_iterator.cc.d
    │   │   ├── merging_iterator.h
    │   │   ├── merging_iterator.o
    │   │   ├── meta_blocks.cc
    │   │   ├── meta_blocks.cc.d
    │   │   ├── meta_blocks.h
    │   │   ├── meta_blocks.o
    │   │   ├── mock_table.cc
    │   │   ├── mock_table.cc.d
    │   │   ├── mock_table.h
    │   │   ├── multiget_context.h
    │   │   ├── persistent_cache_helper.cc
    │   │   ├── persistent_cache_helper.cc.d
    │   │   ├── persistent_cache_helper.h
    │   │   ├── persistent_cache_helper.o
    │   │   ├── persistent_cache_options.h
    │   │   ├── plain
    │   │   │   ├── plain_table_builder.cc
    │   │   │   ├── plain_table_builder.cc.d
    │   │   │   ├── plain_table_builder.h
    │   │   │   ├── plain_table_builder.o
    │   │   │   ├── plain_table_factory.cc
    │   │   │   ├── plain_table_factory.cc.d
    │   │   │   ├── plain_table_factory.h
    │   │   │   ├── plain_table_factory.o
    │   │   │   ├── plain_table_index.cc
    │   │   │   ├── plain_table_index.cc.d
    │   │   │   ├── plain_table_index.h
    │   │   │   ├── plain_table_index.o
    │   │   │   ├── plain_table_key_coding.cc
    │   │   │   ├── plain_table_key_coding.cc.d
    │   │   │   ├── plain_table_key_coding.h
    │   │   │   ├── plain_table_key_coding.o
    │   │   │   ├── plain_table_reader.cc
    │   │   │   ├── plain_table_reader.cc.d
    │   │   │   ├── plain_table_reader.h
    │   │   │   └── plain_table_reader.o
    │   │   ├── scoped_arena_iterator.h
    │   │   ├── sst_file_reader.cc
    │   │   ├── sst_file_reader.cc.d
    │   │   ├── sst_file_reader.o
    │   │   ├── sst_file_reader_test.cc
    │   │   ├── sst_file_reader_test.cc.d
    │   │   ├── sst_file_writer.cc
    │   │   ├── sst_file_writer.cc.d
    │   │   ├── sst_file_writer.o
    │   │   ├── sst_file_writer_collectors.h
    │   │   ├── table_builder.h
    │   │   ├── table_properties.cc
    │   │   ├── table_properties.cc.d
    │   │   ├── table_properties.o
    │   │   ├── table_properties_internal.h
    │   │   ├── table_reader.h
    │   │   ├── table_reader_bench.cc
    │   │   ├── table_reader_bench.cc.d
    │   │   ├── table_reader_caller.h
    │   │   ├── table_test.cc
    │   │   ├── table_test.cc.d
    │   │   ├── two_level_iterator.cc
    │   │   ├── two_level_iterator.cc.d
    │   │   ├── two_level_iterator.h
    │   │   └── two_level_iterator.o
    │   ├── test_util
    │   │   ├── fault_injection_test_env.cc
    │   │   ├── fault_injection_test_env.cc.d
    │   │   ├── fault_injection_test_env.h
    │   │   ├── mock_time_env.h
    │   │   ├── sync_point.cc
    │   │   ├── sync_point.cc.d
    │   │   ├── sync_point.h
    │   │   ├── sync_point.o
    │   │   ├── sync_point_impl.cc
    │   │   ├── sync_point_impl.cc.d
    │   │   ├── sync_point_impl.h
    │   │   ├── sync_point_impl.o
    │   │   ├── testharness.cc
    │   │   ├── testharness.cc.d
    │   │   ├── testharness.h
    │   │   ├── testutil.cc
    │   │   ├── testutil.cc.d
    │   │   ├── testutil.h
    │   │   ├── transaction_test_util.cc
    │   │   ├── transaction_test_util.cc.d
    │   │   ├── transaction_test_util.h
    │   │   └── transaction_test_util.o
    │   ├── third-party
    │   │   └── gtest-1.7.0
    │   │       └── fused-src
    │   │           └── gtest
    │   │               ├── CMakeLists.txt
    │   │               ├── gtest-all.cc
    │   │               ├── gtest-all.cc.d
    │   │               └── gtest.h
    │   ├── thirdparty.inc
    │   ├── tools
    │   │   ├── CMakeLists.txt
    │   │   ├── Dockerfile
    │   │   ├── advisor
    │   │   │   ├── README.md
    │   │   │   ├── advisor
    │   │   │   │   ├── __init__.py
    │   │   │   │   ├── bench_runner.py
    │   │   │   │   ├── config_optimizer_example.py
    │   │   │   │   ├── db_bench_runner.py
    │   │   │   │   ├── db_config_optimizer.py
    │   │   │   │   ├── db_log_parser.py
    │   │   │   │   ├── db_options_parser.py
    │   │   │   │   ├── db_stats_fetcher.py
    │   │   │   │   ├── db_timeseries_parser.py
    │   │   │   │   ├── ini_parser.py
    │   │   │   │   ├── rule_parser.py
    │   │   │   │   ├── rule_parser_example.py
    │   │   │   │   └── rules.ini
    │   │   │   └── test
    │   │   │       ├── __init__.py
    │   │   │       ├── input_files
    │   │   │       │   ├── LOG-0
    │   │   │       │   ├── LOG-1
    │   │   │       │   ├── OPTIONS-000005
    │   │   │       │   ├── log_stats_parser_keys_ts
    │   │   │       │   ├── rules_err1.ini
    │   │   │       │   ├── rules_err2.ini
    │   │   │       │   ├── rules_err3.ini
    │   │   │       │   ├── rules_err4.ini
    │   │   │       │   ├── test_rules.ini
    │   │   │       │   └── triggered_rules.ini
    │   │   │       ├── test_db_bench_runner.py
    │   │   │       ├── test_db_log_parser.py
    │   │   │       ├── test_db_options_parser.py
    │   │   │       ├── test_db_stats_fetcher.py
    │   │   │       └── test_rule_parser.py
    │   │   ├── analyze_txn_stress_test.sh
    │   │   ├── auto_sanity_test.sh
    │   │   ├── benchmark.sh
    │   │   ├── benchmark_leveldb.sh
    │   │   ├── blob_dump.cc
    │   │   ├── block_cache_trace_analyzer.cc
    │   │   ├── block_cache_trace_analyzer.cc.d
    │   │   ├── block_cache_trace_analyzer.h
    │   │   ├── block_cache_trace_analyzer_test.cc
    │   │   ├── block_cache_trace_analyzer_test.cc.d
    │   │   ├── block_cache_trace_analyzer_tool.cc
    │   │   ├── block_cache_trace_analyzer_tool.cc.d
    │   │   ├── check_format_compatible.sh
    │   │   ├── db_bench.cc
    │   │   ├── db_bench.cc.d
    │   │   ├── db_bench_tool.cc
    │   │   ├── db_bench_tool.cc.d
    │   │   ├── db_bench_tool_test.cc
    │   │   ├── db_bench_tool_test.cc.d
    │   │   ├── db_crashtest.py
    │   │   ├── db_repl_stress.cc
    │   │   ├── db_sanity_test.cc
    │   │   ├── db_sanity_test.cc.d
    │   │   ├── db_stress.cc
    │   │   ├── dbench_monitor
    │   │   ├── dump
    │   │   │   ├── db_dump_tool.cc
    │   │   │   ├── db_dump_tool.cc.d
    │   │   │   ├── db_dump_tool.o
    │   │   │   ├── rocksdb_dump.cc
    │   │   │   └── rocksdb_undump.cc
    │   │   ├── generate_random_db.sh
    │   │   ├── ingest_external_sst.sh
    │   │   ├── ldb.cc
    │   │   ├── ldb_cmd.cc
    │   │   ├── ldb_cmd.cc.d
    │   │   ├── ldb_cmd.o
    │   │   ├── ldb_cmd_impl.h
    │   │   ├── ldb_cmd_test.cc
    │   │   ├── ldb_cmd_test.cc.d
    │   │   ├── ldb_test.py
    │   │   ├── ldb_tool.cc
    │   │   ├── ldb_tool.cc.d
    │   │   ├── ldb_tool.o
    │   │   ├── pflag
    │   │   ├── rdb
    │   │   │   ├── API.md
    │   │   │   ├── README.md
    │   │   │   ├── binding.gyp
    │   │   │   ├── db_wrapper.cc
    │   │   │   ├── db_wrapper.h
    │   │   │   ├── rdb
    │   │   │   ├── rdb.cc
    │   │   │   └── unit_test.js
    │   │   ├── reduce_levels_test.cc
    │   │   ├── reduce_levels_test.cc.d
    │   │   ├── regression_test.sh
    │   │   ├── report_lite_binary_size.sh
    │   │   ├── rocksdb_dump_test.sh
    │   │   ├── run_flash_bench.sh
    │   │   ├── run_leveldb.sh
    │   │   ├── sample-dump.dmp
    │   │   ├── sst_dump.cc
    │   │   ├── sst_dump_test.cc
    │   │   ├── sst_dump_test.cc.d
    │   │   ├── sst_dump_tool.cc
    │   │   ├── sst_dump_tool.cc.d
    │   │   ├── sst_dump_tool.o
    │   │   ├── sst_dump_tool_imp.h
    │   │   ├── trace_analyzer.cc
    │   │   ├── trace_analyzer_test.cc
    │   │   ├── trace_analyzer_test.cc.d
    │   │   ├── trace_analyzer_tool.cc
    │   │   ├── trace_analyzer_tool.cc.d
    │   │   ├── trace_analyzer_tool.h
    │   │   ├── verify_random_db.sh
    │   │   ├── write_external_sst.sh
    │   │   ├── write_stress.cc
    │   │   └── write_stress_runner.py
    │   ├── trace_replay
    │   │   ├── block_cache_tracer.cc
    │   │   ├── block_cache_tracer.cc.d
    │   │   ├── block_cache_tracer.h
    │   │   ├── block_cache_tracer.o
    │   │   ├── block_cache_tracer_test.cc
    │   │   ├── block_cache_tracer_test.cc.d
    │   │   ├── trace_replay.cc
    │   │   ├── trace_replay.cc.d
    │   │   ├── trace_replay.h
    │   │   └── trace_replay.o
    │   ├── util
    │   │   ├── aligned_buffer.h
    │   │   ├── autovector.h
    │   │   ├── autovector_test.cc
    │   │   ├── autovector_test.cc.d
    │   │   ├── bloom.cc
    │   │   ├── bloom.cc.d
    │   │   ├── bloom.o
    │   │   ├── bloom_test.cc
    │   │   ├── bloom_test.cc.d
    │   │   ├── build_version.cc
    │   │   ├── build_version.cc.d
    │   │   ├── build_version.cc.in
    │   │   ├── build_version.h
    │   │   ├── build_version.o
    │   │   ├── cast_util.h
    │   │   ├── channel.h
    │   │   ├── coding.cc
    │   │   ├── coding.cc.d
    │   │   ├── coding.h
    │   │   ├── coding.o
    │   │   ├── coding_test.cc
    │   │   ├── coding_test.cc.d
    │   │   ├── compaction_job_stats_impl.cc
    │   │   ├── compaction_job_stats_impl.cc.d
    │   │   ├── compaction_job_stats_impl.o
    │   │   ├── comparator.cc
    │   │   ├── comparator.cc.d
    │   │   ├── comparator.o
    │   │   ├── compression.h
    │   │   ├── compression_context_cache.cc
    │   │   ├── compression_context_cache.cc.d
    │   │   ├── compression_context_cache.h
    │   │   ├── compression_context_cache.o
    │   │   ├── concurrent_task_limiter_impl.cc
    │   │   ├── concurrent_task_limiter_impl.cc.d
    │   │   ├── concurrent_task_limiter_impl.h
    │   │   ├── concurrent_task_limiter_impl.o
    │   │   ├── core_local.h
    │   │   ├── crc32c.cc
    │   │   ├── crc32c.cc.d
    │   │   ├── crc32c.h
    │   │   ├── crc32c.o
    │   │   ├── crc32c_arm64.cc
    │   │   ├── crc32c_arm64.h
    │   │   ├── crc32c_ppc.c
    │   │   ├── crc32c_ppc.h
    │   │   ├── crc32c_ppc_asm.S
    │   │   ├── crc32c_ppc_constants.h
    │   │   ├── crc32c_test.cc
    │   │   ├── crc32c_test.cc.d
    │   │   ├── duplicate_detector.h
    │   │   ├── dynamic_bloom.cc
    │   │   ├── dynamic_bloom.cc.d
    │   │   ├── dynamic_bloom.h
    │   │   ├── dynamic_bloom.o
    │   │   ├── dynamic_bloom_test.cc
    │   │   ├── dynamic_bloom_test.cc.d
    │   │   ├── file_reader_writer.cc
    │   │   ├── file_reader_writer.cc.d
    │   │   ├── file_reader_writer.h
    │   │   ├── file_reader_writer.o
    │   │   ├── file_reader_writer_test.cc
    │   │   ├── filelock_test.cc
    │   │   ├── filelock_test.cc.d
    │   │   ├── filter_policy.cc
    │   │   ├── filter_policy.cc.d
    │   │   ├── filter_policy.o
    │   │   ├── gflags_compat.h
    │   │   ├── hash.cc
    │   │   ├── hash.cc.d
    │   │   ├── hash.h
    │   │   ├── hash.o
    │   │   ├── hash_map.h
    │   │   ├── hash_test.cc
    │   │   ├── heap.h
    │   │   ├── heap_test.cc
    │   │   ├── kv_map.h
    │   │   ├── log_write_bench.cc
    │   │   ├── log_write_bench.cc.d
    │   │   ├── murmurhash.cc
    │   │   ├── murmurhash.cc.d
    │   │   ├── murmurhash.h
    │   │   ├── murmurhash.o
    │   │   ├── mutexlock.h
    │   │   ├── ppc-opcode.h
    │   │   ├── random.cc
    │   │   ├── random.cc.d
    │   │   ├── random.h
    │   │   ├── random.o
    │   │   ├── rate_limiter.cc
    │   │   ├── rate_limiter.cc.d
    │   │   ├── rate_limiter.h
    │   │   ├── rate_limiter.o
    │   │   ├── rate_limiter_test.cc
    │   │   ├── rate_limiter_test.cc.d
    │   │   ├── repeatable_thread.h
    │   │   ├── repeatable_thread_test.cc
    │   │   ├── repeatable_thread_test.cc.d
    │   │   ├── set_comparator.h
    │   │   ├── slice.cc
    │   │   ├── slice.cc.d
    │   │   ├── slice.o
    │   │   ├── slice_transform_test.cc
    │   │   ├── slice_transform_test.cc.d
    │   │   ├── status.cc
    │   │   ├── status.cc.d
    │   │   ├── status.o
    │   │   ├── stderr_logger.h
    │   │   ├── stop_watch.h
    │   │   ├── string_util.cc
    │   │   ├── string_util.cc.d
    │   │   ├── string_util.h
    │   │   ├── string_util.o
    │   │   ├── thread_list_test.cc
    │   │   ├── thread_list_test.cc.d
    │   │   ├── thread_local.cc
    │   │   ├── thread_local.cc.d
    │   │   ├── thread_local.h
    │   │   ├── thread_local.o
    │   │   ├── thread_local_test.cc
    │   │   ├── thread_local_test.cc.d
    │   │   ├── thread_operation.h
    │   │   ├── threadpool_imp.cc
    │   │   ├── threadpool_imp.cc.d
    │   │   ├── threadpool_imp.h
    │   │   ├── threadpool_imp.o
    │   │   ├── timer_queue.h
    │   │   ├── timer_queue_test.cc
    │   │   ├── timer_queue_test.cc.d
    │   │   ├── user_comparator_wrapper.h
    │   │   ├── util.h
    │   │   ├── vector_iterator.h
    │   │   ├── xxhash.cc
    │   │   ├── xxhash.cc.d
    │   │   ├── xxhash.h
    │   │   └── xxhash.o
    │   └── utilities
    │       ├── backupable
    │       │   ├── backupable_db.cc
    │       │   ├── backupable_db.cc.d
    │       │   ├── backupable_db.o
    │       │   ├── backupable_db_test.cc
    │       │   └── backupable_db_test.cc.d
    │       ├── blob_db
    │       │   ├── blob_compaction_filter.cc
    │       │   ├── blob_compaction_filter.cc.d
    │       │   ├── blob_compaction_filter.h
    │       │   ├── blob_compaction_filter.o
    │       │   ├── blob_db.cc
    │       │   ├── blob_db.cc.d
    │       │   ├── blob_db.h
    │       │   ├── blob_db.o
    │       │   ├── blob_db_impl.cc
    │       │   ├── blob_db_impl.cc.d
    │       │   ├── blob_db_impl.h
    │       │   ├── blob_db_impl.o
    │       │   ├── blob_db_impl_filesnapshot.cc
    │       │   ├── blob_db_impl_filesnapshot.cc.d
    │       │   ├── blob_db_impl_filesnapshot.o
    │       │   ├── blob_db_iterator.h
    │       │   ├── blob_db_listener.h
    │       │   ├── blob_db_test.cc
    │       │   ├── blob_db_test.cc.d
    │       │   ├── blob_dump_tool.cc
    │       │   ├── blob_dump_tool.cc.d
    │       │   ├── blob_dump_tool.h
    │       │   ├── blob_dump_tool.o
    │       │   ├── blob_file.cc
    │       │   ├── blob_file.cc.d
    │       │   ├── blob_file.h
    │       │   ├── blob_file.o
    │       │   ├── blob_index.h
    │       │   ├── blob_log_format.cc
    │       │   ├── blob_log_format.cc.d
    │       │   ├── blob_log_format.h
    │       │   ├── blob_log_format.o
    │       │   ├── blob_log_reader.cc
    │       │   ├── blob_log_reader.cc.d
    │       │   ├── blob_log_reader.h
    │       │   ├── blob_log_reader.o
    │       │   ├── blob_log_writer.cc
    │       │   ├── blob_log_writer.cc.d
    │       │   ├── blob_log_writer.h
    │       │   └── blob_log_writer.o
    │       ├── cassandra
    │       │   ├── cassandra_compaction_filter.cc
    │       │   ├── cassandra_compaction_filter.cc.d
    │       │   ├── cassandra_compaction_filter.h
    │       │   ├── cassandra_compaction_filter.o
    │       │   ├── cassandra_format_test.cc
    │       │   ├── cassandra_format_test.cc.d
    │       │   ├── cassandra_functional_test.cc
    │       │   ├── cassandra_functional_test.cc.d
    │       │   ├── cassandra_row_merge_test.cc
    │       │   ├── cassandra_row_merge_test.cc.d
    │       │   ├── cassandra_serialize_test.cc
    │       │   ├── cassandra_serialize_test.cc.d
    │       │   ├── format.cc
    │       │   ├── format.cc.d
    │       │   ├── format.h
    │       │   ├── format.o
    │       │   ├── merge_operator.cc
    │       │   ├── merge_operator.cc.d
    │       │   ├── merge_operator.h
    │       │   ├── merge_operator.o
    │       │   ├── serialize.h
    │       │   ├── test_utils.cc
    │       │   ├── test_utils.cc.d
    │       │   └── test_utils.h
    │       ├── checkpoint
    │       │   ├── checkpoint_impl.cc
    │       │   ├── checkpoint_impl.cc.d
    │       │   ├── checkpoint_impl.h
    │       │   ├── checkpoint_impl.o
    │       │   ├── checkpoint_test.cc
    │       │   └── checkpoint_test.cc.d
    │       ├── compaction_filters
    │       │   ├── remove_emptyvalue_compactionfilter.cc
    │       │   ├── remove_emptyvalue_compactionfilter.cc.d
    │       │   ├── remove_emptyvalue_compactionfilter.h
    │       │   └── remove_emptyvalue_compactionfilter.o
    │       ├── convenience
    │       │   ├── info_log_finder.cc
    │       │   ├── info_log_finder.cc.d
    │       │   └── info_log_finder.o
    │       ├── debug.cc
    │       ├── debug.cc.d
    │       ├── debug.o
    │       ├── env_librados.cc
    │       ├── env_librados.md
    │       ├── env_librados_test.cc
    │       ├── env_mirror.cc
    │       ├── env_mirror.cc.d
    │       ├── env_mirror.o
    │       ├── env_mirror_test.cc
    │       ├── env_timed.cc
    │       ├── env_timed.cc.d
    │       ├── env_timed.o
    │       ├── env_timed_test.cc
    │       ├── leveldb_options
    │       │   ├── leveldb_options.cc
    │       │   ├── leveldb_options.cc.d
    │       │   └── leveldb_options.o
    │       ├── memory
    │       │   ├── memory_test.cc
    │       │   ├── memory_test.cc.d
    │       │   ├── memory_util.cc
    │       │   ├── memory_util.cc.d
    │       │   └── memory_util.o
    │       ├── merge_operators
    │       │   ├── bytesxor.cc
    │       │   ├── bytesxor.cc.d
    │       │   ├── bytesxor.h
    │       │   ├── bytesxor.o
    │       │   ├── max.cc
    │       │   ├── max.cc.d
    │       │   ├── max.o
    │       │   ├── put.cc
    │       │   ├── put.cc.d
    │       │   ├── put.o
    │       │   ├── string_append
    │       │   │   ├── stringappend.cc
    │       │   │   ├── stringappend.cc.d
    │       │   │   ├── stringappend.h
    │       │   │   ├── stringappend.o
    │       │   │   ├── stringappend2.cc
    │       │   │   ├── stringappend2.cc.d
    │       │   │   ├── stringappend2.h
    │       │   │   ├── stringappend2.o
    │       │   │   ├── stringappend_test.cc
    │       │   │   └── stringappend_test.cc.d
    │       │   ├── uint64add.cc
    │       │   ├── uint64add.cc.d
    │       │   └── uint64add.o
    │       ├── merge_operators.h
    │       ├── object_registry_test.cc
    │       ├── object_registry_test.cc.d
    │       ├── option_change_migration
    │       │   ├── option_change_migration.cc
    │       │   ├── option_change_migration.cc.d
    │       │   ├── option_change_migration.o
    │       │   ├── option_change_migration_test.cc
    │       │   └── option_change_migration_test.cc.d
    │       ├── options
    │       │   ├── options_util.cc
    │       │   ├── options_util.cc.d
    │       │   ├── options_util.o
    │       │   ├── options_util_test.cc
    │       │   └── options_util_test.cc.d
    │       ├── persistent_cache
    │       │   ├── block_cache_tier.cc
    │       │   ├── block_cache_tier.cc.d
    │       │   ├── block_cache_tier.h
    │       │   ├── block_cache_tier.o
    │       │   ├── block_cache_tier_file.cc
    │       │   ├── block_cache_tier_file.cc.d
    │       │   ├── block_cache_tier_file.h
    │       │   ├── block_cache_tier_file.o
    │       │   ├── block_cache_tier_file_buffer.h
    │       │   ├── block_cache_tier_metadata.cc
    │       │   ├── block_cache_tier_metadata.cc.d
    │       │   ├── block_cache_tier_metadata.h
    │       │   ├── block_cache_tier_metadata.o
    │       │   ├── hash_table.h
    │       │   ├── hash_table_bench.cc
    │       │   ├── hash_table_evictable.h
    │       │   ├── hash_table_test.cc
    │       │   ├── lrulist.h
    │       │   ├── persistent_cache_bench.cc
    │       │   ├── persistent_cache_test.cc
    │       │   ├── persistent_cache_test.h
    │       │   ├── persistent_cache_tier.cc
    │       │   ├── persistent_cache_tier.cc.d
    │       │   ├── persistent_cache_tier.h
    │       │   ├── persistent_cache_tier.o
    │       │   ├── persistent_cache_util.h
    │       │   ├── volatile_tier_impl.cc
    │       │   ├── volatile_tier_impl.cc.d
    │       │   ├── volatile_tier_impl.h
    │       │   └── volatile_tier_impl.o
    │       ├── simulator_cache
    │       │   ├── cache_simulator.cc
    │       │   ├── cache_simulator.cc.d
    │       │   ├── cache_simulator.h
    │       │   ├── cache_simulator.o
    │       │   ├── sim_cache.cc
    │       │   ├── sim_cache.cc.d
    │       │   ├── sim_cache.o
    │       │   ├── sim_cache_test.cc
    │       │   └── sim_cache_test.cc.d
    │       ├── table_properties_collectors
    │       │   ├── compact_on_deletion_collector.cc
    │       │   ├── compact_on_deletion_collector.cc.d
    │       │   ├── compact_on_deletion_collector.h
    │       │   ├── compact_on_deletion_collector.o
    │       │   ├── compact_on_deletion_collector_test.cc
    │       │   └── compact_on_deletion_collector_test.cc.d
    │       ├── trace
    │       │   ├── file_trace_reader_writer.cc
    │       │   ├── file_trace_reader_writer.cc.d
    │       │   ├── file_trace_reader_writer.h
    │       │   └── file_trace_reader_writer.o
    │       ├── transactions
    │       │   ├── optimistic_transaction.cc
    │       │   ├── optimistic_transaction.cc.d
    │       │   ├── optimistic_transaction.h
    │       │   ├── optimistic_transaction.o
    │       │   ├── optimistic_transaction_db_impl.cc
    │       │   ├── optimistic_transaction_db_impl.cc.d
    │       │   ├── optimistic_transaction_db_impl.h
    │       │   ├── optimistic_transaction_db_impl.o
    │       │   ├── optimistic_transaction_test.cc
    │       │   ├── optimistic_transaction_test.cc.d
    │       │   ├── pessimistic_transaction.cc
    │       │   ├── pessimistic_transaction.cc.d
    │       │   ├── pessimistic_transaction.h
    │       │   ├── pessimistic_transaction.o
    │       │   ├── pessimistic_transaction_db.cc
    │       │   ├── pessimistic_transaction_db.cc.d
    │       │   ├── pessimistic_transaction_db.h
    │       │   ├── pessimistic_transaction_db.o
    │       │   ├── snapshot_checker.cc
    │       │   ├── snapshot_checker.cc.d
    │       │   ├── snapshot_checker.o
    │       │   ├── transaction_base.cc
    │       │   ├── transaction_base.cc.d
    │       │   ├── transaction_base.h
    │       │   ├── transaction_base.o
    │       │   ├── transaction_db_mutex_impl.cc
    │       │   ├── transaction_db_mutex_impl.cc.d
    │       │   ├── transaction_db_mutex_impl.h
    │       │   ├── transaction_db_mutex_impl.o
    │       │   ├── transaction_lock_mgr.cc
    │       │   ├── transaction_lock_mgr.cc.d
    │       │   ├── transaction_lock_mgr.h
    │       │   ├── transaction_lock_mgr.o
    │       │   ├── transaction_test.cc
    │       │   ├── transaction_test.cc.d
    │       │   ├── transaction_test.h
    │       │   ├── transaction_util.cc
    │       │   ├── transaction_util.cc.d
    │       │   ├── transaction_util.h
    │       │   ├── transaction_util.o
    │       │   ├── write_prepared_transaction_test.cc
    │       │   ├── write_prepared_transaction_test.cc.d
    │       │   ├── write_prepared_txn.cc
    │       │   ├── write_prepared_txn.cc.d
    │       │   ├── write_prepared_txn.h
    │       │   ├── write_prepared_txn.o
    │       │   ├── write_prepared_txn_db.cc
    │       │   ├── write_prepared_txn_db.cc.d
    │       │   ├── write_prepared_txn_db.h
    │       │   ├── write_prepared_txn_db.o
    │       │   ├── write_unprepared_transaction_test.cc
    │       │   ├── write_unprepared_transaction_test.cc.d
    │       │   ├── write_unprepared_txn.cc
    │       │   ├── write_unprepared_txn.cc.d
    │       │   ├── write_unprepared_txn.h
    │       │   ├── write_unprepared_txn.o
    │       │   ├── write_unprepared_txn_db.cc
    │       │   ├── write_unprepared_txn_db.cc.d
    │       │   ├── write_unprepared_txn_db.h
    │       │   └── write_unprepared_txn_db.o
    │       ├── ttl
    │       │   ├── db_ttl_impl.cc
    │       │   ├── db_ttl_impl.cc.d
    │       │   ├── db_ttl_impl.h
    │       │   ├── db_ttl_impl.o
    │       │   ├── ttl_test.cc
    │       │   └── ttl_test.cc.d
    │       ├── util_merge_operators_test.cc
    │       └── write_batch_with_index
    │           ├── write_batch_with_index.cc
    │           ├── write_batch_with_index.cc.d
    │           ├── write_batch_with_index.o
    │           ├── write_batch_with_index_internal.cc
    │           ├── write_batch_with_index_internal.cc.d
    │           ├── write_batch_with_index_internal.h
    │           ├── write_batch_with_index_internal.o
    │           ├── write_batch_with_index_test.cc
    │           └── write_batch_with_index_test.cc.d
    ├── test
    │   └── tcptest.go
    └── vendor
        ├── github.com
        │   ├── armon
        │   │   └── go-metrics
        │   │       ├── LICENSE
        │   │       ├── README.md
        │   │       ├── const_unix.go
        │   │       ├── const_windows.go
        │   │       ├── go.mod
        │   │       ├── go.sum
        │   │       ├── inmem.go
        │   │       ├── inmem_endpoint.go
        │   │       ├── inmem_signal.go
        │   │       ├── metrics.go
        │   │       ├── sink.go
        │   │       ├── start.go
        │   │       ├── statsd.go
        │   │       └── statsite.go
        │   ├── go-redis
        │   │   └── redis
        │   │       ├── CHANGELOG.md
        │   │       ├── LICENSE
        │   │       ├── Makefile
        │   │       ├── README.md
        │   │       ├── cluster.go
        │   │       ├── cluster_commands.go
        │   │       ├── command.go
        │   │       ├── commands.go
        │   │       ├── doc.go
        │   │       ├── go.mod
        │   │       ├── go.sum
        │   │       ├── internal
        │   │       │   ├── consistenthash
        │   │       │   │   └── consistenthash.go
        │   │       │   ├── error.go
        │   │       │   ├── hashtag
        │   │       │   │   └── hashtag.go
        │   │       │   ├── internal.go
        │   │       │   ├── log.go
        │   │       │   ├── once.go
        │   │       │   ├── pool
        │   │       │   │   ├── conn.go
        │   │       │   │   ├── pool.go
        │   │       │   │   ├── pool_single.go
        │   │       │   │   └── pool_sticky.go
        │   │       │   ├── proto
        │   │       │   │   ├── reader.go
        │   │       │   │   ├── scan.go
        │   │       │   │   └── writer.go
        │   │       │   ├── util
        │   │       │   │   ├── safe.go
        │   │       │   │   ├── strconv.go
        │   │       │   │   └── unsafe.go
        │   │       │   └── util.go
        │   │       ├── iterator.go
        │   │       ├── options.go
        │   │       ├── pipeline.go
        │   │       ├── pubsub.go
        │   │       ├── redis.go
        │   │       ├── result.go
        │   │       ├── ring.go
        │   │       ├── script.go
        │   │       ├── sentinel.go
        │   │       ├── tx.go
        │   │       └── universal.go
        │   ├── google
        │   │   └── btree
        │   │       ├── LICENSE
        │   │       ├── README.md
        │   │       ├── btree.go
        │   │       └── btree_mem.go
        │   ├── hashicorp
        │   │   ├── errwrap
        │   │   │   ├── LICENSE
        │   │   │   ├── README.md
        │   │   │   ├── errwrap.go
        │   │   │   └── go.mod
        │   │   ├── go-immutable-radix
        │   │   │   ├── CHANGELOG.md
        │   │   │   ├── LICENSE
        │   │   │   ├── README.md
        │   │   │   ├── edges.go
        │   │   │   ├── go.mod
        │   │   │   ├── go.sum
        │   │   │   ├── iradix.go
        │   │   │   ├── iter.go
        │   │   │   ├── node.go
        │   │   │   └── raw_iter.go
        │   │   ├── go-msgpack
        │   │   │   ├── LICENSE
        │   │   │   └── codec
        │   │   │       ├── 0doc.go
        │   │   │       ├── README.md
        │   │   │       ├── binc.go
        │   │   │       ├── decode.go
        │   │   │       ├── encode.go
        │   │   │       ├── helper.go
        │   │   │       ├── helper_internal.go
        │   │   │       ├── msgpack.go
        │   │   │       ├── msgpack_test.py
        │   │   │       ├── rpc.go
        │   │   │       ├── simple.go
        │   │   │       └── time.go
        │   │   ├── go-multierror
        │   │   │   ├── LICENSE
        │   │   │   ├── Makefile
        │   │   │   ├── README.md
        │   │   │   ├── append.go
        │   │   │   ├── flatten.go
        │   │   │   ├── format.go
        │   │   │   ├── go.mod
        │   │   │   ├── go.sum
        │   │   │   ├── multierror.go
        │   │   │   ├── prefix.go
        │   │   │   └── sort.go
        │   │   ├── go-sockaddr
        │   │   │   ├── GNUmakefile
        │   │   │   ├── LICENSE
        │   │   │   ├── README.md
        │   │   │   ├── doc.go
        │   │   │   ├── go.mod
        │   │   │   ├── go.sum
        │   │   │   ├── ifaddr.go
        │   │   │   ├── ifaddrs.go
        │   │   │   ├── ifattr.go
        │   │   │   ├── ipaddr.go
        │   │   │   ├── ipaddrs.go
        │   │   │   ├── ipv4addr.go
        │   │   │   ├── ipv6addr.go
        │   │   │   ├── rfc.go
        │   │   │   ├── route_info.go
        │   │   │   ├── route_info_android.go
        │   │   │   ├── route_info_bsd.go
        │   │   │   ├── route_info_default.go
        │   │   │   ├── route_info_linux.go
        │   │   │   ├── route_info_solaris.go
        │   │   │   ├── route_info_windows.go
        │   │   │   ├── sockaddr.go
        │   │   │   ├── sockaddrs.go
        │   │   │   └── unixsock.go
        │   │   ├── golang-lru
        │   │   │   ├── LICENSE
        │   │   │   └── simplelru
        │   │   │       ├── lru.go
        │   │   │       └── lru_interface.go
        │   │   └── memberlist
        │   │       ├── LICENSE
        │   │       ├── Makefile
        │   │       ├── README.md
        │   │       ├── alive_delegate.go
        │   │       ├── awareness.go
        │   │       ├── broadcast.go
        │   │       ├── config.go
        │   │       ├── conflict_delegate.go
        │   │       ├── delegate.go
        │   │       ├── event_delegate.go
        │   │       ├── go.mod
        │   │       ├── go.sum
        │   │       ├── keyring.go
        │   │       ├── logging.go
        │   │       ├── memberlist.go
        │   │       ├── merge_delegate.go
        │   │       ├── mock_transport.go
        │   │       ├── net.go
        │   │       ├── net_transport.go
        │   │       ├── ping_delegate.go
        │   │       ├── queue.go
        │   │       ├── security.go
        │   │       ├── state.go
        │   │       ├── suspicion.go
        │   │       ├── tag.sh
        │   │       ├── todo.md
        │   │       ├── transport.go
        │   │       └── util.go
        │   ├── miekg
        │   │   └── dns
        │   │       ├── AUTHORS
        │   │       ├── CONTRIBUTORS
        │   │       ├── COPYRIGHT
        │   │       ├── Gopkg.lock
        │   │       ├── Gopkg.toml
        │   │       ├── LICENSE
        │   │       ├── Makefile.fuzz
        │   │       ├── Makefile.release
        │   │       ├── README.md
        │   │       ├── acceptfunc.go
        │   │       ├── client.go
        │   │       ├── clientconfig.go
        │   │       ├── dane.go
        │   │       ├── defaults.go
        │   │       ├── dns.go
        │   │       ├── dnssec.go
        │   │       ├── dnssec_keygen.go
        │   │       ├── dnssec_keyscan.go
        │   │       ├── dnssec_privkey.go
        │   │       ├── doc.go
        │   │       ├── duplicate.go
        │   │       ├── duplicate_generate.go
        │   │       ├── edns.go
        │   │       ├── format.go
        │   │       ├── fuzz.go
        │   │       ├── generate.go
        │   │       ├── labels.go
        │   │       ├── listen_go111.go
        │   │       ├── listen_go_not111.go
        │   │       ├── msg.go
        │   │       ├── msg_generate.go
        │   │       ├── msg_helpers.go
        │   │       ├── msg_truncate.go
        │   │       ├── nsecx.go
        │   │       ├── privaterr.go
        │   │       ├── reverse.go
        │   │       ├── sanitize.go
        │   │       ├── scan.go
        │   │       ├── scan_rr.go
        │   │       ├── serve_mux.go
        │   │       ├── server.go
        │   │       ├── sig0.go
        │   │       ├── singleinflight.go
        │   │       ├── smimea.go
        │   │       ├── tlsa.go
        │   │       ├── tsig.go
        │   │       ├── types.go
        │   │       ├── types_generate.go
        │   │       ├── udp.go
        │   │       ├── udp_windows.go
        │   │       ├── update.go
        │   │       ├── version.go
        │   │       ├── xfr.go
        │   │       ├── zduplicate.go
        │   │       ├── zmsg.go
        │   │       └── ztypes.go
        │   ├── petar
        │   │   └── GoLLRB
        │   │       ├── AUTHORS
        │   │       ├── LICENSE
        │   │       └── llrb
        │   │           ├── avgvar.go
        │   │           ├── iterator.go
        │   │           ├── llrb-stats.go
        │   │           ├── llrb.go
        │   │           └── util.go
        │   └── sean-
        │       └── seed
        │           ├── LICENSE
        │           ├── README.md
        │           └── init.go
        ├── golang.org
        │   └── x
        │       ├── crypto
        │       │   ├── AUTHORS
        │       │   ├── CONTRIBUTORS
        │       │   ├── LICENSE
        │       │   ├── PATENTS
        │       │   └── ed25519
        │       │       ├── ed25519.go
        │       │       ├── ed25519_go113.go
        │       │       └── internal
        │       │           └── edwards25519
        │       │               ├── const.go
        │       │               └── edwards25519.go
        │       ├── net
        │       │   ├── AUTHORS
        │       │   ├── CONTRIBUTORS
        │       │   ├── LICENSE
        │       │   ├── PATENTS
        │       │   ├── bpf
        │       │   │   ├── asm.go
        │       │   │   ├── constants.go
        │       │   │   ├── doc.go
        │       │   │   ├── instructions.go
        │       │   │   ├── setter.go
        │       │   │   ├── vm.go
        │       │   │   └── vm_instructions.go
        │       │   ├── internal
        │       │   │   ├── iana
        │       │   │   │   ├── const.go
        │       │   │   │   └── gen.go
        │       │   │   └── socket
        │       │   │       ├── cmsghdr.go
        │       │   │       ├── cmsghdr_bsd.go
        │       │   │       ├── cmsghdr_linux_32bit.go
        │       │   │       ├── cmsghdr_linux_64bit.go
        │       │   │       ├── cmsghdr_solaris_64bit.go
        │       │   │       ├── cmsghdr_stub.go
        │       │   │       ├── defs_aix.go
        │       │   │       ├── defs_darwin.go
        │       │   │       ├── defs_dragonfly.go
        │       │   │       ├── defs_freebsd.go
        │       │   │       ├── defs_linux.go
        │       │   │       ├── defs_netbsd.go
        │       │   │       ├── defs_openbsd.go
        │       │   │       ├── defs_solaris.go
        │       │   │       ├── empty.s
        │       │   │       ├── error_unix.go
        │       │   │       ├── error_windows.go
        │       │   │       ├── iovec_32bit.go
        │       │   │       ├── iovec_64bit.go
        │       │   │       ├── iovec_solaris_64bit.go
        │       │   │       ├── iovec_stub.go
        │       │   │       ├── mmsghdr_stub.go
        │       │   │       ├── mmsghdr_unix.go
        │       │   │       ├── msghdr_bsd.go
        │       │   │       ├── msghdr_bsdvar.go
        │       │   │       ├── msghdr_linux.go
        │       │   │       ├── msghdr_linux_32bit.go
        │       │   │       ├── msghdr_linux_64bit.go
        │       │   │       ├── msghdr_openbsd.go
        │       │   │       ├── msghdr_solaris_64bit.go
        │       │   │       ├── msghdr_stub.go
        │       │   │       ├── rawconn.go
        │       │   │       ├── rawconn_mmsg.go
        │       │   │       ├── rawconn_msg.go
        │       │   │       ├── rawconn_nommsg.go
        │       │   │       ├── rawconn_nomsg.go
        │       │   │       ├── socket.go
        │       │   │       ├── sys.go
        │       │   │       ├── sys_bsd.go
        │       │   │       ├── sys_bsdvar.go
        │       │   │       ├── sys_const_unix.go
        │       │   │       ├── sys_darwin.go
        │       │   │       ├── sys_dragonfly.go
        │       │   │       ├── sys_go1_11_darwin.go
        │       │   │       ├── sys_linkname.go
        │       │   │       ├── sys_linux.go
        │       │   │       ├── sys_linux_386.go
        │       │   │       ├── sys_linux_386.s
        │       │   │       ├── sys_linux_amd64.go
        │       │   │       ├── sys_linux_arm.go
        │       │   │       ├── sys_linux_arm64.go
        │       │   │       ├── sys_linux_mips.go
        │       │   │       ├── sys_linux_mips64.go
        │       │   │       ├── sys_linux_mips64le.go
        │       │   │       ├── sys_linux_mipsle.go
        │       │   │       ├── sys_linux_ppc64.go
        │       │   │       ├── sys_linux_ppc64le.go
        │       │   │       ├── sys_linux_riscv64.go
        │       │   │       ├── sys_linux_s390x.go
        │       │   │       ├── sys_linux_s390x.s
        │       │   │       ├── sys_netbsd.go
        │       │   │       ├── sys_posix.go
        │       │   │       ├── sys_solaris.go
        │       │   │       ├── sys_solaris_amd64.s
        │       │   │       ├── sys_stub.go
        │       │   │       ├── sys_unix.go
        │       │   │       ├── sys_windows.go
        │       │   │       ├── zsys_aix_ppc64.go
        │       │   │       ├── zsys_darwin_386.go
        │       │   │       ├── zsys_darwin_amd64.go
        │       │   │       ├── zsys_darwin_arm.go
        │       │   │       ├── zsys_darwin_arm64.go
        │       │   │       ├── zsys_dragonfly_amd64.go
        │       │   │       ├── zsys_freebsd_386.go
        │       │   │       ├── zsys_freebsd_amd64.go
        │       │   │       ├── zsys_freebsd_arm.go
        │       │   │       ├── zsys_freebsd_arm64.go
        │       │   │       ├── zsys_linux_386.go
        │       │   │       ├── zsys_linux_amd64.go
        │       │   │       ├── zsys_linux_arm.go
        │       │   │       ├── zsys_linux_arm64.go
        │       │   │       ├── zsys_linux_mips.go
        │       │   │       ├── zsys_linux_mips64.go
        │       │   │       ├── zsys_linux_mips64le.go
        │       │   │       ├── zsys_linux_mipsle.go
        │       │   │       ├── zsys_linux_ppc64.go
        │       │   │       ├── zsys_linux_ppc64le.go
        │       │   │       ├── zsys_linux_riscv64.go
        │       │   │       ├── zsys_linux_s390x.go
        │       │   │       ├── zsys_netbsd_386.go
        │       │   │       ├── zsys_netbsd_amd64.go
        │       │   │       ├── zsys_netbsd_arm.go
        │       │   │       ├── zsys_netbsd_arm64.go
        │       │   │       ├── zsys_openbsd_386.go
        │       │   │       ├── zsys_openbsd_amd64.go
        │       │   │       ├── zsys_openbsd_arm.go
        │       │   │       ├── zsys_openbsd_arm64.go
        │       │   │       └── zsys_solaris_amd64.go
        │       │   ├── ipv4
        │       │   │   ├── batch.go
        │       │   │   ├── control.go
        │       │   │   ├── control_bsd.go
        │       │   │   ├── control_pktinfo.go
        │       │   │   ├── control_stub.go
        │       │   │   ├── control_unix.go
        │       │   │   ├── control_windows.go
        │       │   │   ├── defs_aix.go
        │       │   │   ├── defs_darwin.go
        │       │   │   ├── defs_dragonfly.go
        │       │   │   ├── defs_freebsd.go
        │       │   │   ├── defs_linux.go
        │       │   │   ├── defs_netbsd.go
        │       │   │   ├── defs_openbsd.go
        │       │   │   ├── defs_solaris.go
        │       │   │   ├── dgramopt.go
        │       │   │   ├── doc.go
        │       │   │   ├── endpoint.go
        │       │   │   ├── gen.go
        │       │   │   ├── genericopt.go
        │       │   │   ├── header.go
        │       │   │   ├── helper.go
        │       │   │   ├── iana.go
        │       │   │   ├── icmp.go
        │       │   │   ├── icmp_linux.go
        │       │   │   ├── icmp_stub.go
        │       │   │   ├── packet.go
        │       │   │   ├── payload.go
        │       │   │   ├── payload_cmsg.go
        │       │   │   ├── payload_nocmsg.go
        │       │   │   ├── sockopt.go
        │       │   │   ├── sockopt_posix.go
        │       │   │   ├── sockopt_stub.go
        │       │   │   ├── sys_aix.go
        │       │   │   ├── sys_asmreq.go
        │       │   │   ├── sys_asmreq_stub.go
        │       │   │   ├── sys_asmreqn.go
        │       │   │   ├── sys_asmreqn_stub.go
        │       │   │   ├── sys_bpf.go
        │       │   │   ├── sys_bpf_stub.go
        │       │   │   ├── sys_bsd.go
        │       │   │   ├── sys_darwin.go
        │       │   │   ├── sys_dragonfly.go
        │       │   │   ├── sys_freebsd.go
        │       │   │   ├── sys_linux.go
        │       │   │   ├── sys_solaris.go
        │       │   │   ├── sys_ssmreq.go
        │       │   │   ├── sys_ssmreq_stub.go
        │       │   │   ├── sys_stub.go
        │       │   │   ├── sys_windows.go
        │       │   │   ├── zsys_aix_ppc64.go
        │       │   │   ├── zsys_darwin.go
        │       │   │   ├── zsys_dragonfly.go
        │       │   │   ├── zsys_freebsd_386.go
        │       │   │   ├── zsys_freebsd_amd64.go
        │       │   │   ├── zsys_freebsd_arm.go
        │       │   │   ├── zsys_linux_386.go
        │       │   │   ├── zsys_linux_amd64.go
        │       │   │   ├── zsys_linux_arm.go
        │       │   │   ├── zsys_linux_arm64.go
        │       │   │   ├── zsys_linux_mips.go
        │       │   │   ├── zsys_linux_mips64.go
        │       │   │   ├── zsys_linux_mips64le.go
        │       │   │   ├── zsys_linux_mipsle.go
        │       │   │   ├── zsys_linux_ppc.go
        │       │   │   ├── zsys_linux_ppc64.go
        │       │   │   ├── zsys_linux_ppc64le.go
        │       │   │   ├── zsys_linux_riscv64.go
        │       │   │   ├── zsys_linux_s390x.go
        │       │   │   ├── zsys_netbsd.go
        │       │   │   ├── zsys_openbsd.go
        │       │   │   └── zsys_solaris.go
        │       │   └── ipv6
        │       │       ├── batch.go
        │       │       ├── control.go
        │       │       ├── control_rfc2292_unix.go
        │       │       ├── control_rfc3542_unix.go
        │       │       ├── control_stub.go
        │       │       ├── control_unix.go
        │       │       ├── control_windows.go
        │       │       ├── defs_aix.go
        │       │       ├── defs_darwin.go
        │       │       ├── defs_dragonfly.go
        │       │       ├── defs_freebsd.go
        │       │       ├── defs_linux.go
        │       │       ├── defs_netbsd.go
        │       │       ├── defs_openbsd.go
        │       │       ├── defs_solaris.go
        │       │       ├── dgramopt.go
        │       │       ├── doc.go
        │       │       ├── endpoint.go
        │       │       ├── gen.go
        │       │       ├── genericopt.go
        │       │       ├── header.go
        │       │       ├── helper.go
        │       │       ├── iana.go
        │       │       ├── icmp.go
        │       │       ├── icmp_bsd.go
        │       │       ├── icmp_linux.go
        │       │       ├── icmp_solaris.go
        │       │       ├── icmp_stub.go
        │       │       ├── icmp_windows.go
        │       │       ├── payload.go
        │       │       ├── payload_cmsg.go
        │       │       ├── payload_nocmsg.go
        │       │       ├── sockopt.go
        │       │       ├── sockopt_posix.go
        │       │       ├── sockopt_stub.go
        │       │       ├── sys_aix.go
        │       │       ├── sys_asmreq.go
        │       │       ├── sys_asmreq_stub.go
        │       │       ├── sys_bpf.go
        │       │       ├── sys_bpf_stub.go
        │       │       ├── sys_bsd.go
        │       │       ├── sys_darwin.go
        │       │       ├── sys_freebsd.go
        │       │       ├── sys_linux.go
        │       │       ├── sys_solaris.go
        │       │       ├── sys_ssmreq.go
        │       │       ├── sys_ssmreq_stub.go
        │       │       ├── sys_stub.go
        │       │       ├── sys_windows.go
        │       │       ├── zsys_aix_ppc64.go
        │       │       ├── zsys_darwin.go
        │       │       ├── zsys_dragonfly.go
        │       │       ├── zsys_freebsd_386.go
        │       │       ├── zsys_freebsd_amd64.go
        │       │       ├── zsys_freebsd_arm.go
        │       │       ├── zsys_linux_386.go
        │       │       ├── zsys_linux_amd64.go
        │       │       ├── zsys_linux_arm.go
        │       │       ├── zsys_linux_arm64.go
        │       │       ├── zsys_linux_mips.go
        │       │       ├── zsys_linux_mips64.go
        │       │       ├── zsys_linux_mips64le.go
        │       │       ├── zsys_linux_mipsle.go
        │       │       ├── zsys_linux_ppc.go
        │       │       ├── zsys_linux_ppc64.go
        │       │       ├── zsys_linux_ppc64le.go
        │       │       ├── zsys_linux_riscv64.go
        │       │       ├── zsys_linux_s390x.go
        │       │       ├── zsys_netbsd.go
        │       │       ├── zsys_openbsd.go
        │       │       └── zsys_solaris.go
        │       └── sys
        │           ├── AUTHORS
        │           ├── CONTRIBUTORS
        │           ├── LICENSE
        │           ├── PATENTS
        │           ├── unix
        │           │   ├── README.md
        │           │   ├── affinity_linux.go
        │           │   ├── aliases.go
        │           │   ├── asm_aix_ppc64.s
        │           │   ├── asm_darwin_386.s
        │           │   ├── asm_darwin_amd64.s
        │           │   ├── asm_darwin_arm.s
        │           │   ├── asm_darwin_arm64.s
        │           │   ├── asm_dragonfly_amd64.s
        │           │   ├── asm_freebsd_386.s
        │           │   ├── asm_freebsd_amd64.s
        │           │   ├── asm_freebsd_arm.s
        │           │   ├── asm_freebsd_arm64.s
        │           │   ├── asm_linux_386.s
        │           │   ├── asm_linux_amd64.s
        │           │   ├── asm_linux_arm.s
        │           │   ├── asm_linux_arm64.s
        │           │   ├── asm_linux_mips64x.s
        │           │   ├── asm_linux_mipsx.s
        │           │   ├── asm_linux_ppc64x.s
        │           │   ├── asm_linux_riscv64.s
        │           │   ├── asm_linux_s390x.s
        │           │   ├── asm_netbsd_386.s
        │           │   ├── asm_netbsd_amd64.s
        │           │   ├── asm_netbsd_arm.s
        │           │   ├── asm_netbsd_arm64.s
        │           │   ├── asm_openbsd_386.s
        │           │   ├── asm_openbsd_amd64.s
        │           │   ├── asm_openbsd_arm.s
        │           │   ├── asm_openbsd_arm64.s
        │           │   ├── asm_solaris_amd64.s
        │           │   ├── bluetooth_linux.go
        │           │   ├── cap_freebsd.go
        │           │   ├── constants.go
        │           │   ├── dev_aix_ppc.go
        │           │   ├── dev_aix_ppc64.go
        │           │   ├── dev_darwin.go
        │           │   ├── dev_dragonfly.go
        │           │   ├── dev_freebsd.go
        │           │   ├── dev_linux.go
        │           │   ├── dev_netbsd.go
        │           │   ├── dev_openbsd.go
        │           │   ├── dirent.go
        │           │   ├── endian_big.go
        │           │   ├── endian_little.go
        │           │   ├── env_unix.go
        │           │   ├── errors_freebsd_386.go
        │           │   ├── errors_freebsd_amd64.go
        │           │   ├── errors_freebsd_arm.go
        │           │   ├── fcntl.go
        │           │   ├── fcntl_darwin.go
        │           │   ├── fcntl_linux_32bit.go
        │           │   ├── gccgo.go
        │           │   ├── gccgo_c.c
        │           │   ├── gccgo_linux_amd64.go
        │           │   ├── ioctl.go
        │           │   ├── mkall.sh
        │           │   ├── mkasm_darwin.go
        │           │   ├── mkerrors.sh
        │           │   ├── mkpost.go
        │           │   ├── mksyscall.go
        │           │   ├── mksyscall_aix_ppc.go
        │           │   ├── mksyscall_aix_ppc64.go
        │           │   ├── mksyscall_solaris.go
        │           │   ├── mksysctl_openbsd.go
        │           │   ├── mksysnum.go
        │           │   ├── pagesize_unix.go
        │           │   ├── pledge_openbsd.go
        │           │   ├── race.go
        │           │   ├── race0.go
        │           │   ├── readdirent_getdents.go
        │           │   ├── readdirent_getdirentries.go
        │           │   ├── sockcmsg_linux.go
        │           │   ├── sockcmsg_unix.go
        │           │   ├── str.go
        │           │   ├── syscall.go
        │           │   ├── syscall_aix.go
        │           │   ├── syscall_aix_ppc.go
        │           │   ├── syscall_aix_ppc64.go
        │           │   ├── syscall_bsd.go
        │           │   ├── syscall_darwin.go
        │           │   ├── syscall_darwin_386.go
        │           │   ├── syscall_darwin_amd64.go
        │           │   ├── syscall_darwin_arm.go
        │           │   ├── syscall_darwin_arm64.go
        │           │   ├── syscall_darwin_libSystem.go
        │           │   ├── syscall_dragonfly.go
        │           │   ├── syscall_dragonfly_amd64.go
        │           │   ├── syscall_freebsd.go
        │           │   ├── syscall_freebsd_386.go
        │           │   ├── syscall_freebsd_amd64.go
        │           │   ├── syscall_freebsd_arm.go
        │           │   ├── syscall_freebsd_arm64.go
        │           │   ├── syscall_linux.go
        │           │   ├── syscall_linux_386.go
        │           │   ├── syscall_linux_amd64.go
        │           │   ├── syscall_linux_amd64_gc.go
        │           │   ├── syscall_linux_arm.go
        │           │   ├── syscall_linux_arm64.go
        │           │   ├── syscall_linux_gc.go
        │           │   ├── syscall_linux_gc_386.go
        │           │   ├── syscall_linux_gccgo_386.go
        │           │   ├── syscall_linux_gccgo_arm.go
        │           │   ├── syscall_linux_mips64x.go
        │           │   ├── syscall_linux_mipsx.go
        │           │   ├── syscall_linux_ppc64x.go
        │           │   ├── syscall_linux_riscv64.go
        │           │   ├── syscall_linux_s390x.go
        │           │   ├── syscall_linux_sparc64.go
        │           │   ├── syscall_netbsd.go
        │           │   ├── syscall_netbsd_386.go
        │           │   ├── syscall_netbsd_amd64.go
        │           │   ├── syscall_netbsd_arm.go
        │           │   ├── syscall_netbsd_arm64.go
        │           │   ├── syscall_openbsd.go
        │           │   ├── syscall_openbsd_386.go
        │           │   ├── syscall_openbsd_amd64.go
        │           │   ├── syscall_openbsd_arm.go
        │           │   ├── syscall_openbsd_arm64.go
        │           │   ├── syscall_solaris.go
        │           │   ├── syscall_solaris_amd64.go
        │           │   ├── syscall_unix.go
        │           │   ├── syscall_unix_gc.go
        │           │   ├── syscall_unix_gc_ppc64x.go
        │           │   ├── timestruct.go
        │           │   ├── types_aix.go
        │           │   ├── types_darwin.go
        │           │   ├── types_dragonfly.go
        │           │   ├── types_freebsd.go
        │           │   ├── types_netbsd.go
        │           │   ├── types_openbsd.go
        │           │   ├── types_solaris.go
        │           │   ├── unveil_openbsd.go
        │           │   ├── xattr_bsd.go
        │           │   ├── zerrors_aix_ppc.go
        │           │   ├── zerrors_aix_ppc64.go
        │           │   ├── zerrors_darwin_386.go
        │           │   ├── zerrors_darwin_amd64.go
        │           │   ├── zerrors_darwin_arm.go
        │           │   ├── zerrors_darwin_arm64.go
        │           │   ├── zerrors_dragonfly_amd64.go
        │           │   ├── zerrors_freebsd_386.go
        │           │   ├── zerrors_freebsd_amd64.go
        │           │   ├── zerrors_freebsd_arm.go
        │           │   ├── zerrors_freebsd_arm64.go
        │           │   ├── zerrors_linux_386.go
        │           │   ├── zerrors_linux_amd64.go
        │           │   ├── zerrors_linux_arm.go
        │           │   ├── zerrors_linux_arm64.go
        │           │   ├── zerrors_linux_mips.go
        │           │   ├── zerrors_linux_mips64.go
        │           │   ├── zerrors_linux_mips64le.go
        │           │   ├── zerrors_linux_mipsle.go
        │           │   ├── zerrors_linux_ppc64.go
        │           │   ├── zerrors_linux_ppc64le.go
        │           │   ├── zerrors_linux_riscv64.go
        │           │   ├── zerrors_linux_s390x.go
        │           │   ├── zerrors_linux_sparc64.go
        │           │   ├── zerrors_netbsd_386.go
        │           │   ├── zerrors_netbsd_amd64.go
        │           │   ├── zerrors_netbsd_arm.go
        │           │   ├── zerrors_netbsd_arm64.go
        │           │   ├── zerrors_openbsd_386.go
        │           │   ├── zerrors_openbsd_amd64.go
        │           │   ├── zerrors_openbsd_arm.go
        │           │   ├── zerrors_openbsd_arm64.go
        │           │   ├── zerrors_solaris_amd64.go
        │           │   ├── zptrace386_linux.go
        │           │   ├── zptracearm_linux.go
        │           │   ├── zptracemips_linux.go
        │           │   ├── zptracemipsle_linux.go
        │           │   ├── zsyscall_aix_ppc.go
        │           │   ├── zsyscall_aix_ppc64.go
        │           │   ├── zsyscall_aix_ppc64_gc.go
        │           │   ├── zsyscall_aix_ppc64_gccgo.go
        │           │   ├── zsyscall_darwin_386.1_11.go
        │           │   ├── zsyscall_darwin_386.go
        │           │   ├── zsyscall_darwin_386.s
        │           │   ├── zsyscall_darwin_amd64.1_11.go
        │           │   ├── zsyscall_darwin_amd64.go
        │           │   ├── zsyscall_darwin_amd64.s
        │           │   ├── zsyscall_darwin_arm.1_11.go
        │           │   ├── zsyscall_darwin_arm.go
        │           │   ├── zsyscall_darwin_arm.s
        │           │   ├── zsyscall_darwin_arm64.1_11.go
        │           │   ├── zsyscall_darwin_arm64.go
        │           │   ├── zsyscall_darwin_arm64.s
        │           │   ├── zsyscall_dragonfly_amd64.go
        │           │   ├── zsyscall_freebsd_386.go
        │           │   ├── zsyscall_freebsd_amd64.go
        │           │   ├── zsyscall_freebsd_arm.go
        │           │   ├── zsyscall_freebsd_arm64.go
        │           │   ├── zsyscall_linux_386.go
        │           │   ├── zsyscall_linux_amd64.go
        │           │   ├── zsyscall_linux_arm.go
        │           │   ├── zsyscall_linux_arm64.go
        │           │   ├── zsyscall_linux_mips.go
        │           │   ├── zsyscall_linux_mips64.go
        │           │   ├── zsyscall_linux_mips64le.go
        │           │   ├── zsyscall_linux_mipsle.go
        │           │   ├── zsyscall_linux_ppc64.go
        │           │   ├── zsyscall_linux_ppc64le.go
        │           │   ├── zsyscall_linux_riscv64.go
        │           │   ├── zsyscall_linux_s390x.go
        │           │   ├── zsyscall_linux_sparc64.go
        │           │   ├── zsyscall_netbsd_386.go
        │           │   ├── zsyscall_netbsd_amd64.go
        │           │   ├── zsyscall_netbsd_arm.go
        │           │   ├── zsyscall_netbsd_arm64.go
        │           │   ├── zsyscall_openbsd_386.go
        │           │   ├── zsyscall_openbsd_amd64.go
        │           │   ├── zsyscall_openbsd_arm.go
        │           │   ├── zsyscall_openbsd_arm64.go
        │           │   ├── zsyscall_solaris_amd64.go
        │           │   ├── zsysctl_openbsd_386.go
        │           │   ├── zsysctl_openbsd_amd64.go
        │           │   ├── zsysctl_openbsd_arm.go
        │           │   ├── zsysctl_openbsd_arm64.go
        │           │   ├── zsysnum_darwin_386.go
        │           │   ├── zsysnum_darwin_amd64.go
        │           │   ├── zsysnum_darwin_arm.go
        │           │   ├── zsysnum_darwin_arm64.go
        │           │   ├── zsysnum_dragonfly_amd64.go
        │           │   ├── zsysnum_freebsd_386.go
        │           │   ├── zsysnum_freebsd_amd64.go
        │           │   ├── zsysnum_freebsd_arm.go
        │           │   ├── zsysnum_freebsd_arm64.go
        │           │   ├── zsysnum_linux_386.go
        │           │   ├── zsysnum_linux_amd64.go
        │           │   ├── zsysnum_linux_arm.go
        │           │   ├── zsysnum_linux_arm64.go
        │           │   ├── zsysnum_linux_mips.go
        │           │   ├── zsysnum_linux_mips64.go
        │           │   ├── zsysnum_linux_mips64le.go
        │           │   ├── zsysnum_linux_mipsle.go
        │           │   ├── zsysnum_linux_ppc64.go
        │           │   ├── zsysnum_linux_ppc64le.go
        │           │   ├── zsysnum_linux_riscv64.go
        │           │   ├── zsysnum_linux_s390x.go
        │           │   ├── zsysnum_linux_sparc64.go
        │           │   ├── zsysnum_netbsd_386.go
        │           │   ├── zsysnum_netbsd_amd64.go
        │           │   ├── zsysnum_netbsd_arm.go
        │           │   ├── zsysnum_netbsd_arm64.go
        │           │   ├── zsysnum_openbsd_386.go
        │           │   ├── zsysnum_openbsd_amd64.go
        │           │   ├── zsysnum_openbsd_arm.go
        │           │   ├── zsysnum_openbsd_arm64.go
        │           │   ├── ztypes_aix_ppc.go
        │           │   ├── ztypes_aix_ppc64.go
        │           │   ├── ztypes_darwin_386.go
        │           │   ├── ztypes_darwin_amd64.go
        │           │   ├── ztypes_darwin_arm.go
        │           │   ├── ztypes_darwin_arm64.go
        │           │   ├── ztypes_dragonfly_amd64.go
        │           │   ├── ztypes_freebsd_386.go
        │           │   ├── ztypes_freebsd_amd64.go
        │           │   ├── ztypes_freebsd_arm.go
        │           │   ├── ztypes_freebsd_arm64.go
        │           │   ├── ztypes_linux_386.go
        │           │   ├── ztypes_linux_amd64.go
        │           │   ├── ztypes_linux_arm.go
        │           │   ├── ztypes_linux_arm64.go
        │           │   ├── ztypes_linux_mips.go
        │           │   ├── ztypes_linux_mips64.go
        │           │   ├── ztypes_linux_mips64le.go
        │           │   ├── ztypes_linux_mipsle.go
        │           │   ├── ztypes_linux_ppc64.go
        │           │   ├── ztypes_linux_ppc64le.go
        │           │   ├── ztypes_linux_riscv64.go
        │           │   ├── ztypes_linux_s390x.go
        │           │   ├── ztypes_linux_sparc64.go
        │           │   ├── ztypes_netbsd_386.go
        │           │   ├── ztypes_netbsd_amd64.go
        │           │   ├── ztypes_netbsd_arm.go
        │           │   ├── ztypes_netbsd_arm64.go
        │           │   ├── ztypes_openbsd_386.go
        │           │   ├── ztypes_openbsd_amd64.go
        │           │   ├── ztypes_openbsd_arm.go
        │           │   ├── ztypes_openbsd_arm64.go
        │           │   └── ztypes_solaris_amd64.go
        │           └── windows
        │               ├── aliases.go
        │               ├── asm_windows_386.s
        │               ├── asm_windows_amd64.s
        │               ├── asm_windows_arm.s
        │               ├── dll_windows.go
        │               ├── env_windows.go
        │               ├── eventlog.go
        │               ├── exec_windows.go
        │               ├── memory_windows.go
        │               ├── mkerrors.bash
        │               ├── mkknownfolderids.bash
        │               ├── mksyscall.go
        │               ├── race.go
        │               ├── race0.go
        │               ├── security_windows.go
        │               ├── service.go
        │               ├── str.go
        │               ├── syscall.go
        │               ├── syscall_windows.go
        │               ├── types_windows.go
        │               ├── types_windows_386.go
        │               ├── types_windows_amd64.go
        │               ├── types_windows_arm.go
        │               ├── zerrors_windows.go
        │               ├── zknownfolderids_windows.go
        │               └── zsyscall_windows.go
        └── stathat.com
            └── c
                └── consistent
                    ├── LICENSE
                    ├── README.md
                    └── consistent.go