Python client for Apache Kafka
This report summarizes scanner evidence for dpkp/kafka-python, a Python project with 5,905 GitHub stars. SynthScan examined 82,023 lines of code across 472 source files, recording 2220 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 33.8 (High 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? 1671 finding(s).
Are imports declared and package/API names verified? 239 finding(s).
Are wrappers, guards, and repeated structures necessary? 1676 finding(s).
Which changes need focused human review? 2220 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 2220 distinct pattern matches across 16 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 | test/test_metrics.py | 126 | def test_hierarchical_sensors(metrics): | CODE |
| LOW | test/test_metrics.py | 162 | def test_bad_sensor_hierarchy(metrics): | CODE |
| LOW | test/test_metrics.py | 217 | def test_remove_inactive_metrics(mocker, time_keeper, metrics): | CODE |
| LOW | test/test_metrics.py | 317 | def test_old_data_has_no_effect(mocker, time_keeper): | CODE |
| LOW | test/test_codec.py | 34 | def test_snappy_detect_xerial(): | CODE |
| LOW | test/test_codec.py | 56 | def test_snappy_decode_xerial(): | CODE |
| LOW | test/test_codec.py | 71 | def test_snappy_encode_xerial(): | CODE |
| LOW⚡ | test/test_serializer.py | 9 | def test_default_serializer_roundtrip(encoding): | CODE |
| LOW⚡ | test/test_serializer.py | 18 | def test_default_serializer_passthrough_bytes_like(data): | CODE |
| LOW⚡ | test/test_serializer.py | 22 | def test_default_serializer_deserialize_none(): | CODE |
| LOW⚡ | test/test_serializer.py | 26 | def test_default_serializer_rejects_non_bytes_str(): | CODE |
| LOW⚡ | test/test_serializer.py | 31 | def test_json_serializer_roundtrip(): | CODE |
| LOW⚡ | test/test_serializer.py | 39 | def test_json_serializer_none(): | CODE |
| LOW⚡ | test/test_serializer.py | 45 | def test_json_serializer_deserializes_plain_json(): | CODE |
| LOW | test/test_util.py | 21 | def test_topic_name_validation(topic_name, expectation): | CODE |
| LOW⚡ | test/test_cluster.py | 268 | def test_known_partition_returns_leader_and_epoch(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 274 | def test_unknown_topic_returns_none(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 280 | def test_unknown_partition_returns_none(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 297 | def test_updates_when_epoch_is_strictly_newer(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 307 | def test_noop_when_epoch_is_stale_or_equal(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 316 | def test_unknown_topic_or_partition_returns_false(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 324 | def test_rewires_broker_partitions(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 332 | def test_unknown_leader_id_minus_one_skips_broker_partitions_add(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 401 | def test_collect_hosts__with_spaces(self): | CODE |
| LOW⚡ | test/test_cluster.py | 409 | def test_collect_hosts__protocol(self): | CODE |
| LOW⚡ | test/test_cluster.py | 419 | def test_expands_multi_ip_host_to_canonical_names(self): | CODE |
| LOW⚡ | test/test_cluster.py | 431 | def test_deduplicates_canonical_names(self): | CODE |
| LOW⚡ | test/test_cluster.py | 440 | def test_falls_back_to_original_on_resolution_failure(self): | CODE |
| LOW⚡ | test/test_cluster.py | 445 | def test_missing_canonname_falls_back_to_input_host(self): | CODE |
| LOW⚡ | test/test_cluster.py | 455 | def test_default_does_not_expand_bootstrap(self): | CODE |
| LOW⚡ | test/test_cluster.py | 462 | def test_canonical_mode_expands_bootstrap(self): | CODE |
| LOW⚡ | test/test_cluster.py | 477 | def test_request_update_returns_future(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 482 | def test_request_update_deduplicates(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 487 | def test_request_update_new_future_after_done(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 493 | def test_request_update_sets_cluster_need_update(self, cluster): | CODE |
| LOW⚡ | test/test_cluster.py | 497 | def test_request_update_sends_metadata_request(self, manager, net): | CODE |
| LOW | test/test_cluster.py | 131 | def _make_metadata_response_with_id(version, name, topic_id, partition=0, | CODE |
| LOW | test/test_cluster.py | 179 | def test_topic_id_unknown_returns_none(self, cluster): | CODE |
| LOW | test/test_cluster.py | 202 | def test_zero_uuid_not_indexed(self, cluster): | CODE |
| LOW | test/test_cluster.py | 208 | def test_recreation_resets_leader_epoch_and_updates_index(self, cluster, caplog): | CODE |
| LOW | test/test_cluster.py | 225 | def test_stable_id_keeps_leader_epoch(self, cluster): | CODE |
| LOW | test/test_cluster.py | 232 | def test_topic_drop_from_response_clears_index(self, cluster): | CODE |
| LOW | test/test_cluster.py | 365 | def test_collect_hosts__happy_path(self): | CODE |
| LOW | test/test_cluster.py | 382 | def test_collect_hosts__string_list(self): | CODE |
| LOW | test/test_cluster.py | 509 | def test_refresh_metadata_retries_no_node(self, manager, net): | CODE |
| LOW | test/test_cluster.py | 521 | def test_bootstrap_triggers_refresh_loop(self, manager, mocker): | CODE |
| LOW | test/test_cluster.py | 531 | def test_refresh_loop_spawned_once(self, manager): | CODE |
| LOW⚡ | test/test_mock_broker.py | 57 | def test_default_construction(self): | CODE |
| LOW⚡ | test/test_mock_broker.py | 65 | def test_set_metadata_with_topics(self): | CODE |
| LOW | test/test_mock_broker.py | 80 | def test_respond_queues_in_order(self): | CODE |
| LOW | test/test_mock_broker.py | 92 | def test_respond_fn_returning_none_sends_no_response(self): | CODE |
| LOW | test/test_mock_broker.py | 134 | def test_bootstrap_through_mock(self): | CODE |
| LOW | test/test_mock_broker.py | 146 | def test_metadata_with_topics(self): | CODE |
| LOW | test/test_mock_broker.py | 219 | def test_multiple_metadata_updates(self): | CODE |
| LOW | test/test_mock_broker.py | 272 | def test_fail_next_aborts_request(self): | CODE |
| LOW | test/test_mock_broker.py | 296 | def test_api_version_negotiation(self): | CODE |
| LOW | test/test_mock_broker.py | 348 | def test_admin_client_with_mock(self): | CODE |
| LOW | test/test_mock_broker.py | 397 | def test_default_construction(self): | CODE |
| LOW | test/test_mock_broker.py | 407 | def test_bootstrap_and_per_node_routing(self): | CODE |
| LOW | test/test_mock_broker.py | 534 | def test_add_group_elects_first_member_leader(self): | CODE |
| 1302 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | test/test_mock_broker.py | 48 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/test_mock_broker.py | 50 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/test_mock_broker.py | 115 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/test_mock_broker.py | 117 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/test_mock_broker.py | 380 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/test_mock_broker.py | 382 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/producer/test_transaction_manager_mock_broker.py | 54 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/producer/test_transaction_manager_mock_broker.py | 56 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/producer/test_transaction_manager_mock_broker.py | 1341 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/producer/test_transaction_manager_mock_broker.py | 1343 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 142 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 144 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 359 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 361 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 441 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 443 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 607 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 609 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 718 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 720 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 825 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 827 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 995 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 997 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 1216 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/producer/test_transaction_manager_mock_broker.py | 1218 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_users.py | 82 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_users.py | 84 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 53 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 55 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 168 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 170 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 278 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 280 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 442 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 444 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 734 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 736 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 860 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_groups.py | 862 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/admin/test_admin_groups.py | 529 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/admin/test_admin_groups.py | 531 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 138 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 140 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 199 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 201 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 259 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 261 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 318 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 320 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 367 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_transactions.py | 369 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_topics.py | 161 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_topics.py | 163 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_topics.py | 238 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_topics.py | 240 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/admin/test_admin_topics.py | 96 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | test/admin/test_admin_topics.py | 98 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_configs.py | 45 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | test/admin/test_admin_configs.py | 47 | # --------------------------------------------------------------------------- | COMMENT |
| 80 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | example.py | 60 | except Exception: | CODE |
| HIGH | test/mock_broker.py | 360 | except RuntimeError: | CODE |
| HIGH | test/producer/test_record_accumulator.py | 72 | except KeyError: | CODE |
| HIGH | test/net/test_connection.py | 31 | except OSError: | CODE |
| HIGH | test/net/backend/test_transport.py | 24 | except OSError: | CODE |
| HIGH | test/net/backend/test_transport.py | 28 | except OSError: | CODE |
| HIGH | test/integration/conftest.py | 127 | except Exception: | CODE |
| HIGH | test/integration/conftest.py | 173 | except Exception: | CODE |
| HIGH | test/integration/conftest.py | 219 | except Exception: | CODE |
| HIGH | test/protocol/old/test_api.py | 27 | except ValueError: | CODE |
| HIGH | test/consumer/test_coordinator.py | 114 | except Errors.IllegalStateError: | CODE |
| HIGH | test/consumer/test_coordinator.py | 457 | except AssertionError: | CODE |
| HIGH | test/consumer/test_coordinator.py | 543 | except AssertionError: | CODE |
| HIGH | kafka/util.py | 143 | except ValueError: | CODE |
| HIGH | kafka/cluster.py | 668 | except KeyError: | CODE |
| HIGH | kafka/cluster.py | 832 | except (ValueError, socket.error): | CODE |
| HIGH | kafka/producer/record_accumulator.py | 636 | except KeyError: | CODE |
| HIGH | kafka/producer/record_accumulator.py | 594 | except ValueError: | CODE |
| HIGH | kafka/producer/kafka.py | 755 | except AttributeError: | CODE |
| HIGH | kafka/producer/kafka.py | 759 | except AttributeError: | CODE |
| HIGH | kafka/producer/kafka.py | 679 | except (ReferenceError, AttributeError): | CODE |
| HIGH | kafka/coordinator/assignors/sticky/sticky_assignor.py | 49 | except (ValueError, KeyError): | CODE |
| HIGH | kafka/net/compat.py | 57 | except Errors.NodeNotReadyError: | CODE |
| HIGH | kafka/net/compat.py | 64 | except Errors.NodeNotReadyError: | CODE |
| HIGH | kafka/net/connection.py | 293 | except KeyError: | CODE |
| HIGH | kafka/net/manager.py | 363 | except KeyError: | CODE |
| HIGH | kafka/net/backend/abstract.py | 401 | except ImportError: | CODE |
| HIGH | kafka/net/backend/abstract.py | 399 | except sniffio.AsyncLibraryNotFoundError: | CODE |
| HIGH | kafka/net/backend/transport.py | 208 | except (KeyError, ValueError): | CODE |
| HIGH | kafka/net/backend/transport.py | 212 | except OSError: | CODE |
| HIGH | kafka/net/backend/transport.py | 161 | except OSError: | CODE |
| HIGH | kafka/net/backend/selector.py | 509 | except ValueError: | CODE |
| HIGH | kafka/net/backend/selector.py | 732 | except (KeyError, ValueError): | CODE |
| HIGH | kafka/net/backend/selector.py | 871 | except (BlockingIOError, OSError): | CODE |
| HIGH | kafka/net/backend/selector.py | 878 | except Exception: | CODE |
| HIGH | kafka/net/backend/selector.py | 882 | except Exception: | CODE |
| HIGH | kafka/net/backend/selector.py | 901 | except Exception: | CODE |
| HIGH | kafka/net/backend/selector.py | 905 | except Exception: | CODE |
| HIGH | kafka/net/backend/selector.py | 921 | except BlockingIOError: | CODE |
| HIGH | kafka/net/backend/asyncio_backend.py | 282 | except RuntimeError: | CODE |
| HIGH | kafka/net/backend/asyncio_backend.py | 437 | except (RuntimeError, AttributeError): | CODE |
| HIGH | kafka/net/backend/asyncio_backend.py | 443 | except (RuntimeError, AttributeError): | CODE |
| HIGH | kafka/net/backend/asyncio_backend.py | 168 | except RuntimeError: | CODE |
| HIGH | kafka/net/backend/asyncio_backend.py | 367 | except OSError: | CODE |
| HIGH | kafka/cli/common.py | 26 | except ValueError: | CODE |
| HIGH | kafka/cli/admin/partitions/list_offsets.py | 67 | except ValueError: | CODE |
| HIGH | kafka/benchmarks/producer_performance.py | 23 | except ValueError: | CODE |
| HIGH | kafka/benchmarks/protocol_old_vs_new.py | 435 | except Exception: | CODE |
| HIGH | kafka/benchmarks/consumer_performance.py | 23 | except ValueError: | CODE |
| HIGH | kafka/consumer/group.py | 637 | except AttributeError: | CODE |
| HIGH | kafka/consumer/group.py | 641 | except AttributeError: | CODE |
| HIGH | kafka/consumer/fetcher.py | 1402 | except KeyError: | CODE |
| HIGH | kafka/consumer/fetcher.py | 1691 | except KeyError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/test_cluster.py | 5 | CODE | |
| LOW | test/test_mock_broker.py | 15 | CODE | |
| LOW | test/test_mock_broker.py | 17 | CODE | |
| LOW | test/producer/test_producer.py | 1 | CODE | |
| LOW | test/producer/test_producer.py | 2 | CODE | |
| LOW | test/producer/test_transaction_manager_mock_broker.py | 19 | CODE | |
| LOW | test/producer/test_transaction_manager_mock_broker.py | 30 | CODE | |
| LOW | test/producer/test_transaction_manager_mock_broker.py | 31 | CODE | |
| LOW | test/producer/test_sender.py | 4 | CODE | |
| LOW | test/net/test_sasl_reauthentication.py | 6 | CODE | |
| LOW | test/net/test_sasl_reauthentication.py | 179 | CODE | |
| LOW | test/net/test_http_connect.py | 1 | CODE | |
| LOW | test/net/test_http_connect.py | 3 | CODE | |
| LOW | test/net/test_connection.py | 4 | CODE | |
| LOW | test/net/test_ssl.py | 5 | CODE | |
| LOW | test/net/test_ssl.py | 5 | CODE | |
| LOW | test/net/test_ssl.py | 6 | CODE | |
| LOW | test/net/test_compat.py | 2 | CODE | |
| LOW | test/net/test_compat.py | 3 | CODE | |
| LOW | test/net/test_proxy.py | 103 | CODE | |
| LOW | test/net/backend/test_abstract.py | 14 | CODE | |
| LOW | test/net/backend/test_transport.py | 2 | CODE | |
| LOW | test/integration/test_admin_integration.py | 12 | CODE | |
| LOW | test/integration/test_admin_integration.py | 12 | CODE | |
| LOW | test/integration/test_admin_integration.py | 12 | CODE | |
| LOW | test/integration/fixtures.py | 5 | CODE | |
| LOW | test/integration/fixtures.py | 17 | CODE | |
| LOW | test/admin/test_admin_topics.py | 6 | CODE | |
| LOW | test/admin/test_admin_cluster_log_dirs.py | 1 | CODE | |
| LOW | test/protocol/test_broker_version_data.py | 8 | CODE | |
| LOW | test/protocol/test_stubs.py | 3 | CODE | |
| LOW | test/protocol/test_stubs.py | 4 | CODE | |
| LOW | test/protocol/test_stubs.py | 8 | CODE | |
| LOW | test/protocol/test_stubs.py | 9 | CODE | |
| LOW | test/protocol/test_api_compatibility.py | 2 | CODE | |
| LOW | test/protocol/test_api_compatibility.py | 3 | CODE | |
| LOW | test/protocol/test_api_compatibility.py | 5 | CODE | |
| LOW | test/protocol/test_api_compatibility.py | 7 | CODE | |
| LOW | test/protocol/old/test_compact.py | 4 | CODE | |
| LOW | test/protocol/old/test_api.py | 3 | CODE | |
| LOW | test/protocol/old/test_old_tagged_fields.py | 3 | CODE | |
| LOW | test/protocol/old/test_types.py | 3 | CODE | |
| LOW | test/protocol/old/test_old_fetch.py | 5 | CODE | |
| LOW | test/protocol/old/test_old_api_versions.py | 5 | CODE | |
| LOW | test/protocol/old/test_old_api_versions.py | 5 | CODE | |
| LOW | test/protocol/old/test_old_api_versions.py | 7 | CODE | |
| LOW | test/protocol/schemas/test_tagged_fields.py | 3 | CODE | |
| LOW | test/protocol/schemas/test_codec_types.py | 7 | CODE | |
| LOW | test/protocol/consumer/test_consumer_protocol.py | 3 | CODE | |
| LOW | test/protocol/metadata/test_api_versions.py | 5 | CODE | |
| LOW | test/consumer/test_coordinator.py | 20 | CODE | |
| LOW | test/consumer/test_fetcher.py | 17 | CODE | |
| LOW | kafka/util.py | 1 | CODE | |
| LOW | kafka/__init__.py | 2 | CODE | |
| LOW | kafka/__init__.py | 13 | CODE | |
| LOW | kafka/__init__.py | 14 | CODE | |
| LOW | kafka/__init__.py | 15 | CODE | |
| LOW | kafka/__init__.py | 15 | CODE | |
| LOW | kafka/__init__.py | 18 | CODE | |
| LOW | kafka/__init__.py | 19 | CODE | |
| 177 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .readthedocs.yaml | 21 | # builder: "dirhtml" | COMMENT |
| LOW | test/mock_broker.py | 421 | return None | COMMENT |
| LOW | test/protocol/test_api_compatibility.py | 21 | # ApiVersionsRequest_v3 (with a client_id for the header) | COMMENT |
| LOW | test/protocol/test_api_compatibility.py | 41 | b'\x00' \ | COMMENT |
| LOW | test/protocol/test_api_compatibility.py | 221 | decoded_data = NewApiVersionsResponse[3].decode( | COMMENT |
| LOW | test/protocol/test_api_compatibility.py | 241 | # data: CompactArray of SupportedFeatureKey | COMMENT |
| LOW | docs/conf.py | 1 | # -*- coding: utf-8 -*- | COMMENT |
| LOW | docs/conf.py | 61 | # |version| and |release|, also used in various other places throughout the | COMMENT |
| LOW | docs/conf.py | 81 | # directories to ignore when looking for source files. | COMMENT |
| LOW | docs/conf.py | 121 | COMMENT | |
| LOW | docs/conf.py | 141 | # Add any paths that contain custom static files (such as style sheets) here, | COMMENT |
| LOW | docs/conf.py | 161 | COMMENT | |
| LOW | docs/conf.py | 181 | # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. | COMMENT |
| LOW | docs/conf.py | 221 | # the title page. | COMMENT |
| LOW | kafka/errors.py | 1001 | # not complete. | COMMENT |
| LOW | kafka/producer/sender.py | 281 | # If we have any nodes that are ready to send + have sendable data, | COMMENT |
| LOW | kafka/coordinator/consumer.py | 401 | try: | COMMENT |
| LOW | kafka/coordinator/assignors/cooperative_sticky.py | 141 | # Build the round-1 assignment: drop any partition that's | COMMENT |
| LOW | kafka/coordinator/assignors/sticky/sticky_assignor.py | 61 | # a mapping between consumers and their assigned partitions that is updated during assignment procedure | COMMENT |
| LOW | …ordinator/assignors/sticky/StickyAssignorUserData.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/net/wakeup_notifier.py | 21 | """ | COMMENT |
| LOW | kafka/net/backend/selector.py | 201 | 'selector': selectors.DefaultSelector, | COMMENT |
| LOW | kafka/record/memory_records.py | 1 | # This class takes advantage of the fact that all formats v0, v1 and v2 of | COMMENT |
| LOW | kafka/record/_crc32c.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | kafka/record/legacy_records.py | 1 | # See: | COMMENT |
| LOW | kafka/record/legacy_records.py | 21 | # Value => bytes | COMMENT |
| LOW | kafka/record/default_records.py | 1 | # See: | COMMENT |
| LOW | kafka/record/default_records.py | 21 | # ProducerEpoch => Int16 | COMMENT |
| LOW | kafka/record/default_records.py | 41 | # the bytes that follow the CRC). It is located after the magic byte, which | COMMENT |
| LOW | …schemas/resources/DescribeTopicPartitionsResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …a/protocol/schemas/resources/DeleteRecordsRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/protocol/schemas/resources/MetadataRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/protocol/schemas/resources/MetadataRequest.json | 21 | "validVersions": "0-13", | COMMENT |
| LOW | kafka/protocol/schemas/resources/HeartbeatResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/protocol/schemas/resources/ProduceRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/protocol/schemas/resources/ProduceRequest.json | 21 | // Versions 0-2 were removed in Apache Kafka 4.0, version 3 is the new baseline. Due to a bug in librdkafka, | COMMENT |
| LOW | …ka/protocol/schemas/resources/DeleteGroupsRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …/schemas/resources/DescribeTopicPartitionsRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/protocol/schemas/resources/EndTxnRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …otocol/schemas/resources/AlterClientQuotasRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …protocol/schemas/resources/DescribeGroupsResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …fka/protocol/schemas/resources/LeaveGroupResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …mas/resources/DescribeUserScramCredentialsRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …protocol/schemas/resources/FindCoordinatorRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …protocol/schemas/resources/FindCoordinatorRequest.json | 21 | // Version 1 adds KeyType. | COMMENT |
| LOW | …tocol/schemas/resources/AddPartitionsToTxnRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …rotocol/schemas/resources/DescribeClusterResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …a/protocol/schemas/resources/SaslHandshakeRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …protocol/schemas/resources/DescribeLogDirsRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/protocol/schemas/resources/FetchRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/protocol/schemas/resources/FetchRequest.json | 21 | // Versions 0-3 were removed in Apache Kafka 4.0, Version 4 is the new baseline. | COMMENT |
| LOW | kafka/protocol/schemas/resources/FetchRequest.json | 41 | // | COMMENT |
| LOW | …ocol/schemas/resources/AlterReplicaLogDirsRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …as/resources/DescribeUserScramCredentialsResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …/protocol/schemas/resources/DescribeQuorumRequest.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | kafka/protocol/schemas/resources/ResponseHeader.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …mas/resources/AlterPartitionReassignmentsResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …ka/protocol/schemas/resources/ApiVersionsResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| LOW | …ka/protocol/schemas/resources/ApiVersionsResponse.json | 21 | // | COMMENT |
| LOW | …otocol/schemas/resources/CreatePartitionsResponse.json | 1 | // Licensed to the Apache Software Foundation (ASF) under one or more | COMMENT |
| 112 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | example.py | 60 | except Exception: | CODE |
| LOW | test/mock_broker.py | 503 | except Exception: | CODE |
| LOW | test/mock_broker.py | 710 | except Exception: | CODE |
| LOW | test/producer/test_partitioner.py | 232 | except Exception as exc: | CODE |
| MEDIUM | test/producer/test_partitioner.py | 227 | def hammer(): | CODE |
| MEDIUM | test/producer/test_sender.py | 898 | def get_in_thread(): | CODE |
| MEDIUM | test/producer/test_sender.py | 941 | def get_in_thread(): | CODE |
| LOW | test/producer/test_sender.py | 901 | except Exception as e: | CODE |
| LOW | test/producer/test_sender.py | 944 | except Exception as e: | CODE |
| LOW | test/net/test_manager.py | 434 | except Exception: | CODE |
| LOW⚡ | test/net/backend/test_asyncio_backend.py | 92 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | test/integration/conftest.py | 127 | except Exception: | CODE |
| LOW | test/integration/conftest.py | 173 | except Exception: | CODE |
| LOW | test/integration/conftest.py | 219 | except Exception: | CODE |
| LOW | test/integration/conftest.py | 309 | except Exception as e: # surfaced via spawn() / stop() | CODE |
| MEDIUM | test/integration/conftest.py | 301 | def run(member=member, client_id=client_id): | CODE |
| LOW | kafka/cluster.py | 134 | except Exception as exc: | CODE |
| LOW | kafka/cluster.py | 156 | except Exception as exc: | CODE |
| LOW | kafka/cluster.py | 174 | except Exception as exc: | CODE |
| LOW | kafka/future.py | 66 | except Exception as e: | CODE |
| LOW | kafka/future.py | 89 | except Exception as err: | CODE |
| LOW | kafka/future.py | 108 | except Exception as e: | CODE |
| LOW | kafka/future.py | 127 | except Exception as e: | CODE |
| LOW | kafka/future.py | 153 | except Exception as e: | CODE |
| LOW | kafka/future.py | 160 | except Exception as e: | CODE |
| LOW | kafka/producer/sender.py | 135 | except Exception: | CODE |
| LOW | kafka/producer/sender.py | 150 | except Exception: | CODE |
| LOW | kafka/producer/sender.py | 378 | except Exception as e: | CODE |
| MEDIUM | kafka/producer/sender.py | 77 | def _maybe_remove_from_inflight_batches(self, batch): | CODE |
| LOW | kafka/producer/kafka.py | 748 | except Exception: | CODE |
| MEDIUM | kafka/producer/kafka.py | 676 | def wrapper(): | CODE |
| LOW | kafka/coordinator/consumer.py | 318 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/consumer.py | 329 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/consumer.py | 378 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/consumer.py | 502 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/consumer.py | 530 | except Exception: | CODE |
| LOW | kafka/coordinator/consumer.py | 556 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/consumer.py | 574 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/consumer.py | 730 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/consumer.py | 884 | except Exception: | CODE |
| LOW | kafka/coordinator/consumer.py | 969 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/consumer.py | 1108 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/base.py | 841 | except Exception as exc: | CODE |
| LOW | kafka/coordinator/assignors/sticky/sticky_assignor.py | 626 | except Exception: | CODE |
| LOW | kafka/net/proxy.py | 43 | except Exception: | CODE |
| LOW | kafka/net/proxy.py | 111 | except Exception as exc: | CODE |
| LOW | kafka/net/proxy.py | 126 | except Exception as e: | CODE |
| LOW | kafka/net/proxy.py | 163 | except Exception as exc: | CODE |
| MEDIUM | kafka/net/proxy.py | 157 | def _wrapped_state_machine(self): | CODE |
| LOW | kafka/net/connection.py | 278 | except Exception: | CODE |
| LOW | kafka/net/connection.py | 370 | except Exception as error: | CODE |
| MEDIUM | kafka/net/connection.py | 290 | def unpause(self, v): | CODE |
| LOW | kafka/net/manager.py | 173 | except Exception as exc: | CODE |
| LOW | kafka/net/manager.py | 186 | except Exception as exc: | CODE |
| LOW | kafka/net/manager.py | 263 | except Exception as exc: | CODE |
| MEDIUM | kafka/net/manager.py | 245 | def _connect(self, node, conn, reset_backoff_on_connect=True, timeout_at=None): | CODE |
| LOW | kafka/net/backend/abstract.py | 311 | except Exception: | CODE |
| LOW | kafka/net/backend/abstract.py | 330 | except Exception: | CODE |
| MEDIUM | kafka/net/backend/selector.py | 401 | def waiter(): | CODE |
| LOW⚡ | kafka/net/backend/selector.py | 878 | except Exception: | CODE |
| 24 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/net/test_wakeup_notifier.py | 165 | CODE | |
| LOW | test/net/backend/test_selector.py | 1089 | CODE | |
| LOW | test/integration/conftest.py | 284 | CODE | |
| LOW | test/integration/test_consumer_integration.py | 90 | CODE | |
| LOW | test/integration/test_consumer_integration.py | 168 | CODE | |
| LOW | test/integration/fixtures.py | 353 | CODE | |
| LOW | test/consumer/test_assignors.py | 812 | CODE | |
| LOW | kafka/cluster.py | 521 | CODE | |
| LOW | kafka/future.py | 45 | CODE | |
| LOW | kafka/future.py | 72 | CODE | |
| LOW | kafka/metrics/metrics.py | 118 | CODE | |
| LOW | kafka/metrics/metrics.py | 158 | CODE | |
| LOW | kafka/metrics/stats/rate.py | 88 | CODE | |
| LOW | kafka/producer/sender.py | 91 | CODE | |
| LOW | kafka/producer/sender.py | 161 | CODE | |
| LOW | kafka/producer/sender.py | 316 | CODE | |
| LOW | kafka/producer/sender.py | 530 | CODE | |
| LOW | kafka/producer/record_accumulator.py | 113 | CODE | |
| LOW | kafka/producer/record_accumulator.py | 203 | CODE | |
| LOW | kafka/producer/record_accumulator.py | 324 | CODE | |
| LOW | kafka/producer/record_accumulator.py | 423 | CODE | |
| LOW | kafka/producer/kafka.py | 1056 | CODE | |
| LOW | kafka/producer/transaction_manager.py | 64 | CODE | |
| LOW | kafka/producer/transaction_manager.py | 852 | CODE | |
| LOW | kafka/producer/transaction_manager.py | 941 | CODE | |
| LOW | kafka/producer/transaction_manager.py | 996 | CODE | |
| LOW | kafka/producer/transaction_manager.py | 1093 | CODE | |
| LOW | kafka/producer/transaction_manager.py | 1133 | CODE | |
| LOW | kafka/producer/transaction_manager.py | 1176 | CODE | |
| LOW | kafka/producer/transaction_manager.py | 1263 | CODE | |
| LOW | kafka/coordinator/consumer.py | 264 | CODE | |
| LOW | kafka/coordinator/consumer.py | 389 | CODE | |
| LOW | kafka/coordinator/consumer.py | 486 | CODE | |
| LOW | kafka/coordinator/consumer.py | 659 | CODE | |
| LOW | kafka/coordinator/consumer.py | 844 | CODE | |
| LOW | kafka/coordinator/consumer.py | 974 | CODE | |
| LOW | kafka/coordinator/consumer.py | 1113 | CODE | |
| LOW | kafka/coordinator/base.py | 962 | CODE | |
| LOW | kafka/coordinator/base.py | 1134 | CODE | |
| LOW | kafka/coordinator/assignors/cooperative_sticky.py | 113 | CODE | |
| LOW | kafka/coordinator/assignors/sticky/sticky_assignor.py | 176 | CODE | |
| LOW | kafka/coordinator/assignors/sticky/sticky_assignor.py | 227 | CODE | |
| LOW | kafka/coordinator/assignors/sticky/sticky_assignor.py | 281 | CODE | |
| LOW | kafka/coordinator/assignors/sticky/sticky_assignor.py | 334 | CODE | |
| LOW | kafka/coordinator/assignors/sticky/sticky_assignor.py | 397 | CODE | |
| LOW | kafka/net/socks5.py | 28 | CODE | |
| LOW | kafka/net/connection.py | 290 | CODE | |
| LOW | kafka/net/connection.py | 376 | CODE | |
| LOW | kafka/net/backend/selector.py | 102 | CODE | |
| LOW | kafka/net/backend/selector.py | 517 | CODE | |
| LOW | kafka/net/backend/selector.py | 751 | CODE | |
| LOW | kafka/net/backend/selector.py | 767 | CODE | |
| LOW | kafka/net/backend/selector.py | 909 | CODE | |
| LOW | kafka/record/legacy_records.py | 188 | CODE | |
| LOW | kafka/record/legacy_records.py | 479 | CODE | |
| LOW | kafka/record/default_records.py | 111 | CODE | |
| LOW | kafka/record/default_records.py | 654 | CODE | |
| LOW | kafka/partitioner/sticky.py | 36 | CODE | |
| LOW | kafka/admin/_configs.py | 139 | CODE | |
| LOW | kafka/admin/_configs.py | 231 | CODE | |
| 41 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/service.py | 10 | __all__ = [ | CODE |
| LOW | kafka/__init__.py | 27 | __all__ = [ | CODE |
| LOW | kafka/metrics/metrics.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW | kafka/metrics/__init__.py | 10 | __all__ = [ | CODE |
| LOW | kafka/metrics/dict_reporter.py | 6 | logger = logging.getLogger(__name__) | CODE |
| LOW | kafka/metrics/stats/__init__.py | 12 | __all__ = [ | CODE |
| LOW | kafka/producer/__init__.py | 3 | __all__ = [ | CODE |
| LOW | kafka/net/__init__.py | 11 | __all__ = [ | CODE |
| LOW | kafka/net/backend/abstract.py | 135 | def set_protocol(self, protocol: 'NetProtocol') -> None: ... | CODE |
| LOW | kafka/record/__init__.py | 3 | __all__ = ["MemoryRecords", "MemoryRecordsBuilder"] | CODE |
| LOW | kafka/partitioner/__init__.py | 6 | __all__ = [ | CODE |
| LOW | kafka/admin/__init__.py | 18 | __all__ = [ | CODE |
| LOW | kafka/protocol/sasl.py | 48 | __all__ = [ | CODE |
| LOW | kafka/protocol/producer/produce.py | 15 | __all__ = [ | CODE |
| LOW | kafka/protocol/producer/transaction.py | 23 | __all__ = [ | CODE |
| LOW | kafka/protocol/admin/configs.py | 17 | __all__ = [ | CODE |
| LOW | kafka/protocol/admin/users.py | 11 | __all__ = [ | CODE |
| LOW | kafka/protocol/admin/transactions.py | 14 | __all__ = [ | CODE |
| LOW | kafka/protocol/admin/client_quotas.py | 11 | __all__ = [ | CODE |
| LOW | kafka/protocol/admin/groups.py | 20 | __all__ = [ | CODE |
| LOW | kafka/protocol/admin/acl.py | 77 | __all__ = [ | CODE |
| LOW | kafka/protocol/admin/topics.py | 49 | __all__ = [ | CODE |
| LOW | kafka/protocol/admin/cluster.py | 25 | __all__ = [ | CODE |
| LOW | kafka/protocol/schemas/fields/__init__.py | 7 | __all__ = ["BaseField", "SimpleField", "StructField", "ArrayField", "StructArrayField"] | CODE |
| LOW | kafka/protocol/schemas/fields/codecs/__init__.py | 8 | __all__ = [ | CODE |
| LOW | kafka/protocol/consumer/fetch.py | 14 | __all__ = [ | CODE |
| LOW | kafka/protocol/consumer/metadata.py | 28 | __all__ = [ | CODE |
| LOW | kafka/protocol/consumer/group.py | 29 | __all__ = [ | CODE |
| LOW | kafka/protocol/consumer/offsets.py | 70 | __all__ = [ | CODE |
| LOW | kafka/protocol/metadata/metadata.py | 32 | __all__ = [ | CODE |
| LOW | kafka/protocol/metadata/api_versions.py | 39 | __all__ = [ | CODE |
| LOW | kafka/protocol/metadata/find_coordinator.py | 17 | __all__ = [ | CODE |
| LOW | kafka/consumer/__init__.py | 3 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | test/producer/test_transaction_manager_mock_broker.py | 55 | # Test harness | COMMENT |
| LOW⚡ | test/net/test_connection.py | 149 | # Should not send any request -- just call _init_complete | COMMENT |
| LOW⚡ | test/consumer/test_fetcher.py | 557 | # Don't actually block on the wakeup - just return as if the wait | COMMENT |
| LOW | kafka/codec.py | 145 | # buffer... likely a python-snappy bug, so just use a slice copy | COMMENT |
| MEDIUM | kafka/net/manager.py | 100 | # close(); a passed-in instance is left alone (so the unit-test harness, | COMMENT |
| LOW | kafka/net/sasl/gssapi.py | 67 | # simply set QoP to 'auth' only (first octet). We reuse the max message size proposed | COMMENT |
| LOW | kafka/net/sasl/gssapi.py | 82 | # but instead we just set _is_authenticated. Since the plugin interface does | COMMENT |
| LOW | kafka/net/sasl/sspi.py | 92 | # simply set QoP to 'auth' only (first octet). We reuse the max message size proposed | COMMENT |
| MEDIUM | kafka/benchmarks/producer_performance.py | 55 | # per-iteration harness overhead. With a well-optimized | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | kafka/coordinator/assignors/sticky/sticky_assignor.py | 340 | # if minimum and maximum numbers of partitions assigned to consumers differ by at most one return true | COMMENT |
| HIGH | kafka/protocol/schemas/fields/struct.py | 75 | # Nested nullable struct (KIP-893): 1-byte INT8 prefix, -1 = null, | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/__init__.py | 12 | # Create a file handler | COMMENT |
| MEDIUM | test/__init__.py | 16 | # Create a formatter for the log messages | COMMENT |
| MEDIUM | test/producer/test_record_accumulator.py | 133 | # Create a retried batch | COMMENT |
| MEDIUM | test/producer/test_sender.py | 814 | # Create a batch with large batch_size (simulating the original oversized batch) | COMMENT |
| MEDIUM | docs/conf.py | 6 | # This file is execfile()d with the current directory set to its | COMMENT |
| MEDIUM | kafka/metrics/metrics.py | 65 | # Creating a daemon thread to not block shutdown | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/producer/test_transaction_manager_mock_broker.py | 322 | # Step 1: enqueue the initial InitProducerIdHandler. | COMMENT |
| LOW | test/producer/test_transaction_manager_mock_broker.py | 340 | # Step 2: simulate the OUT_OF_ORDER_SEQUENCE_NUMBER recovery path. | COMMENT |
| LOW⚡ | test/integration/fixtures.py | 156 | # Step 1: Generate server keystore | COMMENT |
| LOW⚡ | test/integration/fixtures.py | 162 | # Step 2: Generate CA and truststore | COMMENT |
| LOW⚡ | test/integration/fixtures.py | 170 | # Step 3: Sign server cert with CA | COMMENT |
| LOW | kafka/net/connection.py | 430 | # Step 1: SaslHandshake to negotiate mechanism | COMMENT |
| LOW | kafka/net/connection.py | 445 | # Step 2: SASL authentication exchange | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/producer/test_transaction_manager_mock_broker.py | 322 | # Step 1: enqueue the initial InitProducerIdHandler. | COMMENT |
| LOW | test/producer/test_transaction_manager_mock_broker.py | 340 | # Step 2: simulate the OUT_OF_ORDER_SEQUENCE_NUMBER recovery path. | COMMENT |
| LOW⚡ | test/integration/fixtures.py | 156 | # Step 1: Generate server keystore | COMMENT |
| LOW⚡ | test/integration/fixtures.py | 162 | # Step 2: Generate CA and truststore | COMMENT |
| LOW⚡ | test/integration/fixtures.py | 170 | # Step 3: Sign server cert with CA | COMMENT |
| LOW | kafka/net/connection.py | 430 | # Step 1: SaslHandshake to negotiate mechanism | COMMENT |
| LOW | kafka/net/connection.py | 445 | # Step 2: SASL authentication exchange | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/integration/fixtures.py | 353 | CODE | |
| LOW | test/integration/fixtures.py | 386 | CODE | |
| LOW | test/admin/test_admin_cluster_quorum.py | 7 | CODE | |
| LOW | kafka/record/default_records.py | 544 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | kafka/record/legacy_records.py | 415 | # Check if we have room for another message | COMMENT |
| LOW | kafka/record/default_records.py | 615 | # Check if we can write this message | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/mock_broker.py | 385 | async def handle_request(self, api_key, api_version, correlation_id, request_bytes): | CODE |