| KIP | Comment |
|---|
| KIP-5 - Broker Configuration Management | Superseded by KIP-21 |
| KIP-7 - Security - IP Filtering |
|
| KIP-9 - SSL Support | Adopted via KAFKA-1690 but not via this KIP process |
| KIP-18 - JBOD Support | Superseded by KIP-112 and KIP-113 |
| KIP-24 - Remove ISR information from TopicMetadataRequest and add broker level metadata request |
|
| KIP-29 - Add an IsrPropagateIntervalMs configuration to KafkaConfig | No longer need after KAFKA-2722 |
KIP-34 Add Partitioner Change Listener to Partitioner Interface for Multiple Use Case | Per feedback it is better do this parition() method and avoid Thread Coordination etc. |
| KIP-50 - Move Authorizer to o.a.k.common package | Superseded by KIP-504 |
| KIP-80: Kafka Rest Server |
|
| KIP-83 - Allow multiple SASL authenticated Java clients in a single JVM process | After KIP-85, no interface changes, reduced to KAFKA-4180 |
KIP-95: Incremental Batch Processing for Kafka Streams |
|
| KIP-111: Kafka should preserve the Principal generated by the PrincipalBuilder while processing the request received on socket channel, on the broker. | Covered by KIP-189 |
| KIP-116: Add State Store Checkpoint Interval Configuration | Currently not needed as checkpointing can be done on commit interval. |
| KIP-127: Pluggable JAAS LoginModule configuration for SSL | Similar functionality can be implemented using a custom PrincipalBuilder. |
| KIP-132: Augment KStream.print to allow extra parameters in the printed string | Duplicated by KIP-160 |
| KIP-147: Add missing type parameters to StateStoreSupplier factories and KGroupedStream/Table methods | Covered by KIP-182 |
| KIP-165: Extend Interactive Queries for return latest update timestamp per key | Covered by KIP-258 |
| KIP-170: Enhanced TopicCreatePolicy and introduction of TopicDeletePolicy | Superseded by KIP-201: Rationalising Policy interfaces |
| KIP 172: Add regular-expression topic support for sink connector | Superseded by KIP-215: Add topic regex support for Connect sinks |
| KIP-179: Change ReassignPartitionsCommand to use AdminClient |
|
| KIP-184: Rename LogCleaner and related classes to LogCompactor | A lot of configuration change will cause more trouble and doesn't seems to be worth it |
| KIP-199: Add Kafka Connect offset tool | Superseded by KIP-875: First-class offsets support in Kafka Connect |
| KIP 230: Name Windowing Joins | Covered by KIP-372: Naming Repartition Topics for Joins and Grouping |
| KIP-232: Detect outdated metadata using per-partition leaderEpoch field | Merged into KIP-320: Allow fetchers to detect and handle log truncation |
| KIP-246: Connect producers and consumers should inherit worker configs | Withdrawn because proposal could not be made backward compatible with existing behavior |
| KIP-248 - Create New ConfigCommand That Uses The New AdminClient | Discarded by author as it's partly covered in KIP-339 and KIP-422 |
| KIP-259: Improve Streams DSL Timestamp Propagation Semantics | Change did not require a KIP. |
| KIP-260: add primary join operation for Stream-Stream join (WIP) |
|
| KIP-262: Metadata should include number of state stores for task | Rejected since metadata is no longer required. |
| KIP-263: Allow broker to skip sanity check of inactive segments on broker startup | Withdrawn because the solution we agreed on does not require interface change |
| KIP-275 - Indicate "isClosing" in the SinkTaskContext |
|
| KIP-286: producer.send() should not block on metadata update | Withdrawn because the benefit of not having to wait for metadata is probably not worth the complexity added in producer. |
| KIP-288: [DISCARDED] Consumer.poll() timeout semantic change and new waitForAssignment method | Discarded in deference to KIP-266 |
| KIP-310: Add a Kafka Source Connector to Kafka Connect | Withdrawn in favor of KIP-382. |
| KIP-327: Add describe all topics API to AdminClient | Withdrawn in-favor of filter support in Metadata API and KIP-142 |
| KIP-326: Schedulable KTable as Graph source |
|
| KIP-335: Consider configurations for KafkaStreams | Corresponding configs got removed in 4.0.0 release. |
| KIP-344: The auto-generated client id should be passed to MetricsReporter | Bug fix so KIP not needed |
| KIP-347: Enable batching in FindCoordinatorRequest | Replaced by KIP-699 |
| KIP-364: Remove implicit Materialized, Consumed and Produced | Subsumed by KIP-365 |
| KIP-383: Pluggable interface for SSL Factory | Replaced by KIP-519 |
| KIP-391: Allow Producing with Offsets for Cluster Replication | Not enough interest in favour. |
| KIP-398: Support reading trust store from classpath | Not enough interest in favour. Can be implemented with mechanism in
KAFKA-8191
-
Getting issue details...
STATUS
|
| KIP-404: Add Kafka Connect configuration parameter for disabling WADL output on OPTIONS request | Discarded, reported as a bug by
KAFKA-7759
-
Getting issue details...
STATUS
|
KIP-432: Additional Broker-Side Opt-In for Default, Unsecure SASL/OAUTHBEARER Implementation | A "security sanity check tool" is a more generic and appropriate solution. |
| KIP-451: Make TopologyTestDriver output iterable | Discarded in favor of KIP-456 |
| KIP-456: Helper classes to make it simpler to write test logic with TopologyTestDriver | Discarded in favor of KIP-470 |
| KIP-472: Add header to RecordContext/ProducerRecord | Discarded due to change being far more complex than necessary for a simple bug |
| KIP-485: Make topic optional when using through() operations in DSL | Moved to KIP-221 |
| KIP-486: Support custom way to load KeyStore and TrustStore | Discarded in favor of KIP-519 |
| KIP-522: Update BrokerApiVersionsCommand to use AdminClient | Discarded as this KIP is likely to be misused |
| KIP-593: Enable --if-exists and --if-not-exists for AdminClient in TopicCommand | Superseded by KIP-604 |
| KIP-615: add ConstrainedCooperativeStickyAssignor | Discarded in favor of modifying existing assignor |
| KIP-634: Complementary support for headers and record metadata in Kafka Streams DSL | KIP-820 offers a workaround, and potential DSL v2 could replace the proposal. |
| KIP-638: Deprecate DescribeLogDirsResponse.[LogDirInfo, ReplicaInfo] | Duplication of KIP-621 |
| KIP-642: Dynamic quorum reassignment | Discarded in favor KIP-853: KRaft Controller Membership Changes |
| [DISCARD] KIP-658 Deprecate all setters of Headers |
|
KIP-660: Pluggable ReplicaPlacer |
|
| KIP-667: Remove deprecated methods from ReadOnlyWindowStore | No KIP needed |
| KIP-672: Introduce Kafka Streams Specific Uncaught Exception Handler | Combined with KIP-671 |
| KIP-675: Convert a KTable to a KStream using the previous value |
|
KIP-677: Migrating Topology methods to the Builder pattern | Abandoned draft |
| KIP-818: Introduce cache-size-bytes-total Task Level Metric | Decided to add the new metric in KIP-770. |
| KIP-717: Deprecate batch-size config from console producer | Change did not require a KIP |
| KIP-752: Support --bootstrap-server in ReplicaVerificationTool | Replaced by KIP-1067 |
| KIP-756: Move StreamsResetter tool outside of core | Subsumed by KIP-906 |
KIP-795: Add public APIs for AbstractCoordinator | Discarded in favor of KIP-848 |
| KIP-832: Allow creating a producer/consumer using a producer/consumer config | Superseded by KIP-839 |
| KIP-844: Transactional State Stores | Discarded in favor of KIP-892 |
| KIP-845: 'HasField' predicate for kafka connect | Discarded in favor of improving existing SMTs |
| KIP 850: REST API for filtering Connector plugins by type | Discarded as JIRA was obsolete |
| KIP-856: KRaft Disk Failure Recovery | Discarded in favor of KIP-853: KRaft Controller Membership Changes |
| KIP-871: Fix ByteBufferSerializer#serialize(String, ByteBuffer) compatible problem | Discard as it doesn't change any public API. |
| KIP-874: TopicRoundRobinAssignor | Discard as it is too specific. |
| KIP-883: Add isDeleted flag when stopping connector | Discarded as the benefits are too limited |
| KIP-897: Publish a single kafka (aka core) Maven artifact in Apache Kafka 4.0 | Taking a different approach. |
| KIP-908: Add description field to connector configuration | Discarded as the benefits are too limited |
| KIP-947: Add support for consumer group protocol in Consumer | Change did not require a KIP |
| KIP-944: Support async runtimes in consumer and KIP-957: Support Async runtimes | Withdrawn because the committers do not seem to be convinced that you cannot control on what thread code runs with an async runtime |
| KIP-955: Add stream-table join on foreign key |
|
| KIP-990: Capability to PAUSE Tasks on DeserializationException | Rejected during the discussion, due to technical concerns. |
| KIP-1007: Introduce Remote Storage Not Ready Exception | Discarded as the change is not compatible with the consumer. |
| KIP-1060: Expose advertised.listeners for KRaft controllers | This is implemented as part of KIP-853: KRaft Controller Membership Changes |
| KIP-1072: Add FunctionalInterface annotation to Kafka Streams SAM methods | Deemed not necessary – we just did it w/o voting the KIP. |
KIP-1165: Object Compaction for Diskless | Made unnecessary due to a design change in KIP-1163: Diskless Core |
KIP-1181: Metadata Rack Awareness for Diskless Topics | Incorporated into KIP-1163: Diskless Core |
| KIP-1177: Consider renaming org.apache.kafka.storage.internals.log.RemoteStorageThreadPool metrics | Encompassed into KIP-1100: Rename org.apache.kafka.server:type=AssignmentsManager and org.apache.kafka.storage.internals.log.RemoteStorageThreadPool metrics En |
| KIP-1293: Add Time-Shift Parameter to Kafka Streams Punctuation Scheduling | Covered by KIP-1146 |