Qdrant - High-performance, massive-scale Vector Database and Vector Search Engine for the next generation of AI. Also available in the cloud https://cloud.qdrant.io/
This report summarizes scanner evidence for qdrant/qdrant, a Rust project with 35,345 GitHub stars. SynthScan examined 1,086,828 lines of code across 2453 source files, recording 2947 pattern matches distributed across 20 syntactic categories. The legacy adjusted pattern signal is 3.7 (Low 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.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 2284 finding(s).
Are imports declared and package/API names verified? 171 finding(s).
Are wrappers, guards, and repeated structures necessary? 1143 finding(s).
Which changes need focused human review? 2947 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 2947 distinct pattern matches across 20 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 |
|---|---|---|---|---|
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 128 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 130 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 137 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 140 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 148 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 151 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 170 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 174 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 182 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_substring_match.py | 186 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 112 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 115 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 138 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 140 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 156 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 158 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 166 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 169 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 192 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 194 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_any_empty.py | 210 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/openapi/test_match_any_empty.py | 227 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_prefix_match.py | 114 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_prefix_match.py | 116 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_prefix_match.py | 123 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_prefix_match.py | 126 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_prefix_match.py | 171 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_prefix_match.py | 174 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_prefix_match.py | 197 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_prefix_match.py | 200 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 98 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 100 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 126 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 128 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 156 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 160 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 168 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 170 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 208 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 210 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 238 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 243 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 275 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/openapi/test_match_except_empty.py | 278 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …nsensus_tests/test_streaming_snapshot_receiver_kill.py | 199 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …nsensus_tests/test_streaming_snapshot_receiver_kill.py | 213 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | lib/collection/src/wal_delta.rs | 1011 | // ┌───┬───────►┌───┐ | COMMENT |
| MEDIUM | lib/collection/src/wal_delta.rs | 1013 | // └─▲─┴───────►└─▲─┘ | COMMENT |
| MEDIUM | lib/collection/src/wal_delta.rs | 1035 | // │ B ├───────►│ E │ | COMMENT |
| MEDIUM | lib/collection/src/wal_delta.rs | 1041 | // │ E ├───────►│ A │ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/shard_holder/resharding.rs | 582 | // ┌────────────┐ ┌──────────┐ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/shard_holder/resharding.rs | 588 | // └────────────┘ └──────────┘ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/shard_holder/resharding.rs | 591 | // ┌────────────┐ ┌──────────┐ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/shard_holder/resharding.rs | 597 | // └────────────┘ └──────────┘ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/replica_set/mod.rs | 59 | // ┌──────────────┐ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/replica_set/mod.rs | 63 | // └──────┬───────┘ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/replica_set/mod.rs | 64 | // │ Report created ┌───────────┐ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/replica_set/mod.rs | 65 | // └────────────────────► │ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/replica_set/mod.rs | 67 | // ┌─────────────────────┤ │ | COMMENT |
| MEDIUM⚡ | lib/collection/src/shards/replica_set/mod.rs | 68 | // │ └───────────┘ | COMMENT |
| 334 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .config/nextest.toml | 1 | [profile.ci] | COMMENT |
| LOW | tools/uio-trace-visualizer.html | 61 | #tree { | COMMENT |
| LOW | tools/uio-trace-visualizer.html | 81 | #pal i.none { box-shadow: inset 0 0 0 1px var(--muted); } | COMMENT |
| LOW | tools/smaps-view.py | 21 | COMMENT | |
| LOW | tools/smaps-view.py | 41 | # ShmemPmdMapped: 0 kB | COMMENT |
| LOW | config/config.yaml | 1 | log_level: INFO | COMMENT |
| LOW | config/config.yaml | 21 | COMMENT | |
| LOW | config/config.yaml | 41 | # timeout_sec: 30 | COMMENT |
| LOW | config/config.yaml | 61 | # connect_timeout_sec: 5 | COMMENT |
| LOW | config/config.yaml | 81 | # timeout_sec: 30 | COMMENT |
| LOW | config/config.yaml | 101 | # payload: | COMMENT |
| LOW | config/config.yaml | 141 | # Number of parallel threads used for search operations. If 0 - auto selection. | COMMENT |
| LOW | config/config.yaml | 161 | COMMENT | |
| LOW | config/config.yaml | 181 | #io_uring: disabled | COMMENT |
| LOW | config/config.yaml | 201 | # | COMMENT |
| LOW | config/config.yaml | 221 | # If not set, the default value will be used. | COMMENT |
| LOW | config/config.yaml | 241 | # flush_interval_sec: 5 | COMMENT |
| LOW | config/config.yaml | 261 | full_scan_threshold_kb: 10000 | COMMENT |
| LOW | config/config.yaml | 301 | COMMENT | |
| LOW | config/config.yaml | 321 | COMMENT | |
| LOW | config/config.yaml | 341 | # If null - no limit. | COMMENT |
| LOW | config/config.yaml | 361 | #quotas: | COMMENT |
| LOW | config/config.yaml | 401 | # Default: 5 | COMMENT |
| LOW | config/config.yaml | 421 | enable_tls: false | COMMENT |
| LOW | config/config.yaml | 441 | # If you enable this you should also enable TLS. | COMMENT |
| LOW | config/config.yaml | 461 | # swap the two. | COMMENT |
| LOW | config/config.yaml | 481 | # Disabling this can mitigate SSRF risks in environments where the Qdrant node | COMMENT |
| LOW | config/config.yaml | 501 | # Use TLS for communication between peers | COMMENT |
| LOW | config/config.yaml | 521 | telemetry_disabled: false | COMMENT |
| LOW | config/config.yaml | 541 | COMMENT | |
| LOW | config/config.yaml | 561 | # # Where to write audit log entries: | COMMENT |
| LOW | tests/openapi_consistency_check.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tests/grpc_consistency_check.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tests/basic_grpc_test.sh | 341 | # use the reflection service to get the shape of a specific message | COMMENT |
| LOW | tests/basic_grpc_test.sh | 361 | #curl -L -X POST "http://$QDRANT_HOST/collections/test_collection/points/search" \ | COMMENT |
| LOW | tests/openapi/test_turbo16_storage.py | 241 | scores = [hit['score'] for hit in result] | COMMENT |
| LOW | tests/openapi/test_turbo16_storage.py | 721 | assert scores == sorted(scores) | COMMENT |
| LOW | tests/openapi/test_turbo16_storage.py | 921 | # (truncation and saturation, test_multi_vector_uint8.py). The turbo16 | COMMENT |
| LOW | tests/openapi/test_match_any_empty.py | 201 | COMMENT | |
| LOW | tests/openapi/test_turbo4_storage.py | 241 | scores = [hit['score'] for hit in result] | COMMENT |
| LOW | tests/openapi/test_turbo4_storage.py | 721 | assert scores == sorted(scores) | COMMENT |
| LOW | tests/openapi/test_turbo4_storage.py | 921 | # (truncation and saturation, test_multi_vector_uint8.py). The turbo4 | COMMENT |
| LOW | tests/openapi/test_turbo8_storage.py | 241 | scores = [hit['score'] for hit in result] | COMMENT |
| LOW | tests/openapi/test_turbo8_storage.py | 721 | assert scores == sorted(scores) | COMMENT |
| LOW | tests/openapi/test_turbo8_storage.py | 921 | # (truncation and saturation, test_multi_vector_uint8.py). The turbo8 | COMMENT |
| LOW | tests/consensus_tests/test_snapshot_recovery.py | 181 | # happen to be balanced across peers. Peer 0 observes every replica of the | COMMENT |
| LOW | tests/consensus_tests/test_shard_wal_delta_transfer.py | 661 | # delta transfer will only transfer changes since the last seen clocks, missing | COMMENT |
| LOW | tests/consensus_tests/test_resharding.py | 321 | # Inject a delay on EVERY peer. The staging delay is broadcast to all | COMMENT |
| LOW | …ensus_tests/test_resharding_set_replica_dead_replay.py | 101 | ) | COMMENT |
| LOW | …us_tests/test_shard_snapshot_transfer_missing_point.py | 21 | MISSING_ID_START = 10_000_000 | COMMENT |
| LOW | …us_tests/test_shard_snapshot_transfer_missing_point.py | 121 | # Bounded retries (queue-level + driver-level) can lose the race under sustained | COMMENT |
| LOW | tests/consensus_tests/test_shard_stream_transfer.py | 281 | COMMENT | |
| LOW | tests/consensus_tests/test_shard_stream_transfer.py | 481 | COMMENT | |
| LOW | …nsensus_tests/test_streaming_snapshot_receiver_kill.py | 201 | # | COMMENT |
| LOW | tests/consensus_tests/test_reinit_removed_peer.py | 41 | res = requests.delete(f"{peer_api_uris[0]}/cluster/peer/{removed_peer_id}?timeout=60") | COMMENT |
| LOW | tests/consensus_tests/test_reinit_removed_peer.py | 161 | for i in range(3): | COMMENT |
| LOW | …sts/consensus_tests/test_collection_recovery_limits.py | 161 | peer_url = start_peer(killed_peer_dir, "peer_0_restarted.log", bootstrap_url, port=restart_port) | COMMENT |
| LOW | tests/consensus_tests/test_failed_snapshot_recovery.py | 41 | r = requests.put(f"{peer_api_uri}/collections/{COLLECTION_NAME}/snapshots/recover", | COMMENT |
| LOW | tests/consensus_tests/test_routing_token.py | 181 | # Reads are routed through every peer below, so every peer must see both replicas | COMMENT |
| LOW | tests/consensus_tests/test_snapshot_upload.py | 161 | assert len(new_sparse_search_result) == len(sparse_search_result) | COMMENT |
| 1470 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/smaps-view.py | 137 | def calculate_cache_percentage(pid: int, pattern: str, verbose: bool = False) -> Dict[str, float]: | CODE |
| LOW | tests/openapi/test_collection_created_at.py | 28 | def test_collection_created_at(collection_name): | CODE |
| LOW | tests/openapi/test_query_indexes.py | 119 | def test_filtered_query_results_same_for_different_indexes(query, collection_name): | CODE |
| LOW | tests/openapi/test_query_indexes.py | 154 | def test_filtered_query_groups_results_same_for_different_indexes(collection_name): | CODE |
| LOW | tests/openapi/test_query_indexes.py | 195 | def test_filtered_query_batches_results_same_for_different_indexes(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 52 | def test_patch_collection_full(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 84 | def test_patch_collection_partially(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 106 | def test_strict_mode_query_limit_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 137 | def test_strict_mode_timeout_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 138 | def search_request_with_timeout(timeout): | CODE |
| LOW | tests/openapi/test_strictmode.py | 165 | def test_strict_mode_unindexed_filter_keyword_read_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 166 | def search_request_with_filter(): | CODE |
| LOW | tests/openapi/test_strictmode.py | 220 | def test_strict_mode_unindexed_filter_integer_read_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 221 | def search_request_with_filter(): | CODE |
| LOW | tests/openapi/test_strictmode.py | 305 | def test_strict_mode_unindexed_filter_phrase_read_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 326 | def search_request_with_filter(kind: str): | CODE |
| LOW | tests/openapi/test_strictmode.py | 371 | def test_strict_mode_unindexed_filter_write_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 372 | def update_request_with_filter(): | CODE |
| LOW | tests/openapi/test_strictmode.py | 427 | def test_strict_mode_max_ef_hnsw_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 461 | def test_strict_mode_allow_exact_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 495 | def test_strict_mode_search_max_oversampling_validation(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 532 | def test_strict_mode_upsert_max_batch_size(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 574 | def test_strict_mode_update_many_upsert_max_batch_size(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 622 | def test_strict_mode_update_vectors_max_batch_size(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 670 | def test_strict_mode_search_max_batch_size(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 706 | def test_strict_mode_max_collection_size_upsert(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 751 | def test_strict_mode_max_sparse_length_upsert(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 824 | def test_strict_mode_max_collection_size_upsert_batch(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 873 | def test_strict_mode_max_multivector_size_upsert(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1020 | def test_strict_mode_read_rate_limiting(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1077 | def test_strict_mode_max_collection_payload_size_upsert(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1122 | def test_strict_mode_max_collection_payload_size_upsert_batch(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1171 | def test_strict_mode_max_collection_point_count_upsert_batch(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1221 | def test_strict_mode_write_rate_limiting(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1291 | def test_strict_mode_write_rate_limiting_filtered_update_op(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1331 | def test_strict_mode_write_rate_limiting_batch_update_op(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1373 | def test_filter_many_conditions(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1412 | def test_filter_large_condition(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1450 | def test_filter_nested_condition(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1523 | def test_strict_mode_formula_expression(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1583 | def test_strict_mode_read_rate_limiting_small_replenish(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1626 | def test_strict_mode_unset_rate_limiting_config(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1682 | def test_strict_mode_recommendation_best_score_read_rate_limiting(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1755 | def test_strict_mode_retrieve_read_rate_limiting(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1819 | def test_scroll_filter_many_conditions(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1864 | def test_strict_mode_group_limits(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1931 | def test_strict_mode_distance_matrix_limits(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1962 | def test_read_rate_limiter_many_vectors(full_collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1972 | def check_multivector_query_raw(should_succeed: bool): | CODE |
| LOW | tests/openapi/test_strictmode.py | 1987 | def check_multivector_query_id(should_succeed: bool): | CODE |
| LOW | tests/openapi/test_strictmode.py | 2036 | def test_strict_mode_group_by_unindexed(collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 2188 | def test_strict_mode_full_scan(full_collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 2296 | def test_strict_mode_full_scan_simple(full_collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 2354 | def test_strict_mode_multitenant_full_scan(full_collection_name): | CODE |
| LOW | tests/openapi/test_strictmode.py | 2469 | def test_strict_mode_payload_index_count(collection_name): | CODE |
| LOW | tests/openapi/test_multi_vector.py | 14 | def multivector_collection_setup( | CODE |
| LOW | tests/openapi/test_multi_vector.py | 46 | def test_multi_vector_float_persisted(collection_name): | CODE |
| LOW | tests/openapi/test_multi_vector.py | 138 | def test_multi_vector_validation(collection_name): | CODE |
| LOW | tests/openapi/test_multi_vector.py | 374 | def test_multi_with_euclidean(collection_name): | CODE |
| LOW | tests/openapi/test_multi_vector_unnamed.py | 15 | def multivector_collection_setup( | CODE |
| 583 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/smaps-view.py | 18 | CODE | |
| LOW | tests/openapi/test_multi_vector_unnamed.py | 2 | CODE | |
| LOW | tests/openapi/test_multi_vector_uint8.py | 2 | CODE | |
| LOW | tests/openapi/test_conditional_update.py | 1 | CODE | |
| LOW | tests/openapi/test_snapshot.py | 1 | CODE | |
| LOW | tests/openapi/test_snapshot.py | 4 | CODE | |
| LOW | tests/openapi/test_filtered_delete.py | 6 | CODE | |
| LOW | tests/consensus_tests/test_shard_snapshot_deadlock.py | 8 | CODE | |
| LOW | tests/consensus_tests/test_shard_consistency.py | 6 | CODE | |
| LOW | tests/consensus_tests/test_hw_measurement.py | 6 | CODE | |
| LOW | tests/consensus_tests/test_collection_created_after.py | 3 | CODE | |
| LOW | …s/consensus_tests/test_shard_transfer_rate_limiting.py | 4 | CODE | |
| LOW | tests/consensus_tests/test_snapshot_recovery.py | 5 | CODE | |
| LOW | tests/consensus_tests/test_custom_sharding.py | 6 | CODE | |
| LOW | tests/consensus_tests/test_custom_sharding.py | 7 | CODE | |
| LOW | tests/consensus_tests/test_read_consistency.py | 7 | CODE | |
| LOW | …s/consensus_tests/test_shard_stream_transfer_turbo4.py | 6 | CODE | |
| LOW | …sts/test_resharding_down_revert_crash_orphans_state.py | 17 | CODE | |
| LOW | tests/consensus_tests/test_many_collections.py | 3 | CODE | |
| LOW | tests/consensus_tests/test_strict_mode.py | 5 | CODE | |
| LOW | tests/consensus_tests/test_recover_dead_node.py | 3 | CODE | |
| LOW | tests/consensus_tests/test_update_concurrency.py | 5 | CODE | |
| LOW | tests/consensus_tests/test_shard_wal_delta_transfer.py | 8 | CODE | |
| LOW | tests/consensus_tests/test_sparse_points_search.py | 3 | CODE | |
| LOW | …sensus_tests/test_shard_snapshot_clocks_consistency.py | 7 | CODE | |
| LOW | …sensus_tests/test_shard_snapshot_clocks_consistency.py | 8 | CODE | |
| LOW | …sensus_tests/test_shard_snapshot_clocks_consistency.py | 9 | CODE | |
| LOW | tests/consensus_tests/test_recovery_mode.py | 2 | CODE | |
| LOW | …ests/test_shard_snapshot_transfer_clear_and_restart.py | 5 | CODE | |
| LOW | …onsensus_tests/test_snapshot_aborted_transfer_proxy.py | 8 | CODE | |
| LOW | tests/consensus_tests/test_replicate_points.py | 4 | CODE | |
| LOW | tests/consensus_tests/test_collection_sharding.py | 3 | CODE | |
| LOW | tests/consensus_tests/test_points_query.py | 3 | CODE | |
| LOW | tests/consensus_tests/test_resharding.py | 7 | CODE | |
| LOW | …/consensus_tests/test_disable_url_snapshot_recovery.py | 6 | CODE | |
| LOW | …nsus_tests/test_streaming_snapshot_consensus_freeze.py | 24 | CODE | |
| LOW | …ensus_tests/test_resharding_set_replica_dead_replay.py | 25 | CODE | |
| LOW | tests/consensus_tests/test_collection_created_before.py | 3 | CODE | |
| LOW | tests/consensus_tests/test_drop_replica_condition.py | 7 | CODE | |
| LOW | tests/consensus_tests/test_points_recommendation.py | 3 | CODE | |
| LOW | …sts/consensus_tests/test_resharding_abort_live_lock.py | 3 | CODE | |
| LOW | …sts/consensus_tests/test_resharding_abort_live_lock.py | 5 | CODE | |
| LOW | …s/consensus_tests/test_cluster_operation_coalescing.py | 5 | CODE | |
| LOW | tests/consensus_tests/test_resharding_replay.py | 11 | CODE | |
| LOW | …sus_tests/test_shard_snapshot_transfer_stale_sender.py | 4 | CODE | |
| LOW | tests/consensus_tests/test_collection_recovery.py | 5 | CODE | |
| LOW | …consensus_tests/test_shard_snapshot_transfer_cancel.py | 6 | CODE | |
| LOW | tests/consensus_tests/test_triple_replication.py | 5 | CODE | |
| LOW | …ts/test_resharding_down_abort_converges_after_crash.py | 13 | CODE | |
| LOW | tests/consensus_tests/test_cluster_rejoin.py | 10 | CODE | |
| LOW | tests/consensus_tests/test_named_vector_crud.py | 5 | CODE | |
| LOW | tests/consensus_tests/test_named_vector_crud.py | 5 | CODE | |
| LOW | tests/consensus_tests/test_named_vector_crud.py | 7 | CODE | |
| LOW | tests/consensus_tests/test_tenant_promotion.py | 5 | CODE | |
| LOW | tests/consensus_tests/test_tenant_promotion.py | 6 | CODE | |
| LOW | tests/consensus_tests/test_force_delete_peer.py | 5 | CODE | |
| LOW | tests/consensus_tests/test_dirty_shard_crash_loop.py | 23 | CODE | |
| LOW | …us_tests/test_shard_snapshot_transfer_missing_point.py | 6 | CODE | |
| LOW | tests/consensus_tests/test_cluster_metadata.py | 4 | CODE | |
| LOW | …s/consensus_tests/test_filter_update_ops_replicated.py | 16 | CODE | |
| 69 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …sts/test_resharding_down_revert_crash_orphans_state.py | 137 | except requests.RequestException: | CODE |
| HIGH | …ensus_tests/test_resharding_set_replica_dead_replay.py | 141 | except requests.RequestException: | CODE |
| HIGH | …ts/test_resharding_down_abort_converges_after_crash.py | 95 | except requests.RequestException: | CODE |
| HIGH | tests/consensus_tests/test_dirty_shard_crash_loop.py | 48 | except requests.exceptions.RequestException: | CODE |
| HIGH | …us_tests/test_shard_snapshot_transfer_missing_point.py | 70 | except requests.exceptions.RequestException: | CODE |
| HIGH | tests/consensus_tests/test_shard_transfer_deferred.py | 199 | except requests.exceptions.ReadTimeout: | CODE |
| HIGH | tests/consensus_tests/test_shard_transfer_deferred.py | 365 | except requests.exceptions.ReadTimeout: | CODE |
| HIGH | …s/consensus_tests/test_snapshot_backpressure_freeze.py | 102 | except requests.RequestException: | CODE |
| HIGH | …s/consensus_tests/test_snapshot_backpressure_freeze.py | 87 | except requests.RequestException: | CODE |
| HIGH | tests/consensus_tests/peer_proxy.py | 138 | except OSError: | CODE |
| HIGH | tests/consensus_tests/peer_proxy.py | 376 | except FutureTimeoutError: | CODE |
| HIGH | tests/consensus_tests/peer_proxy.py | 426 | except OSError: | CODE |
| HIGH | tests/manual/slow_snapshot_download.py | 223 | except OSError: | CODE |
| HIGH | tests/manual/slow_snapshot_download.py | 194 | except OSError: | CODE |
| HIGH | tests/e2e_tests/conftest.py | 126 | except ImageNotFound: | CODE |
| HIGH | tests/e2e_tests/client_utils.py | 34 | except Exception: | CODE |
| HIGH | tests/e2e_tests/client_utils.py | 53 | except Exception: | CODE |
| HIGH | tests/e2e_tests/client_utils.py | 69 | except Exception: | CODE |
| HIGH | tests/e2e_tests/test_data_compatibility.py | 372 | except NotFound: | CODE |
| HIGH | tests/e2e_tests/utils.py | 58 | except requests.exceptions.RequestException: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tools/smaps-view.py | 177 | print(f"Error: Could not find /proc/{pid}/smaps", file=sys.stderr) | CODE |
| LOW⚡ | tools/smaps-view.py | 179 | except Exception as e: | CODE |
| MEDIUM⚡ | tools/smaps-view.py | 180 | print(f"Error processing smaps: {e}", file=sys.stderr) | CODE |
| LOW | tests/consensus_tests/test_custom_sharding.py | 331 | except Exception as e: | CODE |
| LOW | …sts/test_resharding_down_revert_crash_orphans_state.py | 170 | except Exception: | CODE |
| LOW | …nsus_tests/test_streaming_snapshot_consensus_freeze.py | 80 | except Exception as e: | CODE |
| LOW | …nsus_tests/test_streaming_snapshot_consensus_freeze.py | 93 | except Exception as e: | CODE |
| LOW | …nsus_tests/test_streaming_snapshot_consensus_freeze.py | 107 | except Exception as e: | CODE |
| LOW | …ts/test_resharding_down_abort_converges_after_crash.py | 126 | except Exception: | CODE |
| LOW⚡ | tests/consensus_tests/test_cluster_rejoin.py | 566 | except Exception: | CODE |
| MEDIUM | tests/consensus_tests/test_cluster_rejoin.py | 562 | def old_peer_consensus_stopped(): | CODE |
| LOW | …s/consensus_tests/test_filter_update_ops_replicated.py | 52 | except Exception: | CODE |
| LOW | …nsensus_tests/test_streaming_snapshot_receiver_kill.py | 82 | except Exception as e: # noqa: BLE001 - diagnostic process | CODE |
| LOW | …nsensus_tests/test_streaming_snapshot_receiver_kill.py | 101 | except Exception as e: # noqa: BLE001 - diagnostic process | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 798 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 806 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 814 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 823 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 830 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 837 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 845 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 853 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 861 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 870 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 879 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 890 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 901 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 909 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 917 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 925 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 932 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 958 | except Exception as e: | CODE |
| LOW⚡ | tests/consensus_tests/utils.py | 976 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/utils.py | 70 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_failed_snapshot_recovery.py | 198 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_failed_snapshot_recovery.py | 217 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_failed_snapshot_recovery.py | 331 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_failed_snapshot_recovery.py | 375 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_io_uring_eintr.py | 53 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_consensus_compaction.py | 197 | except Exception: | CODE |
| LOW | tests/consensus_tests/test_consensus_compaction.py | 224 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_listener_node.py | 40 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_listener_node.py | 47 | except Exception as e: | CODE |
| LOW | tests/consensus_tests/test_snapshot_recovery_kill.py | 19 | except Exception: | CODE |
| LOW | tests/consensus_tests/test_resharding_extras.py | 232 | except Exception as e: | CODE |
| LOW | tests/manual/slow_snapshot_download.py | 148 | except Exception as e: # noqa: BLE001 | CODE |
| LOW | tests/e2e_tests/conftest.py | 38 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/conftest.py | 287 | except Exception as docker_error: | CODE |
| LOW⚡ | tests/e2e_tests/client_utils.py | 53 | except Exception: | CODE |
| LOW⚡ | tests/e2e_tests/client_utils.py | 69 | except Exception: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 34 | except Exception: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 81 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 98 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 240 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 251 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 268 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 295 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 334 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/client_utils.py | 469 | except Exception as e: | CODE |
| LOW | tests/e2e_tests/test_data_compatibility.py | 157 | except Exception as e: | CODE |
| 14 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/openapi/test_wait_timeout.py | 103 | "text": "Lorem ipsum, dolor sit amet.", | CODE |
| LOW | tests/openapi/test_wait_timeout.py | 103 | "text": "Lorem ipsum, dolor sit amet.", | CODE |
| LOW | tests/openapi/test_wait_timeout.py | 137 | "text": "Lorem ipsum, dolor sit amet.", | CODE |
| LOW | tests/openapi/test_wait_timeout.py | 137 | "text": "Lorem ipsum, dolor sit amet.", | CODE |
| LOW | tests/openapi/test_wait_timeout.py | 171 | "text": "Lorem ipsum, dolor sit amet.", | CODE |
| LOW | tests/openapi/test_wait_timeout.py | 171 | "text": "Lorem ipsum, dolor sit amet.", | CODE |
| LOW⚡ | tests/consensus_tests/auth_tests/test_jwt_access.py | 965 | fake_name = random_str() | CODE |
| LOW⚡ | tests/consensus_tests/auth_tests/test_jwt_access.py | 968 | grpc_request={"collection_name": fake_name}, | CODE |
| LOW⚡ | tests/consensus_tests/auth_tests/test_jwt_access.py | 969 | path_params={"collection_name": fake_name}, | CODE |
| LOW⚡ | tests/consensus_tests/auth_tests/test_jwt_access.py | 1357 | fake_name = random_str() | CODE |
| LOW⚡ | tests/consensus_tests/auth_tests/test_jwt_access.py | 1362 | "snapshot_name": fake_name, | CODE |
| LOW⚡ | tests/consensus_tests/auth_tests/test_jwt_access.py | 1364 | grpc_request={"collection_name": COLL_NAME, "snapshot_name": fake_name}, | CODE |
| LOW | tests/e2e_tests/client_utils.py | 124 | "Lorem ipsum dolor sit amet consectetur adipiscing elit", | CODE |
| LOW | tests/e2e_tests/client_utils.py | 124 | "Lorem ipsum dolor sit amet consectetur adipiscing elit", | CODE |
| LOW | lib/collection/tests/integration/multi_vec_test.rs | 110 | payload: Some(serde_json::from_str(r#"{"number": "John Doe"}"#).unwrap()), | CODE |
| LOW | lib/collection/tests/integration/pagination_test.rs | 34 | payload: Some(serde_json::from_str(r#"{"number": "John Doe"}"#).unwrap()), | CODE |
| LOW | …llection/tests/integration/continuous_snapshot_test.rs | 130 | payload: Some(serde_json::from_str(r#"{"number": "John Doe"}"#).unwrap()), | CODE |
| LOW | …collection/tests/integration/snapshot_recovery_test.rs | 108 | payload: Some(serde_json::from_str(r#"{"number": "John Doe"}"#).unwrap()), | CODE |
| LOW | lib/collection/tests/integration/grouping_test.rs | 457 | const BODY_TEXT: &str = "lorem ipsum dolor sit amet"; | CODE |
| LOW | lib/collection/tests/integration/grouping_test.rs | 457 | const BODY_TEXT: &str = "lorem ipsum dolor sit amet"; | CODE |
| LOW | …/segment/tests/integration/segment_on_disk_snapshot.rs | 49 | "names": ["John Doe", "Bill Murray"], | CODE |
| LOW | lib/segment/src/segment/tests/mod.rs | 128 | "name": "John Doe", | CODE |
| LOW | lib/segment/src/segment/tests/mod.rs | 276 | "name": "John Doe", | CODE |
| LOW | lib/segment/src/segment/tests/mod.rs | 398 | "name": "John Doe", | CODE |
| LOW | …/src/payload_storage/in_memory_payload_storage_impl.rs | 175 | "name": "John Doe", | CODE |
| LOW | …/src/payload_storage/in_memory_payload_storage_impl.rs | 195 | "John Doe".to_string().into(), | CODE |
| LOW | …/src/payload_storage/in_memory_payload_storage_impl.rs | 225 | let payload: Payload = serde_json::from_str(r#"{"name": "John Doe"}"#).unwrap(); | CODE |
| LOW | …/src/payload_storage/in_memory_payload_storage_impl.rs | 250 | let payload: Payload = serde_json::from_str(r#"{"name": "John Doe"}"#).unwrap(); | CODE |
| LOW | …/src/payload_storage/in_memory_payload_storage_impl.rs | 265 | "name": "John Doe", | CODE |
| LOW | lib/segment/src/payload_storage/payload_storage_enum.rs | 324 | let payload: Payload = serde_json::from_str(r#"{"name": "John Doe"}"#).unwrap(); | CODE |
| LOW | lib/segment/src/index/struct_payload_index/tests.rs | 31 | "name": "John Doe" | CODE |
| LOW | lib/segment/src/index/struct_payload_index/tests.rs | 125 | let payload: Payload = serde_json::from_str(r#"{ "name": "John Doe" }"#).unwrap(); | CODE |
| LOW | lib/segment/src/index/struct_payload_index/tests.rs | 165 | view.query_points(&name_filter(&key, "John Doe"), &AtomicBool::new(false)) | CODE |
| LOW | lib/segment/src/index/struct_payload_index/tests.rs | 189 | let payload: Payload = serde_json::from_str(r#"{ "name": "John Doe" }"#).unwrap(); | CODE |
| LOW | lib/bm25/src/lib.rs | 238 | "foo bar foo lorem ipsum dolor sit amet consectetur adipiscing", | CODE |
| LOW | lib/bm25/src/lib.rs | 238 | "foo bar foo lorem ipsum dolor sit amet consectetur adipiscing", | CODE |
| LOW | src/common/inference/bm25_inference.rs | 179 | "lorem ipsum dolor sit amet consectetur adipiscing elit", | CODE |
| LOW | src/common/inference/bm25_inference.rs | 179 | "lorem ipsum dolor sit amet consectetur adipiscing elit", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | lib/collection/src/collection/mod.rs | 573 | // If not initialized yet, we need to check if it was initialized by this call | COMMENT |
| LOW⚡ | lib/collection/src/tests/deferred_points_dedup.rs | 233 | // Step 1: Insert initial batch of points (wait=true to ensure they are persisted) | COMMENT |
| LOW⚡ | lib/collection/src/tests/deferred_points_dedup.rs | 243 | // Step 2: Overwrite all point values with new random vectors — this triggers CoW. | COMMENT |
| LOW | lib/collection/src/tests/deferred_points_dedup.rs | 270 | // Step 3: Overwrite again — this creates another round of CoW on top of the | COMMENT |
| LOW | lib/collection/src/tests/deferred_points_dedup.rs | 295 | // Step 4: Assert no duplicate non-deferred point IDs across segments | COMMENT |
| LOW | lib/gpu/src/pipeline.rs | 99 | // Before we start, we need to check if the device supports dynamic subgroup size. | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1409 | // Step 1: Write initial data and flush | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1419 | // Step 2: Open a reader | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1424 | // Step 3: Verify reader sees initial data | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1430 | // Step 4: live_reload when nothing changed must keep serving the same data | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1435 | // Step 5: Write more data via writable storage and flush | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1442 | // Step 6: live_reload should make new data accessible | COMMENT |
| LOW | …rc/segment/tests/test_immutable_payload_index_files.rs | 87 | // Step 1: appendable source segment with payload + field indices. | COMMENT |
| LOW | …rc/segment/tests/test_immutable_payload_index_files.rs | 135 | // Step 2: build a non-appendable target via SegmentBuilder. Mmap vector | COMMENT |
| LOW⚡ | …x/field_index/geo_index/on_disk_geo_index/lifecycle.rs | 502 | // Step 1: binary search to find the index of the `start` entry. With a | COMMENT |
| LOW | …x/field_index/geo_index/on_disk_geo_index/lifecycle.rs | 527 | // Step 2: read entries in chunks starting from `start`. Chunks may | COMMENT |
| LOW | …x/field_index/geo_index/on_disk_geo_index/lifecycle.rs | 578 | // Step 3: read the collected ranges and accumulate unique, | COMMENT |
| LOW | src/snapshots.rs | 103 | // if it does, we need to check if we want to overwrite it | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | lib/collection/src/tests/deferred_points_dedup.rs | 233 | // Step 1: Insert initial batch of points (wait=true to ensure they are persisted) | COMMENT |
| LOW⚡ | lib/collection/src/tests/deferred_points_dedup.rs | 243 | // Step 2: Overwrite all point values with new random vectors — this triggers CoW. | COMMENT |
| LOW | lib/collection/src/tests/deferred_points_dedup.rs | 270 | // Step 3: Overwrite again — this creates another round of CoW on top of the | COMMENT |
| LOW | lib/collection/src/tests/deferred_points_dedup.rs | 295 | // Step 4: Assert no duplicate non-deferred point IDs across segments | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1409 | // Step 1: Write initial data and flush | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1419 | // Step 2: Open a reader | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1424 | // Step 3: Verify reader sees initial data | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1430 | // Step 4: live_reload when nothing changed must keep serving the same data | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1435 | // Step 5: Write more data via writable storage and flush | COMMENT |
| LOW⚡ | lib/blobstore/src/blobstore/tests.rs | 1442 | // Step 6: live_reload should make new data accessible | COMMENT |
| LOW | …rc/segment/tests/test_immutable_payload_index_files.rs | 87 | // Step 1: appendable source segment with payload + field indices. | COMMENT |
| LOW | …rc/segment/tests/test_immutable_payload_index_files.rs | 135 | // Step 2: build a non-appendable target via SegmentBuilder. Mmap vector | COMMENT |
| LOW⚡ | …x/field_index/geo_index/on_disk_geo_index/lifecycle.rs | 502 | // Step 1: binary search to find the index of the `start` entry. With a | COMMENT |
| LOW | …x/field_index/geo_index/on_disk_geo_index/lifecycle.rs | 527 | // Step 2: read entries in chunks starting from `start`. Chunks may | COMMENT |
| LOW | …x/field_index/geo_index/on_disk_geo_index/lifecycle.rs | 578 | // Step 3: read the collected ranges and accumulate unique, | COMMENT |
| LOW | lib/edge/publish/examples/src/bin/restore-snapshot.rs | 99 | // NOTE: This function is copy-pasted from PyEdgeShard::update_from_snapshot | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/openapi/test_turbo16_storage.py | 930 | # NaN/Inf serialize to JSON null, so a non-number element is the first | COMMENT |
| HIGH | tests/openapi/test_filter_is_empty.py | 149 | # Point 1 has an explicit null, point 2 has no payload, point 3 has a value. | COMMENT |
| HIGH | tests/openapi/test_turbo4_storage.py | 930 | # NaN/Inf serialize to JSON null, so a non-number element is the first | COMMENT |
| HIGH | tests/openapi/test_turbo8_storage.py | 930 | # NaN/Inf serialize to JSON null, so a non-number element is the first | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/smaps-view.py | 60 | CODE | |
| LOW | tools/callgraph/callgraph.py | 481 | CODE | |
| LOW | tools/callgraph/callgraph.py | 314 | CODE | |
| LOW | tests/openapi/test_service.py | 116 | CODE | |
| LOW | tests/consensus_tests/test_peer_proxy.py | 118 | CODE | |
| LOW | tests/consensus_tests/test_peer_proxy.py | 241 | CODE | |
| LOW | tests/consensus_tests/test_shard_wal_delta_transfer.py | 51 | CODE | |
| LOW | tests/consensus_tests/test_snapshot_download_proxy.py | 187 | CODE | |
| LOW | tests/consensus_tests/test_two_follower_nodes_down.py | 28 | CODE | |
| LOW | tests/consensus_tests/test_remove_leader_two_node.py | 45 | CODE | |
| LOW | tests/consensus_tests/utils.py | 527 | CODE | |
| LOW | tests/consensus_tests/test_write_ordering.py | 13 | CODE | |
| LOW | tests/consensus_tests/peer_proxy.py | 354 | CODE | |
| LOW | tests/consensus_tests/test_resharding_deferred.py | 183 | CODE | |
| LOW | tests/manual/slow_snapshot_download.py | 142 | CODE | |
| LOW | tests/manual/test_memory_reporting.py | 24 | CODE | |
| LOW | tests/e2e_tests/conftest.py | 63 | CODE | |
| LOW | tests/e2e_tests/conftest.py | 247 | CODE | |
| LOW | tests/e2e_tests/client_utils.py | 60 | CODE | |
| LOW | tests/e2e_tests/client_utils.py | 102 | CODE | |
| LOW | tests/e2e_tests/test_data_compatibility.py | 82 | CODE | |
| LOW | tests/e2e_tests/utils.py | 252 | CODE | |
| LOW | tests/e2e_tests/utils.py | 326 | CODE | |
| LOW | tests/e2e_tests/utils.py | 375 | CODE | |
| LOW | tests/e2e_tests/test_continuous_snapshots.py | 39 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/smaps-view.py | 116 | # Don't forget to add the last entry if it matches | COMMENT |
| LOW | config/development.yaml | 5 | # Also don't forget to copy temporary configurations into config/config.yaml if they need | COMMENT |
| LOW | config/development.yaml | 5 | # Also don't forget to copy temporary configurations into config/config.yaml if they need | COMMENT |
| LOW | lib/gpu/src/instance.rs | 184 | // Don't forget to destroy the instance if we failed to find any physical devices. | COMMENT |
| LOW | lib/gpu/src/instance.rs | 217 | // Don't forget to destroy the instance if we failed to find any physical devices. | COMMENT |
| LOW | lib/gpu/src/instance.rs | 240 | // Don't forget to destroy the instance if we failed to create a debug messenger. | COMMENT |
| MEDIUM | lib/segment/src/segment/entry.rs | 40 | /// This is a basic implementation of the trait, meaning that it implements the _actual_ operations with data and not | COMMENT |
| LOW | lib/storage/src/content_manager/consensus/persistent.rs | 75 | // IF YOU ADD NEW DATA INTO `PERSISTENT` STATE, DON'T FORGET TO ALSO ADD IT INTO RAFT SNAPSHOT! | COMMENT |
| LOW | lib/common/common/src/progress_tracker.rs | 205 | /// Before entering hot loops, don't forget to call `Arc::deref` on it. | COMMENT |
| LOW | lib/common/common/src/universal_io/traits/file_ops.rs | 78 | // When adding provided methods, don't forget to update impls in | COMMENT |
| LOW | lib/common/common/src/universal_io/traits/file_ops.rs | 136 | // When adding provided methods, don't forget to update impls in | COMMENT |
| LOW | lib/common/common/src/universal_io/traits/write.rs | 51 | // When adding provided methods, don't forget to update impls in crate::universal_io::wrappers::*. | COMMENT |
| LOW | lib/common/common/src/universal_io/traits/read.rs | 236 | // When adding provided methods, don't forget to update impls in crate::universal_io::wrappers::*. | COMMENT |
| LOW | lib/common/common/src/universal_io/traits/append.rs | 95 | // When adding provided methods, don't forget to update impls in | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/consensus_tests/test_resharding.py | 196 | # Create a list to collect replica URIs selected during test | COMMENT |
| MEDIUM | tests/consensus_tests/test_resharding.py | 231 | # Create a list to collect replica URIs selected during test | COMMENT |
| MEDIUM | tests/consensus_tests/test_resharding.py | 419 | # Create a list to collect replica URIs selected during test | COMMENT |
| MEDIUM | tests/consensus_tests/test_named_vector_crud.py | 119 | # Create a new dense named vector | COMMENT |
| MEDIUM | tests/consensus_tests/test_named_vector_crud.py | 140 | # Create a new sparse named vector | COMMENT |
| MEDIUM | …sts/consensus_tests/test_collection_recovery_limits.py | 141 | # Create an extra peer to allow moving some replicas | COMMENT |
| MEDIUM | tests/consensus_tests/test_resharding_extras.py | 197 | # Create a shard key | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/e2e_tests/utils.py | 120 | Extract HTTP and gRPC ports from container. For host network mode, returns standard Qdrant ports (6333, 6334). F | STRING |
| HIGH | tests/e2e_tests/utils.py | 201 | Core function to create a Qdrant container with given configuration. Args: docker_client: Docker client ins | STRING |
| HIGH | tests/e2e_tests/utils.py | 253 | General utility function to extract various archive formats. Args: archive_file: Path to the archive file t | STRING |
| HIGH | tests/e2e_tests/utils.py | 328 | Extract container info from a docker-compose container. Args: container: Docker container object from docke | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/integration-test-coverage.sh | 8 | # Check if target/llvm-cov-target/debug/qdrant exists, if not build it: | COMMENT |
| LOW | tools/smaps-view.py | 83 | # Check if line starts with an address range (new memory map entry) | COMMENT |
| LOW | tests/basic_grpc_inference_test.sh | 12 | # Check if local grpcurl exists and is executable | COMMENT |
| LOW | tests/openapi/test_strictmode.py | 1806 | # Check if tokens are gone | COMMENT |
| LOW | tests/consensus_tests/test_io_uring_eintr.py | 171 | # Check if the process is still alive | COMMENT |
| LOW | tests/e2e_tests/conftest.py | 98 | # Check if image already exists | COMMENT |
| LOW | tests/e2e_tests/conftest.py | 227 | # Check if this is being used with indirect parametrization | COMMENT |
| LOW | tests/e2e_tests/test_continuous_snapshots.py | 19 | # Check if we should stop | COMMENT |
| LOW | lib/edge/tools/prepare_facet_snapshot.sh | 33 | # Check if Qdrant is already running | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .github/workflows/rust.yml | 100 | # `/dev/shm` is tmpfs. The `model_testing` harness gates preallocate 32 MB gridstore pages | COMMENT |
| MEDIUM | lib/collection/src/collection/distance_matrix.rs | 213 | // use the same filter for all requests to leverage batch search | COMMENT |
| MEDIUM | lib/segment/src/json_path/mod.rs | 240 | // nuanced cases include wildcard indexes, e.g., `a[0].b` and `a[].b` intersect. | COMMENT |
| MEDIUM | lib/sparse/src/index/search_context.rs | 92 | // sort ids to fully leverage posting list iterator traversal | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/missed_cherry_picks.sh | 5 | # Example usage: | COMMENT |
| LOW | tools/generate_docker_compose_cluster.sh | 9 | # Example usage: | COMMENT |
| LOW | lib/segment/src/common/anonymize.rs | 12 | /// # Usage example | COMMENT |
| LOW | lib/edge/tools/s3_proxy/s3_proxy.sh | 19 | # Usage: | COMMENT |
| LOW | lib/edge/python/codegen/src/lib.rs | 7 | /// # Usage example | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/openapi/helpers/helpers.py | 203 | CODE | |
| LOW | tests/consensus_tests/utils.py | 400 | CODE | |
| LOW | tests/consensus_tests/utils.py | 431 | CODE | |
| LOW | tests/consensus_tests/utils.py | 443 | CODE | |
| LOW | tests/consensus_tests/utils.py | 451 | CODE | |
| LOW | tests/consensus_tests/utils.py | 1088 | CODE | |
| LOW | tests/consensus_tests/fixtures.py | 85 | CODE | |
| LOW | tests/consensus_tests/fixtures.py | 142 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | lib/edge/python/examples/add-named-vector.py | 64 | # 2. Add a new dense vector (e.g., a new embedding model) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/consensus_tests/peer_proxy.py | 32 | logger = logging.getLogger(__name__) | CODE |
| LOW | tests/e2e_tests/client_utils.py | 228 | def update_collection(self, collection_name: str, collection_params: Dict[str, Any]) -> None: | CODE |
| LOW | tests/e2e_tests/test_quota_disk.py | 55 | def _set_quota_via_rest(host: str, port: int, config: dict) -> None: | CODE |
| LOW | tests/e2e_tests/test_strict_mode_memory.py | 75 | def _set_strict_mode_via_rest(host: str, port: int, collection: str, config: dict) -> None: | CODE |