A library that provides an embeddable, persistent key-value store for fast storage.
This report summarizes scanner evidence for facebook/rocksdb, a C++ project with 32,179 GitHub stars. SynthScan examined 352,882 lines of code across 1293 source files, recording 2847 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 7.7 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 2763 finding(s).
Are imports declared and package/API names verified? 38 finding(s).
Are wrappers, guards, and repeated structures necessary? 193 finding(s).
Which changes need focused human review? 2847 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 2847 distinct pattern matches across 17 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CMakeLists.txt | 1 | # Prerequisites for Windows: | COMMENT |
| LOW | CMakeLists.txt | 21 | # | COMMENT |
| LOW | options/options_helper.h | 1 | // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. | COMMENT |
| LOW | options/configurable_test.h | 1 | // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. | COMMENT |
| LOW | options/cf_options.h | 1 | // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. | COMMENT |
| LOW | options/cf_options.h | 301 | bool memtable_whole_key_filtering; | COMMENT |
| LOW | options/configurable_helper.h | 1 | // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. | COMMENT |
| LOW | options/configurable_helper.h | 21 | class ConfigurableHelper { | COMMENT |
| LOW | options/configurable_helper.h | 41 | // @return InvalidArgument If any of the values cannot be successfully | COMMENT |
| LOW | options/configurable_helper.h | 61 | // @return NotSupported If the option was found but no rule for converting | COMMENT |
| LOW | options/configurable_helper.h | 81 | // equivalent. | COMMENT |
| LOW | options/configurable_helper.h | 101 | // equivalent. | COMMENT |
| LOW | options/configurable_helper.h | 121 | // @param InvalidArgument If the name is valid for this object but | COMMENT |
| LOW | options/configurable_helper.h | 141 | // Internal method to list the option names for this object. | COMMENT |
| LOW | options/configurable_helper.h | 161 | COMMENT | |
| LOW | tools/trace_analyzer_tool.h | 1 | // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. | COMMENT |
| LOW | tools/regression_test.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tools/regression_test.sh | 21 | # TEST_PATH=/my/output/dir COMMIT_ID=abcdef ./tools/regression_test.sh | COMMENT |
| LOW | tools/regression_test.sh | 41 | # exists | COMMENT |
| LOW | tools/regression_test.sh | 61 | # this feature only work for commits after 88acd93 or rocksdb version | COMMENT |
| LOW | tools/regression_test.sh | 81 | # HISTOGRAM: If 1, then the histogram feature on performance feature is on. | COMMENT |
| LOW | tools/tsan_suppressions.txt | 1 | # ThreadSanitizer suppressions for known third-party false positives. | COMMENT |
| LOW | tools/check_format_compatible.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tools/check_format_compatible.sh | 161 | COMMENT | |
| LOW | tools/check_format_compatible.sh | 381 | # General structure from here: | COMMENT |
| LOW | tools/run_leveldb.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tools/run_leveldb.sh | 21 | # Were list-of-threads specified as "1 2 4" then the tests in steps 2, 3 and | COMMENT |
| LOW | tools/run_blob_bench.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tools/analyze_txn_stress_test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | tools/db_crashtest.py | 201 | # for simple: | COMMENT |
| LOW | tools/db_crashtest.py | 281 | "stress_diagnostics_breadcrumb_entries": 256, | COMMENT |
| LOW | tools/db_crashtest.py | 861 | "interval": 120, | COMMENT |
| LOW | tools/db_crashtest.py | 881 | "remote_compaction_worker_threads": 0, | COMMENT |
| LOW | tools/db_crashtest.py | 1341 | # | COMMENT |
| LOW | tools/db_crashtest.py | 1481 | # deletion ingestion is off in the current run, because such files | COMMENT |
| LOW | tools/db_crashtest.py | 1501 | # UDI now supports all operation types and all iteration directions. | COMMENT |
| LOW | tools/db_crashtest.py | 1561 | or dest_params.get("manual_wal_flush_one_in", 0) > 0 | COMMENT |
| LOW | tools/db_crashtest.py | 1801 | # inconsistency when one CF has a successful flush during auto | COMMENT |
| LOW | tools/run_flash_bench.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tools/run_flash_bench.sh | 21 | # Test output is written to $OUTPUT_DIR, currently /tmp/output. The performance | COMMENT |
| LOW | tools/run_flash_bench.sh | 41 | # do range queries. | COMMENT |
| LOW | tools/simulated_hybrid_file_system.h | 1 | // Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. | COMMENT |
| LOW | tools/advisor/advisor/db_timeseries_parser.py | 61 | return | COMMENT |
| LOW | tools/advisor/advisor/db_stats_fetcher.py | 61 | else: | COMMENT |
| LOW | tools/advisor/advisor/db_options_parser.py | 341 | # Trigger for an OptionCondition object is of the form: | COMMENT |
| LOW | tools/advisor/advisor/rules.ini | 1 | # Copyright (c) 2011-present, Facebook, Inc. All rights reserved. | COMMENT |
| LOW | tools/c_api_gen/c_base.h | 41 | */ | COMMENT |
| LOW | tools/c_api_gen/c_base.h | 581 | const size_t* keys_list_sizes, char** values_list, | COMMENT |
| LOW | tools/cpu_corruption_injector/injector_telemetry.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | tools/cpu_corruption_injector/injector_navigate.py | 21 | # THROUGH rocksdb's own code by default; these are the EXTRA, non-rocksdb libraries | COMMENT |
| LOW | tools/cpu_corruption_injector/injector_navigate.py | 61 | # By default gdb hands that signal to db_stress, whose own handler forks a SECOND gdb | COMMENT |
| LOW | tools/cpu_corruption_injector/injector_navigate.py | 121 | # runner_execute's per-run timeout killpg's the whole gdb+db_stress process | COMMENT |
| LOW | …u_corruption_injector/injector_critical_instruction.py | 21 | # | COMMENT |
| LOW | …u_corruption_injector/injector_critical_instruction.py | 41 | _CMP_TEST_RE = re.compile(r"^(cmp|test)[bwlq]?\b") | COMMENT |
| LOW | tools/block_cache_analyzer/block_cache_trace_analyzer.h | 1 | // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. | COMMENT |
| LOW | tools/block_cache_analyzer/block_cache_trace_analyzer.h | 161 | // a block, and aggregates the information by block type, sst file, and column | COMMENT |
| LOW | tools/block_cache_analyzer/block_cache_trace_analyzer.h | 181 | // Block Type UncompressionDict: Number of accesses: 2 | COMMENT |
| LOW | tools/block_cache_analyzer/block_cache_trace_analyzer.h | 201 | // Write the percentage of accesses break down by column family into a csv | COMMENT |
| LOW | tools/block_cache_analyzer/block_cache_trace_analyzer.h | 221 | // | COMMENT |
| LOW | tools/block_cache_analyzer/block_cache_trace_analyzer.h | 241 | // "time,label_1_access_per_second,label_2_access_per_second,...,label_N_access_per_second" | COMMENT |
| 2426 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tools/db_crashtest_test.py | 84 | def register_expected_values_dir_cleanup(self, db_crashtest): | CODE |
| LOW⚡ | tools/db_crashtest_test.py | 85 | def cleanup_expected_values_dir(): | CODE |
| LOW⚡ | tools/db_crashtest_test.py | 94 | def register_diagnostics_dir_cleanup(self, db_crashtest): | CODE |
| LOW⚡ | tools/db_crashtest_test.py | 104 | def load_fault_injection_log_parser(self): | CODE |
| LOW | tools/db_crashtest_test.py | 42 | def load_fault_injection_log_parser_module(): | CODE |
| LOW | tools/db_crashtest_test.py | 132 | def test_stress_cmd_env_defaults_tsan_suppressions(self): | CODE |
| LOW | tools/db_crashtest_test.py | 146 | def test_stress_cmd_env_preserves_tsan_options(self): | CODE |
| LOW | tools/db_crashtest_test.py | 154 | def test_generated_command_uses_async_db_api(self): | CODE |
| LOW | tools/db_crashtest_test.py | 168 | def test_stress_diagnostics_directory_creation_failure_is_non_fatal(self): | CODE |
| LOW | tools/db_crashtest_test.py | 190 | def test_stress_diagnostics_cleanup_failure_is_non_fatal(self): | CODE |
| LOW | tools/db_crashtest_test.py | 208 | def test_stress_diagnostics_cleanup_preserves_unrelated_files(self): | CODE |
| LOW | tools/db_crashtest_test.py | 243 | def test_stress_diagnostics_rejects_symlinked_auto_directory(self): | CODE |
| LOW | tools/db_crashtest_test.py | 269 | def test_stress_diagnostics_pruning_keeps_recent_processes(self): | CODE |
| LOW | tools/db_crashtest_test.py | 315 | def test_stress_diagnostics_pruning_ignores_explicit_directory(self): | CODE |
| LOW | tools/db_crashtest_test.py | 327 | def test_stress_diagnostics_defaults_to_local_artifact_dir(self): | CODE |
| LOW | tools/db_crashtest_test.py | 350 | def test_cf_consistency_randomizes_secondary(self): | CODE |
| LOW | tools/db_crashtest_test.py | 361 | def test_skip_verifydb_disables_verification_knobs(self): | CODE |
| LOW | tools/db_crashtest_test.py | 379 | def test_stress_diagnostics_disabled_does_not_allocate_dir(self): | CODE |
| LOW | tools/db_crashtest_test.py | 392 | def test_stress_diagnostics_scan_witness_uses_independent_gate(self): | CODE |
| LOW | tools/db_crashtest_test.py | 408 | def test_stress_diagnostics_paths_include_artifact_dir(self): | CODE |
| LOW | tools/db_crashtest_test.py | 423 | def test_full_external_table_profile(self): | CODE |
| LOW | tools/db_crashtest_test.py | 525 | def test_cache_and_write_buffer_size_multiplier_preserves_randomization(self): | CODE |
| LOW | tools/db_crashtest_test.py | 555 | def test_wbm_flush_policy_coverage(self): | CODE |
| LOW | tools/db_crashtest_test.py | 579 | def test_cross_db_wbm_policy_keeps_db_topology_stable(self): | CODE |
| LOW | tools/db_crashtest_test.py | 605 | def test_cross_db_wbm_policy_does_not_force_two_dbs_when_disabled(self): | CODE |
| LOW | tools/db_crashtest_test.py | 622 | def test_cache_and_write_buffer_size_multiplier_respects_write_buffer_minimum( | CODE |
| LOW | tools/db_crashtest_test.py | 639 | def test_get_ev_parent_dir_preserves_existing_contents(self): | CODE |
| LOW | tools/db_crashtest_test.py | 652 | def test_finalize_disables_test_batches_snapshots_when_disable_wal(self): | CODE |
| LOW | tools/db_crashtest_test.py | 670 | def test_finalize_disables_test_batches_snapshots_for_blob_direct_write(self): | CODE |
| LOW | tools/db_crashtest_test.py | 688 | def test_finalize_file_scoped_wal_fault_profile(self): | CODE |
| LOW | tools/db_crashtest_test.py | 757 | def test_finalize_disables_ingest_wbwi_for_file_scoped_wal_faults(self): | CODE |
| LOW | tools/db_crashtest_test.py | 784 | def test_auto_file_scoped_wal_faults_preserve_explicit_opt_outs(self): | CODE |
| LOW | tools/db_crashtest_test.py | 787 | def choose_without_blob_profile(values): | CODE |
| LOW | tools/db_crashtest_test.py | 813 | def test_auto_file_scoped_wal_faults_skip_batch_mode(self): | CODE |
| LOW | tools/db_crashtest_test.py | 818 | def choose_without_blob_profile(values): | CODE |
| LOW | tools/db_crashtest_test.py | 834 | def test_auto_file_scoped_wal_faults_skip_unsupported_inputs(self): | CODE |
| LOW | tools/db_crashtest_test.py | 837 | def choose_without_blob_profile(values): | CODE |
| LOW | tools/db_crashtest_test.py | 864 | def test_auto_file_scoped_wal_faults_select_eligible_profile(self): | CODE |
| LOW | tools/db_crashtest_test.py | 869 | def choose_without_blob_profile(values): | CODE |
| LOW | tools/db_crashtest_test.py | 885 | def test_finalize_disables_sqfc_range_queries_with_range_conversion(self): | CODE |
| LOW | tools/db_crashtest_test.py | 902 | def test_finalize_enables_atomic_replace_ingestion_for_universal(self): | CODE |
| LOW | tools/db_crashtest_test.py | 927 | def test_finalize_disables_atomic_replace_ingestion_when_incompatible(self): | CODE |
| LOW | tools/db_crashtest_test.py | 964 | def test_sanitize_known_stderr_suppresses_only_known_sigterm_lines(self): | CODE |
| LOW | tools/db_crashtest_test.py | 984 | def test_sanitize_known_stderr_suppresses_retryable_wait_cqe(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1003 | def test_sanitize_known_stderr_preserves_terminal_wait_cqe(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1017 | def test_sanitize_known_stderr_preserves_other_stderr(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1037 | def test_sanitize_known_stderr_requires_timeout_and_sigterm_marker(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1056 | def test_print_run_output_tolerates_read_executor_io_uring_init_failure(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1079 | def test_output_matches_no_space_catches_known_failure_strings(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1104 | def test_file_type_suffix_preserves_compound_suffixes(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1114 | def test_finalize_sanitizes_incompatible_flags_for_multi_db(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1130 | def test_finalize_preserves_flags_for_single_db(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1146 | def test_finalize_shrinks_blocks_readahead_and_cache_together(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1167 | def test_finalize_keeps_default_sizes_without_prefix_extractor(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1187 | def test_finalize_defaults_tolerate_non_injected_io_errors_for_remote_db(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1198 | def test_finalize_tolerates_non_injected_io_errors_for_remote_db(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1215 | def test_finalize_disables_tolerate_non_injected_io_errors_for_local_db(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1231 | def test_build_out_of_space_diagnostics_summarizes_directory_suffixes(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1267 | def test_liveness_params_keep_mixed_workload_and_enable_watchdog(self): | CODE |
| LOW | tools/db_crashtest_test.py | 1323 | def test_liveness_command_passes_watchdog_flags_not_wrapper_duration(self): | CODE |
| 86 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/db_crashtest.py | 3048 | except OSError: | CODE |
| HIGH | tools/gtest_parallel_repro.py | 139 | except ProcessLookupError: | CODE |
| HIGH | tools/c_api_gen/validate_generated_equivalence.py | 310 | except ValueError: | CODE |
| HIGH | tools/c_api_gen/validate_generated_equivalence.py | 271 | except ValueError: | CODE |
| HIGH | tools/cpu_corruption_injector/injector_navigate.py | 119 | except gdb.error: | CODE |
| HIGH | tools/cpu_corruption_injector/injector_navigate.py | 368 | except gdb.error: | CODE |
| HIGH | tools/cpu_corruption_injector/injector_navigate.py | 267 | except gdb.error: | CODE |
| HIGH | tools/cpu_corruption_injector/injector_navigate.py | 271 | except gdb.error: | CODE |
| HIGH | tools/cpu_corruption_injector/injector_navigate.py | 304 | except gdb.error: | CODE |
| HIGH | tools/cpu_corruption_injector/injector_navigate.py | 384 | except gdb.error: | CODE |
| HIGH | tools/cpu_corruption_injector/runner_execute.py | 171 | except ProcessLookupError: | CODE |
| HIGH | buckifier/buckify_rocksdb.py | 383 | except Exception: | CODE |
| HIGH | build_tools/gtest_parallel.py | 624 | except IOError: | CODE |
| HIGH | build_tools/gtest_parallel.py | 80 | except OSError: | CODE |
| HIGH | build_tools/gtest_parallel.py | 395 | except ValueError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/benchmark.sh | 749 | # doesn't output regular statistics then we'll just use the time command to | COMMENT |
| MEDIUM | tools/advisor/advisor/ini_parser.py | 27 | # A section header looks like: [Rule "my-new-rule"]. Essentially, | COMMENT |
| MEDIUM | tools/cpu_corruption_injector/runner_report.py | 37 | # ERROR is a per-run harness failure, not a db_stress data outcome, and separate | COMMENT |
| MEDIUM | tools/cpu_corruption_injector/injector_navigate.py | 146 | # (diagnostic only; runner_execute scans gdb.log for harness deaths). | COMMENT |
| MEDIUM | util/ribbon_alg.h | 95 | // By contrast Bloom filters utilize an "AND" construction: a query only | COMMENT |
| MEDIUM | util/ribbon_alg.h | 889 | // effectively utilize any size space (multiple of CoeffRow) for minimizing | COMMENT |
| MEDIUM | include/rocksdb/merge_operator.h | 26 | // Essentially, a MergeOperator specifies the SEMANTICS of a merge, which only | COMMENT |
| MEDIUM | include/rocksdb/memory_allocator.h | 65 | // Generate memory allocator which allocates through Jemalloc and utilize | COMMENT |
| MEDIUM | include/rocksdb/options.h | 1847 | // competing with read and write operations during peak hours. Essentially, we | COMMENT |
| MEDIUM | include/rocksdb/compression_type.h | 307 | // Essentially specifies a minimum acceptable compression ratio. A block is | COMMENT |
| MEDIUM | include/rocksdb/experimental.h | 250 | // * Point queries can utilize essentially any kind of filter by extracting | COMMENT |
| MEDIUM | utilities/persistent_cache/persistent_cache_tier.h | 23 | // is a generic design and can leverage any storage medium -- disk/SSD/NVM/RAM. | COMMENT |
| MEDIUM | table/block_based/filter_policy_internal.h | 200 | // Essentially for testing only: configured millibits/key | COMMENT |
| MEDIUM | table/block_based/filter_policy_internal.h | 202 | // Essentially for testing only: legacy whole bits/key | COMMENT |
| MEDIUM | table/block_based/filter_policy_internal.h | 246 | // State for implementing optimize_filters_for_memory. Essentially, this | COMMENT |
| LOW | build_tools/gtest_parallel.py | 56 | # Before a SIGINT is seen, wait(p) will simply call p.wait() and | COMMENT |
| MEDIUM | db/c_test.c | 2635 | // Essentially a fingerprint of full Bloom schema, format_version=5 | COMMENT |
| MEDIUM | db/c_test.c | 2638 | // Essentially a fingerprint of Ribbon schema | COMMENT |
| MEDIUM | third-party/gtest-1.8.1/fused-src/gtest/gtest.h | 9648 | // This implementation is *not* meant to be as highly tuned or robust | COMMENT |
| MEDIUM | third-party/gtest-1.8.1/fused-src/gtest/gtest.h | 9721 | // In practice, this can be used to test functions that utilize the | COMMENT |
| MEDIUM | port/win/io_win.h | 304 | // we utilize the original buffer as an alignment buffer to write directly to | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/db_crashtest_test.py | 1481 | CODE | |
| LOW | tools/benchmark_ci.py | 55 | CODE | |
| LOW | tools/run_clang_tidy.py | 156 | CODE | |
| LOW | tools/run_clang_tidy.py | 315 | CODE | |
| LOW | tools/run_clang_tidy.py | 435 | CODE | |
| LOW | tools/write_stress_runner.py | 25 | CODE | |
| LOW | tools/db_crashtest.py | 775 | CODE | |
| LOW | tools/db_crashtest.py | 802 | CODE | |
| LOW | tools/db_crashtest.py | 2794 | CODE | |
| LOW | tools/fault_injection_log_parser.py | 154 | CODE | |
| LOW | tools/gtest_parallel_repro.py | 563 | CODE | |
| LOW | tools/advisor/advisor/db_timeseries_parser.py | 47 | CODE | |
| LOW | tools/advisor/advisor/db_timeseries_parser.py | 98 | CODE | |
| LOW | tools/advisor/advisor/db_timeseries_parser.py | 123 | CODE | |
| LOW | tools/advisor/advisor/db_timeseries_parser.py | 167 | CODE | |
| LOW | tools/advisor/advisor/db_bench_runner.py | 57 | CODE | |
| LOW | tools/advisor/advisor/db_config_optimizer.py | 19 | CODE | |
| LOW | tools/advisor/advisor/db_config_optimizer.py | 54 | CODE | |
| LOW | tools/advisor/advisor/db_stats_fetcher.py | 65 | CODE | |
| LOW | tools/advisor/advisor/db_stats_fetcher.py | 92 | CODE | |
| LOW | tools/advisor/advisor/db_stats_fetcher.py | 282 | CODE | |
| LOW | tools/advisor/advisor/db_options_parser.py | 83 | CODE | |
| LOW | tools/advisor/advisor/db_options_parser.py | 144 | CODE | |
| LOW | tools/advisor/advisor/db_options_parser.py | 197 | CODE | |
| LOW | tools/advisor/advisor/db_options_parser.py | 228 | CODE | |
| LOW | tools/advisor/advisor/db_options_parser.py | 266 | CODE | |
| LOW | tools/advisor/advisor/db_options_parser.py | 284 | CODE | |
| LOW | tools/advisor/advisor/rule_parser.py | 58 | CODE | |
| LOW | tools/advisor/advisor/rule_parser.py | 120 | CODE | |
| LOW | tools/advisor/advisor/rule_parser.py | 222 | CODE | |
| LOW | tools/advisor/advisor/rule_parser.py | 361 | CODE | |
| LOW | tools/advisor/advisor/rule_parser.py | 429 | CODE | |
| LOW | tools/advisor/advisor/db_log_parser.py | 113 | CODE | |
| LOW | tools/c_api_gen/validate_generated_equivalence.py | 98 | CODE | |
| LOW | tools/c_api_gen/validate_generated_equivalence.py | 147 | CODE | |
| LOW | tools/c_api_gen/gen_roundtrip_tests.py | 82 | CODE | |
| LOW | tools/c_api_gen/gen_roundtrip_tests.py | 128 | CODE | |
| LOW | tools/c_api_gen/auto_simple_bindings.py | 1236 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim.py | 1537 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim.py | 1666 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim.py | 121 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim.py | 163 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim.py | 460 | CODE | |
| LOW | …lock_cache_analyzer/block_cache_trace_analyzer_plot.py | 51 | CODE | |
| LOW | …lock_cache_analyzer/block_cache_trace_analyzer_plot.py | 93 | CODE | |
| LOW | …lock_cache_analyzer/block_cache_trace_analyzer_plot.py | 210 | CODE | |
| LOW | …lock_cache_analyzer/block_cache_trace_analyzer_plot.py | 261 | CODE | |
| LOW | buckifier/buckify_rocksdb.py | 117 | CODE | |
| LOW | buckifier/buckify_rocksdb.py | 161 | CODE | |
| LOW | build_tools/benchmark_log_tool.py | 117 | CODE | |
| LOW | build_tools/amalgamate.py | 71 | CODE | |
| LOW | build_tools/gtest_parallel.py | 640 | CODE | |
| LOW | build_tools/gtest_parallel.py | 705 | CODE | |
| LOW | build_tools/gtest_parallel.py | 384 | CODE | |
| LOW | build_tools/gtest_parallel.py | 714 | CODE | |
| LOW | build_tools/getdeps_fallback_mirror.py | 87 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tools/regression_test.sh | 99 | #============================================================================== | COMMENT |
| MEDIUM | tools/regression_test.sh | 101 | #============================================================================== | COMMENT |
| MEDIUM | tools/regression_test.sh | 120 | #============================================================================== | COMMENT |
| MEDIUM | tools/run_clang_tidy.py | 515 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tools/run_clang_tidy.py | 517 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tools/run_clang_tidy.py | 534 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tools/run_clang_tidy.py | 536 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tools/run_clang_tidy.py | 554 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | tools/run_clang_tidy.py | 556 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tools/run_clang_tidy.py | 600 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tools/run_clang_tidy.py | 602 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tools/run_clang_tidy.py | 608 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | tools/run_clang_tidy.py | 610 | # ------------------------------------------------------------------ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | util/compression.h | 627 | // NOTE: This class is not thread safe. | COMMENT |
| LOW | util/compression.h | 669 | // NOTE: This class is not thread safe. | COMMENT |
| LOW | include/rocksdb/utilities/object_registry.h | 248 | // NOTE: This function replaces the old ObjectLibrary::Register() | COMMENT |
| LOW | claude_md/add_public_api.md | 28 | ### Step 1: Define the C++ Public Interface | COMMENT |
| LOW | claude_md/add_public_api.md | 53 | ### Step 2: Define Options Struct (If Needed) | COMMENT |
| LOW | claude_md/add_public_api.md | 81 | ### Step 3: Implement in DBImpl | COMMENT |
| LOW | claude_md/add_public_api.md | 131 | ### Step 4: Handle Special DB Types | COMMENT |
| LOW | claude_md/add_public_api.md | 169 | ### Step 5: Add C API Bindings | COMMENT |
| LOW | claude_md/add_public_api.md | 283 | ### Step 6: Add Java Bindings | COMMENT |
| LOW | claude_md/add_public_api.md | 444 | ### Step 7: Update Build Files | COMMENT |
| LOW | claude_md/add_public_api.md | 454 | ### Step 8: Add Release Notes | COMMENT |
| LOW | claude_md/add_public_api.md | 476 | ### Step 9: Add Tests | COMMENT |
| LOW | claude_md/add_option.md | 51 | ### Step 1: Define the Option in Public Header | COMMENT |
| LOW | claude_md/add_option.md | 69 | ### Step 2: Add to Internal Options Structs | COMMENT |
| LOW | claude_md/add_option.md | 87 | ### Step 3: Register for Serialization/Deserialization | COMMENT |
| LOW | claude_md/add_option.md | 108 | ### Step 4: Update Options Helper | COMMENT |
| LOW | claude_md/add_option.md | 119 | ### Step 5: Add to Options Settable Test | COMMENT |
| LOW | claude_md/add_option.md | 129 | ### Step 6: Add db_stress Support | COMMENT |
| LOW | claude_md/add_option.md | 153 | ### Step 7: Add db_bench Support | COMMENT |
| LOW | claude_md/add_option.md | 167 | ### Step 8: Add Crash Test Support | COMMENT |
| LOW | claude_md/add_option.md | 183 | ### Step 9: Add Release Note | COMMENT |
| LOW | claude_md/add_option.md | 197 | ### Step 1: Define the Option in Public Header | COMMENT |
| LOW | claude_md/add_option.md | 225 | ### Step 2: Register for Serialization in Table Factory | COMMENT |
| LOW | claude_md/add_option.md | 266 | ### Step 3: Add to Options Settable Test | COMMENT |
| LOW | claude_md/add_option.md | 277 | ### Step 4: Add to Options Test | COMMENT |
| LOW | claude_md/add_option.md | 291 | ### Step 5: Add db_stress Support | COMMENT |
| LOW | claude_md/add_option.md | 324 | ### Step 6: Add db_bench Support | COMMENT |
| LOW | claude_md/add_option.md | 346 | ### Step 7: Add Crash Test Support | COMMENT |
| LOW | claude_md/add_option.md | 357 | ### Step 8: Add Java API Support | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tools/benchmark_ci.py | 94 | # Create a symlink to the db_bench executable | COMMENT |
| MEDIUM | tools/benchmark.sh | 784 | # Define a set of benchmarks. | COMMENT |
| MEDIUM | tools/advisor/advisor/rule_parser_example.py | 23 | # Create the Log STATS object | COMMENT |
| MEDIUM⚡ | tools/advisor/advisor/db_bench_runner.py | 212 | # Create the Log STATS object | COMMENT |
| MEDIUM⚡ | tools/advisor/advisor/db_bench_runner.py | 214 | # Create the PerfContext STATS object | COMMENT |
| MEDIUM⚡ | tools/advisor/advisor/db_bench_runner.py | 222 | # Create the ODS STATS object | COMMENT |
| MEDIUM | tools/advisor/advisor/db_config_optimizer.py | 70 | # Create the updated configuration from the rule's suggestions | COMMENT |
| MEDIUM | tools/cpu_corruption_injector/injector_telemetry.py | 9 | # This module is the injector's OBSERVABILITY layer: it captures where a corruption | COMMENT |
| MEDIUM | buckifier/targets_cfg.py | 8 | # This file is a Meta-specific integration for buck builds, so can | COMMENT |
| MEDIUM | buckifier/rocks_test_runner.sh | 3 | # Create a tmp directory for the test to use | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/db_crashtest_test.py | 10 | CODE | |
| LOW | tools/ldb_test.py | 11 | CODE | |
| LOW | tools/advisor/advisor/db_timeseries_parser.py | 9 | CODE | |
| LOW | tools/advisor/advisor/db_stats_fetcher.py | 11 | CODE | |
| LOW | tools/c_api_gen/validate_generated_equivalence.py | 20 | CODE | |
| LOW | tools/c_api_gen/regen_all.py | 8 | CODE | |
| LOW | tools/c_api_gen/check_api_compatibility.py | 29 | CODE | |
| LOW | tools/c_api_gen/gen_roundtrip_tests.py | 33 | CODE | |
| LOW | tools/c_api_gen/gen_roundtrip_tests.py | 36 | CODE | |
| LOW | tools/c_api_gen/verify_generated_up_to_date.py | 8 | CODE | |
| LOW | tools/c_api_gen/check_api_completeness.py | 26 | CODE | |
| LOW | tools/c_api_gen/generate_c_api.py | 18 | CODE | |
| LOW | tools/c_api_gen/auto_simple_bindings.py | 19 | CODE | |
| LOW | tools/cpu_corruption_injector/runner.py | 8 | CODE | |
| LOW | tools/cpu_corruption_injector/injector_telemetry.py | 27 | CODE | |
| LOW | …u_corruption_injector/runner_randomize_stress_flags.py | 10 | CODE | |
| LOW | tools/cpu_corruption_injector/runner_report.py | 8 | CODE | |
| LOW | tools/cpu_corruption_injector/injector.py | 10 | CODE | |
| LOW | …pu_corruption_injector/injector_register_corruption.py | 9 | CODE | |
| LOW | tools/cpu_corruption_injector/injector_navigate.py | 9 | CODE | |
| LOW | tools/cpu_corruption_injector/runner_execute.py | 8 | CODE | |
| LOW | tools/cpu_corruption_injector/runner_build.py | 8 | CODE | |
| LOW | …u_corruption_injector/injector_critical_instruction.py | 9 | CODE | |
| LOW | …n_injector/tests/test_injector_critical_instruction.py | 17 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim_test.py | 8 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim_test.py | 8 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim_test.py | 8 | CODE | |
| LOW | tools/block_cache_analyzer/block_cache_pysim_test.py | 8 | CODE | |
| LOW | buckifier/util.py | 7 | CODE | |
| LOW | buckifier/util.py | 9 | CODE | |
| LOW | buckifier/targets_builder.py | 4 | CODE | |
| LOW | buckifier/targets_builder.py | 6 | CODE | |
| LOW | buckifier/buckify_rocksdb.py | 5 | CODE | |
| LOW | buckifier/buckify_rocksdb.py | 7 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/ldb_test.py | 90 | except Exception: | CODE |
| LOW | tools/advisor/advisor/db_timeseries_parser.py | 184 | except Exception as e: | CODE |
| LOW | tools/advisor/advisor/db_timeseries_parser.py | 200 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/advisor/advisor/db_bench_runner.py | 160 | print("Error: rmdir " + e.filename + " " + e.strerror) | CODE |
| LOW | tools/advisor/advisor/db_options_parser.py | 320 | except Exception as e: | CODE |
| LOW | tools/advisor/advisor/db_options_parser.py | 339 | except Exception as e: | CODE |
| LOW | tools/cpu_corruption_injector/runner.py | 234 | except Exception: # noqa: BLE001 -- one run's crash is its own ERROR, never aborts the rest | CODE |
| LOW | tools/cpu_corruption_injector/injector.py | 182 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | buckifier/buckify_rocksdb.py | 383 | except Exception: | CODE |
| LOW | build_tools/gtest_parallel.py | 632 | except Exception: | CODE |
| MEDIUM | build_tools/gtest_parallel.py | 628 | def __read_test_times_file(fd): | CODE |
| LOW | build_tools/getdeps_fallback_mirror.py | 46 | except Exception: | CODE |
| LOW | build_tools/getdeps_fallback_mirror.py | 57 | except Exception as ex: | CODE |
| LOW | build_tools/getdeps_fallback_mirror.py | 72 | except Exception: | CODE |
| LOW | build_tools/getdeps_fallback_mirror.py | 165 | except Exception as ex: | CODE |
| LOW | build_tools/getdeps_fallback_mirror.py | 222 | except Exception as ex: | CODE |
| MEDIUM | build_tools/getdeps_fallback_mirror.py | 69 | def file_size(path): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/run_clang_tidy.py | 234 | " mkdir build && cd build && cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON ..\n" | CODE |
| HIGH | tools/c_api_gen/gen_roundtrip_tests.py | 177 | " CheckCondition(rt_len == 4 && rt_v != NULL && " | CODE |
| HIGH | buckifier/util.py | 98 | running `cmd1 && cmd2 && cmd3` | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/generate_random_db.sh | 33 | # Check if deleterange command is supported by grepping ldb --help | COMMENT |
| LOW | tools/ldb_test.py | 855 | # Check if null characters doesn't infer with output format. | COMMENT |
| LOW | build_tools/format-diff.sh | 109 | # Check if this script has already been added to pre-commit hook. | COMMENT |
| LOW | build_tools/format-diff.sh | 172 | # Check if file is missing copyright | COMMENT |
| LOW | build_tools/check_progress.sh | 67 | # Check if failed (exitval != 0 or signal != 0) | COMMENT |
| LOW | build_tools/check_progress.sh | 102 | # Check if tests are running (LOG file exists) | COMMENT |
| LOW | build_tools/getdeps_fallback_mirror.py | 134 | # Check if already valid. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/analyze_txn_stress_test.sh | 3 | # Usage: | COMMENT |
| LOW | util/defer.h | 17 | // Usage example: | COMMENT |
| LOW | buckifier/buckify_rocksdb.py | 21 | # Usage: | COMMENT |
| LOW | build_tools/rockstest.sh | 20 | # Example usage: | COMMENT |
| LOW | build_tools/rocksptest.sh | 26 | # Example usage: | COMMENT |
| LOW | .github/scripts/ccache-trim.sh | 4 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | include/rocksdb/advanced_cache.h | 135 | // "placeholder" cache entries with nullptr object. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/cpu_corruption_injector/runner.py | 132 | def _setup_logging(report_dir: str) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | buckifier/targets_builder.py | 33 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | build_tools/gtest_parallel.py | 311 | def run_task(self, task, timeout_per_test): | CODE |