...
- Click
. Take the next available KIP number and give your proposal a descriptive heading. e.g. "KIP 42: Allow Infinite Retention With Bounded Disk Usage".Create from template templateName 54329345 templateId 54329345 title KIP-NEXT: Insert Title Here buttonLabel Create KIP - Fill in the sections as described above
- Start a [DISCUSS] thread on the Apache mailing list. Please ensure that the subject of the thread is of the format [DISCUSS] KIP-{your KIP number} {your KIP heading} The and the body contains a link to your new KIP. The discussion should happen on the mailing list, not on the wiki, since the wiki comment system doesn't work well for larger discussions. In the process of the discussion you may update the proposal. You should let people know the changes you are making. When you feel you have a finalized proposal
- Once the proposal is finalized call a [VOTE] to have the proposal adopted. These proposals are more serious than code changes and more serious even than release votes. The criteria for acceptance is lazy majority. The vote should remain open for at least 72 hours.
- Please update the KIP wiki page, and the index below, to reflect the current stage of the KIP after a vote. This acts as the permanent record indicating the result of the KIP (e.g., Accepted or Rejected). Also report the result of the KIP vote to the voting thread on the mailing list so the conclusion is clear.
KIP round-up
Next KIP Number: 450526
Use this number as the identifier for your KIP and increment this value.
...
Please insert new rows in sorted order (descending by KIP number).
KIP (please keep this sorted by KIP number) | Release | |||||
---|---|---|---|---|---|---|
1 | KIP-500: Replace ZooKeeper with a Self-Managed Metadata Quorum | |||||
2 | KIP-482: The Kafka Protocol should Support Optional Tagged Fields | 2.4 | 443: Return to default segment.ms and segment.index.bytes in Streams repartition topics2.3.0 | 2 | KIP-436: Add a metric indicating start time | 2.3.0 (WIP) |
3 | KIP | -415: Incremental Cooperative Rebalancing in Kafka Connect-504 - Add new Java Authorizer Interface | 2. | 34.0 (WIP) | ||
4 | KIP-427503: Add AtMinIsr topic partition category (new metric & TopicCommand option)metric for number of topics marked for deletion | 2.34.0 (WIP) | ||||
5 | KIP-430 - Return Authorized Operations in Describe Responses497: Add inter-broker API to alter ISR | 2.34.0 (WIP) | ||||
6 | KIP- | 428: Add in-memory window store496: Administrative API to delete consumer offsets | 2. | 34.0 (WIP) | ||
7 | KIP-425: Add some Log4J Kafka Appender Properties for Producing to Secured Brokers488: Clean up Sum,Count,Total Metrics | 2.34.0 | ||||
8 | KIP-420: Add Single Value Fetch in Session Stores484: Expose metrics for group and transaction metadata loading duration | 2.24.0 (WIP) | ||||
9 | KIP- | 412: Extend Admin API to support dynamic application log levels480: Sticky Partitioner | 2. | 34.0 | (WIP)||
10 | KIP- | 414: Expose Embedded ClientIds in Kafka Streams479: Add Materialized to Join | 2. | 24.0(WIP) | ||
11 | KIP-402: Improve fairness in SocketServer processors476: Add Java AdminClient Interface | 2.24.0 (WIP) | ||||
12 | KIP- | 394: Require member.id for initial join group request475: New Metrics to Measure Number of Tasks on a Connector | 2. | 24.0 (WIP) | ||
13 | KIP- | 393: Time windowed serde to properly deserialize changelog input topic474: To deprecate WindowStore#put(key, value) | 2. | 24.0 (WIP) | ||
14 | KIP- | 386: Standardize on Min/Avg/Max metrics' default value471: Expose RocksDB Metrics in Kafka Streams | 2. | 24.0 (WIP) | ||
15 | KIP-382: MirrorMaker 2.0467: Augment ProduceResponse error messaging for specific culprit records | 2.34.0 (WIP) | ||||
16 | KIP-380: Detect outdated control requests and bounced brokers using broker generation465: Add Consolidated Connector Endpoint to Connect REST API | 2.23.0 | ||||
17 | KIP-377: TopicCommand to use AdminClient464: Defaults for AdminClient#createTopic | 2.24.0 | ||||
18 | KIP-376: Implement AutoClosable on appropriate classes that want to be used in a try-with-resource statement462: Use local thread id for KStreams | 2.23.0 | ||||
19 | KIP-374: Add '--help' option to all available Kafka CLI commands461: Improve Replica Fetcher behavior at handling partition failure | 2.23.0 | ||||
20 | KIP- | 372: Naming Repartition Topics for Joins and Grouping460: Admin Leader Election RPC | 2. | 14.0 | ||
21 | KIP-371: Add a configuration to build custom SSL principal name458: Connector Client Config Override Policy | 2.23.0 | ||||
22 | KIP | 368: Allow SASL Connections to Periodically Re-Authenticate-455: Create an Administrative API for Replica Reassignment | 2. | 24.0 (WIP) | ||
23 | KIP-367 Introduce close(Duration) to Producer and AdminClient instead of close(long, TimeUnit)454: Expansion of the ConnectClusterState interface | 2.23.0 | ||||
24 | KIP- | 366: Make FunctionConversions deprecated453: Add close() method to RocksDBConfigSetter | 2. | 13.0 | ||
25 | KIP- | 365: Materialized, Serialized, Joined, Consumed and Produced with implicit Serde449: Add connector contexts to log messages in Connect workers | 2. | 13.0 | ||
26 | KIPKIP-361446: Add Consumer Configuration to Disable Auto Topic Creationchangelog topic configuration to KTable suppress | 2.34.0 (WIP) | ||||
27 | KIP-359: Verify leader epoch in produce requests445: In-memory Session Store | 2.3.0 (WIP) | ||||
28 | 358 Migrate Streams API to Duration instead of long ms times | 2.13.0 | ||||
29 | KIP- | 357442: | Add support to list ACLs per principalReturn to default max poll interval in Streams | 2. | 13.0 | |
30 | KIP-356: Add withCachingDisabled() to StoreBuilder440: Extend Connect Converter to support headers | 2.14.0 (WIP) | ||||
31 | KIP-353: Improve Kafka Streams Timestamp Synchronization436: Add a metric indicating start time | 2.13.0 | ||||
32 | KIP-351: Add --under-min-isr option to describe topics command434: Add Replica Fetcher and Log Cleaner Count Metrics | 2.34.0 (WIP) | ||||
33 | KIP-346: Improve LogCleaner behavior on error-430 - Return Authorized Operations in Describe Responses | 2.13.0 | ||||
34 | KIP-342 Add support for custom SASL extensions in OAuthBearer authentication429: Kafka Consumer Incremental Rebalance Protocol | 2.14.0 (WIP) | ||||
35 | KIP- | 341: Update Sticky Assignor's User Data Protocol428: Add in-memory window store | 2.3.0 | (WIP)|||
36 | KIP- | 340: Allow kafka-reassign-partitions.sh and kafka-log-dirs.sh to take admin client property file427: Add AtMinIsr topic partition category (new metric & TopicCommand option) | 2.3 | 2.1.0 | ||
37 | KIP-339: Create a new IncrementalAlterConfigs API425: Add some Log4J Kafka Appender Properties for Producing to Secured Brokers | 2.3.0 (WIP) | ||||
38 | KIP-338 Support to exclude the internal topics in kafka-topics.sh command421: Support resolving externalized secrets in AbstractConfig | 2.13.0 | ||||
39 | KIP- | 336: Consolidate ExtendedSerializer/Serializer and ExtendedDeserializer/Deserializer420: Add Single Value Fetch in Session Stores | 2. | 12.0 | ||
40 | KIP-332: Update AclCommand to use AdminClient API417: Allow JmxTool to connect to a secured RMI port | 2.13.0 | ||||
41 | KIP- | 331 Add default implementation to close() and configure() for Serializer, Deserializer and Serde415: Incremental Cooperative Rebalancing in Kafka Connect | 2.3.0 | (WIP)|||
42 | KIP-330: Add retentionPeriod in SessionBytesStoreSupplier414: Expose Embedded ClientIds in Kafka Streams | 2.12.0 | ||||
43 | KIP- | 328412: | Ability to suppress updates for KTablesExtend Admin API to support dynamic application log levels | 2. | 14.0 ( | partially implemented) / 2.3.0 (WIP)WIP) |
44 | 324: Add method to get metrics() in AdminClient | 2. | 13.0 | |||
45 | KIP- | 322: Return new error code for DeleteTopics API when topic deletion disabled.402: Improve fairness in SocketServer processors | 2.2.0 (partially implemented) / 2.3 | 2.1.0 | ||
46 | KIP-321: Update TopologyDescription to better represent Source and Sink Nodes401: TransformerSupplier/ProcessorSupplier StateStore connecting | 2.14.0 (WIP) | ||||
47 | KIP-320: Allow fetchers to detect and handle log truncation396: Add Commit/List Offsets Operations to AdminClient | 2.14.0 (partially implemented) / 2.2.0WIP) | ||||
48 | KIP-319: Replace segments with segmentInterval in WindowBytesStoreSupplier394: Require member.id for initial join group request | 2.12.0 | ||||
49 | KIP-313: Add KStream.flatTransform and KStream.flatTransformValues 393: Time windowed serde to properly deserialize changelog input topic | 2.2.0 (partially implemented) / 2.3.0 (WIP) | ||||
50 | KIP- | 312 Add Overloaded StreamsBuilder Build Method to Accept java.util.Properties389: Introduce a configurable consumer group size limit | 2. | 12.0 | ||
51 | KIP- | 308: Support dynamic update of max.connections.per.ip/max.connections.per.ip.overrides386: Standardize on Min/Avg/Max metrics' default value | 2.2 | 2.1.0 | ||
52 | KIP-306: Configuration for Delaying Response to Failed Authentication382: MirrorMaker 2.0 | 2.14.0 | ||||
53 | 305: Add Connect primitive number converters | 2.04.0 (WIP) | ||||
54 | KIP-303: Add Dynamic Routing in Streams Sink380: Detect outdated control requests and bounced brokers using broker generation | 2.02.0 | ||||
55 | KIP-302 - Enable Kafka clients 377: TopicCommand to use all DNS resolved IP addressesAdminClient | 2.12.0 | ||||
56 | KIP-298: Error Handling in Connect376: Implement AutoClosable on appropriate classes that want to be used in a try-with-resource statement | 2.02.0 | ||||
57 | KIP-297: Externalizing Secrets for Connect Configurations374: Add '--help' option to all available Kafka CLI commands | 2.02.0 | ||||
58 | KIP-295 Add Streams Configuration Allowing for Optional Topology Optimization372: Naming Repartition Topics for Joins and Grouping | 2.01.0 | ||||
59 | KIP- | 294 - Enable TLS hostname verification by default371: Add a configuration to build custom SSL principal name | 2. | 02.0 | ||
60 | KIP- | 292: Add transformValues() method to KTable369: Alternative Partitioner to Support "Always Round-Robin" Selection | 2. | 04.0 | ||
61 | KIP | -290: Support for Prefixed ACLs368: Allow SASL Connections to Periodically Re-Authenticate | 2. | 02.0 | ||
62 | KIP-289: Improve the default group id behavior in KafkaConsumer367 Introduce close(Duration) to Producer and AdminClient instead of close(long, TimeUnit) | 2.2.0 | ||||
63 | KIP-285: Connect Rest Extension Plugin366: Make FunctionConversions deprecated | 2.01.0 | ||||
64 | KIP-284: Set default retention ms for Streams repartition topics to Long.MAX_VALUE365: Materialized, Serialized, Joined, Consumed and Produced with implicit Serde | 2.01.0 | ||||
65 | KIPKIP-283: Efficient Memory Usage for Down-Conversion361: Add Consumer Configuration to Disable Auto Topic Creation | 2.03.0 | ||||
66 | KIP-282: Add the listener name to the authentication context360: Improve handling of unknown producer | 2.04.0 (WIP) | ||||
67 | KIP-281: ConsumerPerformance: Increase Polling Loop Timeout and Make It Reachable by the End User359: Verify leader epoch in produce requests | 2.04.0 (WIP) | ||||
68 | KIP- | 279: Fix log divergence between leader and follower after fast leader fail over358: Migrate Streams API to Duration instead of long ms times | 2. | 01.0 | ||
69 | KIP- | 278 - Add version option to Kafka's commands357: Add support to list ACLs per principal | 2. | 01.0 | ||
70 | KIP-277 - Fine Grained ACL for CreateTopics API356: Add withCachingDisabled() to StoreBuilder | 2.01.0 | ||||
71 | KIP- | 276 - Add StreamsConfig prefix for different consumers354: Add a Maximum Log Compaction Lag | 2. | 03.0 | ||
72 | KIP- | 274353: Improve Kafka Streams | Skipped Records MetricsTimestamp Synchronization | 2. | 01.0 | |
73 | KIP-272: Add API version tag to broker's RequestsPerSec metric352: Distinguish URPs caused by reassignment | 2.04.0 (WIP) | ||||
74 | KIP-270 - A Scala Wrapper Library for Kafka Streams351: Add --under-min-isr option to describe topics command | 2.03.0 | ||||
75 | KIP- | 268: Simplify Kafka Streams Rebalance Metadata Upgrade346: Improve LogCleaner behavior on error | 2. | 0.01 | ||
76 | KIP- | 267: Add Processor Unit Test Support to Kafka Streams Test Utils345: Introduce static membership protocol to reduce consumer rebalances | 2.4.0 (WIP), partially available in 2.3.0 | |||
77 | KIP-266: Fix consumer indefinite blocking behavior342 Add support for custom SASL extensions in OAuthBearer authentication | 2.01.0 | ||||
78 | KIP- | 265: Make Windowed Serde to public APIs341: Update Sticky Assignor's User Data Protocol | 2. | 03.0 | ||
79 | KIP- | 261: Add Single Value Fetch in Window Stores340: Allow kafka-reassign-partitions.sh and kafka-log-dirs.sh to take admin client property file | 2. | 01.0 | ||
80 | KIP-258: Allow to Store Record Timestamps in RocksDB339: Create a new IncrementalAlterConfigs API | 2.3.00 | ||||
81 | KIP- | 257 - Configurable Quota Management338 Support to exclude the internal topics in kafka-topics.sh command | 2. | 01.0 | ||
82 | KIP-255: OAuth Authentication via SASL/OAUTHBEARER336: Consolidate ExtendedSerializer/Serializer and ExtendedDeserializer/Deserializer | 2.01.0 | ||||
83 | KIP-251: Allow timestamp manipulation in Processor 332: Update AclCommand to use AdminClient API | 2.01.0 | ||||
84 | KIP- | 249: Add Delegation Token Operations to KafkaAdminClient331 Add default implementation to close() and configure() for Serializer, Deserializer and Serde | 2. | 03.0 | ||
85 | KIP- | 247330: Add | public test utils for Kafka StreamsretentionPeriod in SessionBytesStoreSupplier | 2 | 1.1.0 | |
86 | KIP- | 245: Use Properties instead of StreamsConfig in KafkaStreams constructor328: Ability to suppress updates for KTables | 2. | 01.0 | (partially implemented) / 2.3.0 (WIP) | |
87 | KIP-244324: Add Record Header support to Kafka Streams Processor APImethod to get metrics() in AdminClient | 2.01.0 | ||||
88 | KIP-243: Make ProducerConfig and ConsumerConfig constructors public322: Return new error code for DeleteTopics API when topic deletion disabled. | 21.1.0 | ||||
89 | KIP- | 239 Add queryableStoreName() to GlobalKTable321: Update TopologyDescription to better represent Source and Sink Nodes | 2 | 1.1.0 | ||
90 | KIP- | 238: Expose Kafka cluster ID in Connect REST API320: Allow fetchers to detect and handle log truncation | 2.1.0 (partially implemented) / 2.2 | 1.1.0 | ||
91 | KIP- | 237: More Controller Health Metrics319: Replace segments with segmentInterval in WindowBytesStoreSupplier | 2. | 01.0 | ||
92 | KIP-235: Add DNS alias support for secured connection313: Add KStream.flatTransform and KStream.flatTransformValues | 2.2.0 (partially implemented) / 2.3 2.1.0 | ||||
93 | KIP- | 233: Simplify StreamsBuilder#addGlobalStore312 Add Overloaded StreamsBuilder Build Method to Accept java.util.Properties | 2 | 1.1.0 | ||
94 | KIP- | 231: Improve the Required ACL of ListGroups API308: Support dynamic update of max.connections.per.ip/max.connections.per.ip.overrides | 2.1.0 | |||
95 | KIP- | 229: DeleteGroups API307: Allow to define custom processor names with KStreams DSL | 2.3.0 (partial) | 1.1.0|||
96 | KIP- | 227 - Introduce Incremental FetchRequests to Increase Partition Scalability306: Configuration for Delaying Response to Failed Authentication | 2 | 1.1.0 | ||
97 | KIP-226 - Dynamic Broker Configuration305: Add Connect primitive number converters | 2.01.1.0 | ||||
98 | KIP- | 225 - Use tags for consumer “records.lag” metrics303: Add Dynamic Routing in Streams Sink | 2.0 | 1.1.0 | ||
99 | KIP- | 224: Add configuration parameter `retries` to Streams API302 - Enable Kafka clients to use all DNS resolved IP addresses | 2 | 1.1.0 | ||
100 | KIP- | 223 - Add per-topic min lead and per-partition lead metrics to KafkaConsumer300: Add Windowed KTable API in StreamsBuilder | 2. | 04.0 | ||
101 | KIP- | 222 - Add Consumer Group operations to Admin API298: Error Handling in Connect | 2.0.0 | |||
102 | KIP- | 220: Add AdminClient into Kafka Streams' ClientSupplier297: Externalizing Secrets for Connect Configurations | 2.0 | 1.1.0 | ||
103 | KIP- | 219 - Improve quota communication295 Add Streams Configuration Allowing for Optional Topology Optimization | 2.0.0 | |||
104 | KIP- | 218: Make KafkaFuture.Function java 8 lambda compatible294 - Enable TLS hostname verification by default | 2.0 | 1.1.0 | ||
105 | 215: Add topic regex support for Connect sinks | Accepted1.1.0 | ||||
106 | KIP- | 214292: Add | zookeeper.max.in.flight.requests config to the brokertransformValues() method to KTable | 2.0 | 1.1.0 | |
107 | KIP-213 Support non-key joining in KTable290: Support for Prefixed ACLs | 2.30.0 (WIP) | ||||
108 | KIP- | 212: Enforce set of legal characters for connector names289: Improve the default group id behavior in KafkaConsumer | 2.2 | 1.1.0 | ||
109 | KIP-211: Revise Expiration Semantics of Consumer Group Offsets285: Connect Rest Extension Plugin | 2.10.0 | ||||
110 | KIP- | 210 - Provide for custom error handling when Kafka Streams fails to produce284: Set default retention ms for Streams repartition topics to Long.MAX_VALUE | 2.0 | 1.1.0 | ||
111 | KIP- | 208: Add SSL support to Kafka Connect REST interface283: Efficient Memory Usage for Down-Conversion | 2.0 | 1.1.0 | ||
112 | KIP- | 207: Offsets returned by ListOffsetsResponse should be monotonically increasing even during a partition leader change282: Add the listener name to the authentication context | 2. | 20.0 | ||
113 | KIP-206: Add support for UUID serialization and deserialization281: ConsumerPerformance: Increase Polling Loop Timeout and Make It Reachable by the End User | 2.02.1.0 | ||||
114 | KIP-205: Add all() and range() API to ReadOnlyWindowStore279: Fix log divergence between leader and follower after fast leader fail over | 2.01.1.0 | ||||
115 | KIP | -204 : Adding records deletion operation to the new Admin Client API-278 - Add version option to Kafka's commands | 2.0 | 1.1.0 | ||
116 | KIP | -203: Add toLowerCase support to sasl.kerberos.principal.to.local rule-277 - Fine Grained ACL for CreateTopics API | 2.0 | 1.1.0 | ||
117 | KIP-202: Move merge() from StreamsBuilder to KStream-276 - Add StreamsConfig prefix for different consumers | 21.0.0 | ||||
118 | KIP-198: Remove ZK dependency from Streams Reset Tool274: Kafka Streams Skipped Records Metrics | 21.0.0 | ||||
119 | KIP- | 197 Connect REST API should include the connector type when describing a connector272: Add API version tag to broker's RequestsPerSec metric | 2 | 1.0.0 | ||
120 | KIP | -196: Add metrics to Kafka Connect framework-270 - A Scala Wrapper Library for Kafka Streams | 2 | 1.0.0 | ||
121 | KIP-195: AdminClient.createPartitions268: Simplify Kafka Streams Rebalance Metadata Upgrade | 21.0.0 | ||||
122 | KIP-192 : Provide cleaner semantics when idempotence is enabled267: Add Processor Unit Test Support to Kafka Streams Test Utils | 21.0.0 | ||||
123 | KIP- | 191: KafkaConsumer.subscribe() overload that takes just Pattern266: Fix consumer indefinite blocking behavior | 2 | 1.0.0 | ||
124 | KIP-190: Handle client-ids consistently between clients and brokers265: Make Windowed Serde to public APIs | 21.0.0 | ||||
125 | KIP-189: Improve principal builder interface and add support for SASL261: Add Single Value Fetch in Window Stores | 21.0.0 | ||||
126 | KIP- | 188 - Add new metrics to support health checks258: Allow to Store Record Timestamps in RocksDB | 2.3.0 (partially implemented) | 1.0.0|||
127 | KIP-187 - Add cumulative count metric for all Kafka rate metrics257 - Configurable Quota Management | 21.0.0 | ||||
128 | KIP- | 186: Increase offsets retention default to 7 days255: OAuth Authentication via SASL/OAUTHBEARER | 2.0.0 | |||
129 | KIP-183 - Change PreferredReplicaLeaderElectionCommand to use AdminClient251: Allow timestamp manipulation in Processor API | 2.20.0 | ||||
130 | KIP-182: Reduce Streams DSL overloads and allow easier use of custom storage engines249: Add Delegation Token Operations to KafkaAdminClient | 21.0.0 | ||||
131 | KIP-180: Add a broker metric specifying the number of consumer group rebalances in progress247: Add public test utils for Kafka Streams | 1.1.0 | ||||
132 | KIP-177: Consumer perf tool should count rebalance time245: Use Properties instead of StreamsConfig in KafkaStreams constructor | 21.0.0 | ||||
133 | KIP-176: Remove deprecated new-consumer option for tools244: Add Record Header support to Kafka Streams Processor API | 2.0.0 | ||||
134 | KIP-175: Additional '--describe' views for ConsumerGroupCommand243: Make ProducerConfig and ConsumerConfig constructors public | 1.1.0 | ||||
135 | KIP-174 - Deprecate and remove internal converter configs in WorkerConfig239 Add queryableStoreName() to GlobalKTable | 1.12.0.0 | ||||
136 | KIP-173: Add prefix to StreamsConfig to enable setting default internal topic configs238: Expose Kafka cluster ID in Connect REST API | 1.01.0 | ||||
137 | KIP-171 - Extend Consumer Group Reset Offset for Stream Application237: More Controller Health Metrics | 2.01.1.0 | ||||
138 | KIP- | 168235: Add | GlobalTopicCount and GlobalPartitionCount metric per clusterDNS alias support for secured connection | 2. | 1.0 | .0|
139 | KIP-167: Add interface for the state store restoration process233: Simplify StreamsBuilder#addGlobalStore | 1.01.0 | ||||
140 | KIP- | 164 - Add UnderMinIsrPartitionCount and per-partition UnderMinIsr metrics1.0.0 | ||||
141 | 1.0.0 | |||||
142 | KIP-162: Enable topic deletion by default | 1.0.0 | ||||
231: Improve the Required ACL of ListGroups API | 2.1.0 | |||||
141 | KIP-229: DeleteGroups API | 1.1.0 | ||||
142 | KIP-227 - Introduce Incremental FetchRequests to Increase Partition Scalability | 1.1.0 | ||||
143 | KIP-226 - Dynamic Broker Configuration | 1.1. | 143 | KIP-161: streams deserialization exception handlers | 1.0.0 | |
144 | KIP-160: Augment KStream.print(), KStream.writeAsText() to allow users pass in extra parameters in the printed string-225 - Use tags for consumer “records.lag” metrics | 1.11.0.0 | ||||
145 | KIP- | 157 - Add consumer config options to streams reset tool224: Add configuration parameter `retries` to Streams API | 1. | 01.0 | ||
146 | KIP-223 - | 156 Add option "dry run" to Streams application reset toolAdd per-topic min lead and per-partition lead metrics to KafkaConsumer | 2 | 0.11.0.0 | ||
147 | KIP- | 155222 - Add | range scan for windowed state storesConsumer Group operations to Admin API | 2 | 0.11.0.0 | |
148 | KIP-154 Add Kafka Connect configuration properties for creating internal topics221: Enhance DSL with Connecting Topic Creation and Repartition Hint | 2.4.0 (WIP)0.11.0.0 | ||||
149 | KIP-153: Include only client traffic in BytesOutPerSec metric220: Add AdminClient into Kafka Streams' ClientSupplier | 1.10.11.0.0 | ||||
150 | KIP-152 219 - Improve diagnostics for SASL authentication failuresquota communication | 21.0.0 | ||||
151 | KIP-151 Expose Connector type in REST API218: Make KafkaFuture.Function java 8 lambda compatible | 1.10.11.0.0 | ||||
152 | KIP-150 - Kafka-Streams Cogroup215: Add topic regex support for Connect sinks | 1.1.02.3.0 (WIP) | ||||
153 | KIP-149: Enabling key access in ValueTransformer, ValueMapper, and ValueJoiner214: Add zookeeper.max.in.flight.requests config to the broker | 1.1.0 (partially implemented)(WIP for 2.3.0) | ||||
154 | KIP- | 146 - Classloading Isolation in Connect213 Support non-key joining in KTable | 2.4.0 (WIP) | 0.11.0.0|||
155 | KIP-145 - Expose Record Headers in Kafka Connect212: Enforce set of legal characters for connector names | 1.1.0 | ||||
156 | KIP-144: Exponential backoff for broker reconnect attempts211: Revise Expiration Semantics of Consumer Group Offsets | 2.10.11.0.0 | ||||
157 | KIP-143: Controller Health Metrics-210 - Provide for custom error handling when Kafka Streams fails to produce | 1.1.00.11.0.0 | ||||
158 | KIP-140: Add administrative RPCs for adding, deleting, and listing ACLs208: Add SSL support to Kafka Connect REST interface | 1.1.00.11.0.0 | ||||
159 | KIP-138: Change punctuate semantics207: Offsets returned by ListOffsetsResponse should be monotonically increasing even during a partition leader change | 2.21.0.0 | ||||
160 | KIP- | 137: Enhance TopicCommand --describe to show topics marked for deletion206: Add support for UUID serialization and deserialization | 2.1.0 | 0.11.0.0|||
161 | KIP-136205: Add Listener name to SelectorMetrics tagsall() and range() API to ReadOnlyWindowStore | 1.1.00.11.0.0 | ||||
162 | KIP-134: Delay initial consumer group rebalance204 : Adding records deletion operation to the new Admin Client API | 1.1.00.11.0.0 | ||||
163 | KIP-133: Describe and Alter Configs Admin APIs203: Add toLowerCase support to sasl.kerberos.principal.to.local rule | 1.1.00.11.0.0 | ||||
164 | KIP- | 130: Expose states of active tasks to KafkaStreams public API202: Move merge() from StreamsBuilder to KStream | 1.0.0 | |||
165 | KIP-129198: Streams Exactly-Once SemanticsRemove ZK dependency from Streams Reset Tool | 1.0.0 | ||||
166 | KIP-197 Connect REST API should include the connector type when describing a connector | 10.11.0.0 | ||||
166167 | KIP-128196: Add ByteArrayConverter for metrics to Kafka Connect framework | 0.111.0.0 | ||||
167168 | KIP-126 - Allow KafkaProducer to split and resend oversized batches. | 0.11.0.0 | 168 | KIP-124 - Request rate quotas | 195: AdminClient.createPartitions | 10.11.0.0 |
169 | KIP-123: Allow per stream/table timestamp extractor192 : Provide cleaner semantics when idempotence is enabled | 10.11.0.0 | ||||
170 | KIP-122: Add Reset Consumer Group Offsets tooling191: KafkaConsumer.subscribe() overload that takes just Pattern | 1.0.11.0.0 | ||||
171 | KIP-121: Add KStream peek method190: Handle client-ids consistently between clients and brokers | 1.0.11.0.0 | ||||
172 | KIP-120: Cleanup Kafka Streams builder API189: Improve principal builder interface and add support for SASL | 1.0.0 | ||||
173 | KIP-188 - Add new metrics to support health checks | 1-119: Drop Support for Scala 2.10 in Kafka 0.110.11.0.0 | ||||
174 | KIP-118: Drop Support for Java 7187 - Add cumulative count metric for all Kafka rate metrics | 12.0.0 | ||||
175 | KIP-117: Add a public AdminClient API for Kafka admin operations186: Increase offsets retention default to 7 days | 2.0.11.0.0 | ||||
176 | KIP-183 - Change PreferredReplicaLeaderElectionCommand to use AdminClient | 2.2-115: Enforce offsets.topic.replication.factor upon __consumer_offsets auto topic creation0.11.0.0 | ||||
177 | KIP-114: KTable state stores and improved semantics182: Reduce Streams DSL overloads and allow easier use of custom storage engines | 1.0.11.0.0 | ||||
178 | KIP-113: Support replicas movement between log directories180: Add a broker metric specifying the number of consumer group rebalances in progress | 1.1.0 | ||||
179 | KIP-112: Handle disk failure for JBOD177: Consumer perf tool should count rebalance time | 1.0.0 | ||||
180 | KIP-110: Add Codec for ZStandard Compression176: Remove deprecated new-consumer option for tools | 2.10.0 | ||||
181 | KIP-109: Old Consumer Deprecation175: Additional '--describe' views for ConsumerGroupCommand | 1.1.00.11.0.0 | ||||
182 | KIP-108: Create Topic Policy-174 - Deprecate and remove internal converter configs in WorkerConfig | 2.0.0.10.2.0 | ||||
183 | KIP-107: Add deleteRecordsBefore() API in AdminClient173: Add prefix to StreamsConfig to enable setting default internal topic configs | 10.11.0.0 | ||||
184 | KIP-106 - Change Default unclean.leader.election.enabled from True 171 - Extend Consumer Group Reset Offset for Stream Application | 1.1 to False0.11.0.0 | ||||
185 | KIP-105: Addition of Record Level for Sensors168: Add GlobalTopicCount and GlobalPartitionCount metric per cluster | 1.0.0.10.2.0 | ||||
186 | KIP-104167: Granular Sensors for Streams Add interface for the state store restoration process | 1.00.10.2.0 | ||||
187 | 103: Separation of Internal and External traffic 164 - Add UnderMinIsrPartitionCount and per-partition UnderMinIsr metrics | 1.0.0.10.2.0 | ||||
188 | 102 - Add close with timeout for consumers | 1.0 | 0.10.2.0 | |||
189 | KIP-101 - Alter Replication Protocol to use Leader Epoch rather than High Watermark for Truncation162: Enable topic deletion by default | 10.11.0.0 | ||||
190 | KIP-100 - Relax Type constraints in Kafka Streams API161: streams deserialization exception handlers | 1.0.0.10.2.0 | ||||
191 | KIP-99: Add Global Tables to Kafka Streams160: Augment KStream.print(), KStream.writeAsText() to allow users pass in extra parameters in the printed string | 1.0.0.10.2.0 | ||||
192 | KIP- | 98 - Exactly Once Delivery and Transactional Messaging157 - Add consumer config options to streams reset tool | 1 | 0.11.0.0 | ||
193 | KIP- | 97: Improved Kafka Client RPC Compatibility Policy156 Add option "dry run" to Streams application reset tool | 0. | 1011. | 20.0 | |
194 | KIP- | 96155 - Add | per partition metrics for in-sync and assigned replica countrange scan for windowed state stores | 0. | 1011. | 20.0 |
195 | KIP-94 Session Windows154 Add Kafka Connect configuration properties for creating internal topics | 0.1011.20.0 | ||||
196 | KIP-93: Improve invalid timestamp handling in Kafka Streams153: Include only client traffic in BytesOutPerSec metric | 0.1011.20.0 | ||||
197 | KIP-92 - Add per partition lag metrics to KafkaConsumer152 - Improve diagnostics for SASL authentication failures | 1.00.10.2.0 | ||||
198 | KIP-91 Provide Intuitive User Timeouts in The Producer151 Expose Connector type in REST API | 0.11.02.1.0 | ||||
199 | KIP-150 - 90 Kafka- Remove zkClient dependency from Streams Cogroup | 02.10.2.04.0 (WIP) | ||||
200 | KIP-89: Allow sink connectors to decouple flush and offset commit149: Enabling key access in ValueTransformer, ValueMapper, and ValueJoiner | 1.1.0 (partially implemented) (WIP for 2.4.0)0.10.2.0 | ||||
201 | KIP-88: OffsetFetch Protocol Update146 - Classloading Isolation in Connect | 0. 1011. 20.0 | ||||
202 | KIP-86: Configurable SASL callback handlers145 - Expose Record Headers in Kafka Connect | 1.12.0.0 | ||||
203 | KIP-85: Dynamic JAAS configuration for Kafka clients144: Exponential backoff for broker reconnect attempts | 0.1011.20.0 | ||||
204 | KIP-84: Support SASL SCRAM mechanisms143: Controller Health Metrics | 0.1011.20.0 | ||||
205 | KIP-82 - Add Record Headers140: Add administrative RPCs for adding, deleting, and listing ACLs | 0.11.0.0 | ||||
206 | KIP-81: Bound Fetch memory usage in the consumer138: Change punctuate semantics | 1.0.02.2.0 (WIP) | ||||
207 | KIP-137: Enhance TopicCommand -79 - ListOffsetRequest/ListOffsetResponse v1 and add timestamp search methods to the new consumer-describe to show topics marked for deletion | 0.1011.10.0 | ||||
208 | KIP-78: Cluster Id136: Add Listener name to SelectorMetrics tags | 0.1011.10.0 | ||||
209 | KIP-77: Improve Kafka Streams Join Semantics134: Delay initial consumer group rebalance | 0.1011.20.0 | ||||
210 | KIP-75 - Add per-connector Converters133: Describe and Alter Configs Admin APIs | 0.1011.10.0 | ||||
211 | KIP- | 74: Add Fetch Response Size Limit in Bytes130: Expose states of active tasks to KafkaStreams public API | 1.0. | 0.10.1.0 | ||
212 | KIP-73: Replication Quotas129: Streams Exactly-Once Semantics | 0.1011.10.0 | ||||
213 | KIP-72: Allow putting a bound on memory consumed by Incoming request 128: Add ByteArrayConverter for Kafka Connect | 0.111.0.0 | ||||
214 | KIP-71: Enable log compaction and deletion to co-exist126 - Allow KafkaProducer to split and resend oversized batches. | 0.1011.10.0 | ||||
215 | KIP-70: Revise Partition Assignment Semantics on New Consumer's Subscription Change124 - Request rate quotas | 0.1011.10.0 | ||||
216 | KIP-67: Queryable state for Kafka Streams123: Allow per stream/table timestamp extractor | 0.1011.10.0 | ||||
217 | KIP-66: Single Message Transforms for Kafka Connect122: Add Reset Consumer Group Offsets tooling | 0.10.2.0 / 0.11.0.0 | ||||
218 | KIP-65: Expose timestamps to Connect121: Add KStream peek method | 0. 1011. 10.0 | ||||
219 | KIP-63: Unify store and downstream caching in streams120: Cleanup Kafka Streams builder API | 1.00.10.1.0 | ||||
220 | KIP-62: Allow consumer to send heartbeats from a background thread119: Drop Support for Scala 2.10 in Kafka 0.11 | 0.1011.10.0 | ||||
221 | KIP-60 - Make Java client classloading more flexible118: Drop Support for Java 7 | 2.0.0.10.1.0 | ||||
222 | KIP-58 - Make Log Compaction Point Configurable117: Add a public AdminClient API for Kafka admin operations | 0.11.00.10.1.0 | ||||
223 | KIP-57 - Interoperable LZ4 Framing115: Enforce offsets.topic.replication.factor upon __consumer_offsets auto topic creation | 0.1011.0.0 | ||||
224 | KIP-56: Allow cross origin HTTP requests on all HTTP methods114: KTable state stores and improved semantics | 0.1011.0.0 | ||||
225 | KIP-55: Secure Quotas for Authenticated Users113: Support replicas movement between log directories | 10.10.1.0 | ||||
226 | KIP-54: Sticky Partition Assignment Strategy112: Handle disk failure for JBOD | 1.0.11.0.0 | ||||
227 | KIP- | 52: Connector Control APIs110: Add Codec for ZStandard Compression | 2.1 | 0.10.0.0 | ||
228 | KIP-51 - List Connectors REST API109: Old Consumer Deprecation | 0.1011.0.0 | ||||
229 | KIP-50 - Move Authorizer to o.a.k.common package108: Create Topic Policy | 0.10.12.0 | ||||
230 | KIP-48 Delegation token support for Kafka107: Add deleteRecordsBefore() API in AdminClient | 0.11.01.1.0 | ||||
231 | 45 - Standardize all client sequence interaction on j.u.Collection. 106 - Change Default unclean.leader.election.enabled from True to False | 0.1011.0.0 | ||||
232 | KIP-43: Kafka SASL enhancements105: Addition of Record Level for Sensors | 0.10.02.0 | ||||
233 | KIP-42: Add Producer and Consumer Interceptors104: Granular Sensors for Streams | 0.10.02.0 | ||||
234 | KIP-41: Consumer Max Records103: Separation of Internal and External traffic | 0.10.02.0 | ||||
235 | KIP-40: ListGroups and DescribeGroup-102 - Add close with timeout for consumers | 0.10.20.9.0.0 | ||||
236 | KIP-38: ZooKeeper Authentication101 - Alter Replication Protocol to use Leader Epoch rather than High Watermark for Truncation | 0.911.0.0 | ||||
237 | KIP-36 - Rack aware replica assignment100 - Relax Type constraints in Kafka Streams API | 0.10.02.0 | ||||
238 | KIP-35 - Retrieving protocol version99: Add Global Tables to Kafka Streams | 0.10.02.0 | ||||
239 | KIP-33 - Add a time based log index98 - Exactly Once Delivery and Transactional Messaging | 0.1011.10.0 | ||||
240 | KIP-32 - Add timestamps to Kafka message97: Improved Kafka Client RPC Compatibility Policy | 0.10.02.0 | ||||
241 | KIP-31 - Move to relative offsets in compressed message sets96 - Add per partition metrics for in-sync and assigned replica count | 0.10.02.0 | ||||
242 | KIP-28 - Add a processor client94 Session Windows | 0.10.02.0 | ||||
243 | KIP-26 - Add Kafka Connect framework for data import/export93: Improve invalid timestamp handling in Kafka Streams | 0.910.02.0 | ||||
244 | KIP-25 - System test improvements92 - Add per partition lag metrics to KafkaConsumer | 0.910.02.0 | ||||
245 | KIP-22 - Expose a Partitioner interface in the new producer91 Provide Intuitive User Timeouts in The Producer | 2.10.9.0.0 | ||||
246 | KIP-21 - Dynamic Configuration90 - Remove zkClient dependency from Streams | 0.910.02.0 (WIP) | ||||
247 | KIP-20 Enable log preallocate to improve consume performance under windows and some old Linux file system89: Allow sink connectors to decouple flush and offset commit | 0.910.02.0 | ||||
248 | KIP-19 - Add a request timeout to NetworkClient88: OffsetFetch Protocol Update | 0.910.02.0 | ||||
249 | KIP-16 - Automated Replica Lag Tuning86: Configurable SASL callback handlers | 20.9.0.0 | ||||
250 | KIP-15 - Add a close method with a timeout in the producer85: Dynamic JAAS configuration for Kafka clients | 0.910.02.0 | ||||
251 | KIP-13 - Quota Design84: Support SASL SCRAM mechanisms | 0.910.02.0 | ||||
252 | KIP-12 - Kafka Sasl/Kerberos and SSL implementation82 - Add Record Headers | 0.911.0.0 | ||||
253 | KIP-11 - Kafka Authorizer design81: Bound Fetch memory usage in the consumer | 2.4.0 (WIP)0.9.0.0 | ||||
254 | KIP-8 - Add a flush method to the producer API79 - ListOffsetRequest/ListOffsetResponse v1 and add timestamp search methods to the new consumer | 0.910.01.0 | ||||
255 | KIP-4 - Metadata Protocol Changes78: Cluster Id | 0.10.01.0 | ||||
256 | KIP-4 - Command line and centralized administrative operations77: Improve Kafka Streams Join Semantics | 0.10.2.0.9.0.0, 0.10.0.0, 0.10.1.0 | ||||
257 | KIP-3 - Mirror Maker Enhancement75 - Add per-connector Converters | 0.910.01.0 | ||||
258 | KIP-2 - Refactor brokers to allow listening on multiple ports and IPs74: Add Fetch Response Size Limit in Bytes | 0.910.01.0 | ||||
259 | KIP-1 - Remove support of request.required.acks73: Replication Quotas | 0.910.0.0 |
...
KIPs under discussion
Please insert new rows in sorted order (ascending by KIP number). Please move the adopted/accepted KIPs to the "Adopted KIPs" table above.
Please insert new rows in sorted order (by KIP number).
Dormant/inactive KIPs
Please insert new rows in sorted order (ascending by KIP number).
Discarded KIPs
Please insert new rows in sorted order (ascending by KIP number).
KIP Discussion Recordings
...