...
- 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: 468527
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- | 465: Add Consolidated Connector Endpoint to Connect REST API2.3.0 (WIP)500: Replace ZooKeeper with a Self-Managed Metadata Quorum | |||||
2 | KIP- | 462: Use local thread id for KStreams482: The Kafka Protocol should Support Optional Tagged Fields | 2. | 34.0 (WIP) | |||
3 | KIP- | 460: Admin Leader Election RPC504 - Add new Java Authorizer Interface | 2. | 34.0 (WIP) | |||
4 | KIP-454: Expansion of the ConnectClusterState interface503: Add metric for number of topics marked for deletion | 2.34.0 (WIP) | |||||
5 | KIP-453497: Add close() method to RocksDBConfigSetterinter-broker API to alter ISR | 2.34.0 (WIP) | |||||
6 | KIP- | 449: Add connector contexts to log messages in Connect workers496: Administrative API to delete consumer offsets | 2. | 34.0 (WIP) | |||
7 | KIP- | 446: Add changelog topic configuration to KTable suppress495: Dynamically Adjust Log Levels in Connect | 2. | 34.0 (WIP) | |||
8 | KIP-445: In-memory Session Store488: Clean up Sum,Count,Total Metrics | 2.34.0 | |||||
9 | KIP-443: Return to default segment.ms and segment.index.bytes in Streams repartition topics484: Expose metrics for group and transaction metadata loading duration | 2.34.0 (WIP) | |||||
10 | KIP-442: Return to default max poll interval in Streams481: SerDe Improvements for Connect Decimal type in JSON | 2.34.0 (WIP) | |||||
11 | KIP- | 436: Add a metric indicating start time480: Sticky Partitioner | 2. | 34.0 | (WIP)|||
12 | KIP- | 417479: | Allow JmxTool to connect to a secured RMI portAdd Materialized to Join | 2. | 34.0(WIP) | ||
13 | KIP- | 415: Incremental Cooperative Rebalancing in Kafka Connect476: Add Java AdminClient Interface | 2. | 34.0 | (WIP)|||
14 | KIP- | 427: Add AtMinIsr topic partition category (new metric & TopicCommand option)475: New Metrics to Measure Number of Tasks on a Connector | 2. | 34.0 (WIP) | |||
15 | KIP- | 430 - Return Authorized Operations in Describe Responses474: To deprecate WindowStore#put(key, value) | 2. | 34.0 (WIP) | |||
16 | KIP-428471: Add in-memory window storeExpose RocksDB Metrics in Kafka Streams | 2. 34.0 (WIP) | |||||
17 | KIP-425: Add some Log4J Kafka Appender Properties for Producing to Secured Brokers467: Augment ProduceResponse error messaging for specific culprit records | 2.34.0 (WIP) | |||||
18 | KIP-420465: Add Single Value Fetch in Session StoresConsolidated Connector Endpoint to Connect REST API | 2.23.0 | |||||
19 | KIP-421: Support resolving externalized secrets in AbstractConfig464: Defaults for AdminClient#createTopic | 2.34.0 | |||||
20 | KIP-412: Extend Admin API to support dynamic application log levels462: Use local thread id for KStreams | 2.3.0 (WIP) | |||||
21 | KIP-414: Expose Embedded ClientIds in Kafka Streams461: Improve Replica Fetcher behavior at handling partition failure | 2.23.0 | |||||
22 | KIP- | 402: Improve fairness in SocketServer processors460: Admin Leader Election RPC | 2. | 24.0 | (WIP)|||
23 | KIP- | 394: Require member.id for initial join group request458: Connector Client Config Override Policy | 2. | 23.0 | |||
24 | KIP-393: Time windowed serde to properly deserialize changelog input topic455: Create an Administrative API for Replica Reassignment | 2.24.0 (WIP) | |||||
25 | KIP-386: Standardize on Min/Avg/Max metrics' default value454: Expansion of the ConnectClusterState interface | 2.23.0 | |||||
26 | KIP-382: MirrorMaker 2.0453: Add close() method to RocksDBConfigSetter | 2.3.0 (WIP) | |||||
27 | KIP- | 380: Detect outdated control requests and bounced brokers using broker generation449: Add connector contexts to log messages in Connect workers | 2. | 23.0 | |||
28 | KIP-377: TopicCommand to use AdminClient446: Add changelog topic configuration to KTable suppress | 2.24.0 (WIP) | |||||
29 | KIP-376: Implement AutoClosable on appropriate classes that want to be used in a try-with-resource statement445: In-memory Session Store | 2.23.0 | |||||
30 | 374: Add '--help' option to all available Kafka CLI commands | 2.23.0 | |||||
31 | KIP-372: Naming Repartition Topics for Joins and Grouping442: Return to default max poll interval in Streams | 2.13.0 | |||||
32 | KIP- | 371: Add a configuration to build custom SSL principal name440: Extend Connect Converter to support headers | 2. | 24.0 (WIP) | |||
33 | KIP | 368: Allow SASL Connections to Periodically Re-Authenticate-436: Add a metric indicating start time | 2. | 23.0 | |||
34 | KIP-367 Introduce close(Duration) to Producer and AdminClient instead of close(long, TimeUnit)434: Add Replica Fetcher and Log Cleaner Count Metrics | 2.24.0 (WIP) | |||||
35 | KIP | -366: Make FunctionConversions deprecated-430 - Return Authorized Operations in Describe Responses | 2. | 13.0 | |||
36 | KIP-365: Materialized, Serialized, Joined, Consumed and Produced with implicit Serde429: Kafka Consumer Incremental Rebalance Protocol | 2.14.0 (WIP) | |||||
37 | KIPKIP- | 361428: Add | Consumer Configuration to Disable Auto Topic Creationin-memory window store | 2.3.0 | |||
38 | KIP- | 359: Verify leader epoch in produce requests427: Add AtMinIsr topic partition category (new metric & TopicCommand option) | 2.3.0 | (WIP)||||
39 | KIP-358: Migrate Streams API to Duration instead of long ms times425: Add some Log4J Kafka Appender Properties for Producing to Secured Brokers | 2.13.0 | |||||
40 | KIP- | 357: Add support to list ACLs per principal421: Support resolving externalized secrets in AbstractConfig | 2. | 13.0 | |||
41 | KIP- | 356420: Add | withCachingDisabled() to StoreBuilderSingle Value Fetch in Session Stores | 2. | 12.0 | ||
42 | KIP- | 353: Improve Kafka Streams Timestamp Synchronization417: Allow JmxTool to connect to a secured RMI port | 2. | 13.0 | |||
43 | KIP- | 351: Add --under-min-isr option to describe topics command415: Incremental Cooperative Rebalancing in Kafka Connect | 2.3.0 | ||||
44 | KIP-346: Improve LogCleaner behavior on error414: Expose Embedded ClientIds in Kafka Streams | 2.2.02.1 | |||||
45 | KIP- | 342 Add support for custom SASL extensions in OAuthBearer authentication412: Extend Admin API to support dynamic application log levels | 2. | 14.0 (WIP) | |||
46 | 341: Update Sticky Assignor's User Data Protocol | 2.3.0 | (WIP)|||||
47 | KIP-340: Allow kafka-reassign-partitions.sh and kafka-log-dirs.sh to take admin client property file402: Improve fairness in SocketServer processors | 2.2.0 (partially implemented) / 2.32.1.0 | |||||
48 | KIP-339: Create a new IncrementalAlterConfigs API401: TransformerSupplier/ProcessorSupplier StateStore connecting | 2.3.0 4.0 (WIP) | |||||
49 | KIP-338 Support to exclude the internal topics in kafka-topics.sh command396: Add Commit/List Offsets Operations to AdminClient | 2.14.0 (WIP) | |||||
50 | KIP-336: Consolidate ExtendedSerializer/Serializer and ExtendedDeserializer/Deserializer394: Require member.id for initial join group request | 2.12.0 | |||||
51 | KIP- | 332: Update AclCommand to use AdminClient API393: Time windowed serde to properly deserialize changelog input topic | 2. | 12.0 | |||
52 | KIP- | 331 Add default implementation to close() and configure() for Serializer, Deserializer and Serde389: Introduce a configurable consumer group size limit | 2. | 32.0 | (WIP)|||
53 | KIP-330: Add retentionPeriod in SessionBytesStoreSupplier386: Standardize on Min/Avg/Max metrics' default value | 2.12.0 | |||||
54 | KIP-328: Ability to suppress updates for KTables382: MirrorMaker 2.0 | 1.0 (partially implemented) / 2.34.0 (WIP) | |||||
55 | 324: Add method to get metrics() in AdminClient | 2. | 14.0 (WIP) | ||||
56 | KIP- | 322: Return new error code for DeleteTopics API when topic deletion disabled.380: Detect outdated control requests and bounced brokers using broker generation | 2. | 12.0 | |||
57 | KIP-321377: Update TopologyDescription to better represent Source and Sink NodesTopicCommand to use AdminClient | 2.12.0 | |||||
58 | KIP-320: Allow fetchers to detect and handle log truncation376: Implement AutoClosable on appropriate classes that want to be used in a try-with-resource statement | 2.1.0 (partially implemented) / 2.2.0 | |||||
59 | KIP-319: Replace segments with segmentInterval in WindowBytesStoreSupplier374: Add '--help' option to all available Kafka CLI commands | 2.12.0 | |||||
60 | KIP-313: Add KStream.flatTransform and KStream.flatTransformValues 372: Naming Repartition Topics for Joins and Grouping | 2.21.0 (partially implemented)/ 2.3.0 | |||||
61 | KIP- | 312 Add Overloaded StreamsBuilder Build Method to Accept java.util.Properties371: Add a configuration to build custom SSL principal name | 2. | 12.0 | |||
62 | KIP-308369: Support dynamic update of max.connections.per.ip/max.connections.per.ip.overridesAlternative Partitioner to Support "Always Round-Robin" Selection | 2.14.0 | |||||
63 | KIP | -306: Configuration for Delaying Response to Failed Authentication368: Allow SASL Connections to Periodically Re-Authenticate | 2. | 12.0 | |||
64 | KIP- | 305: Add Connect primitive number converters367 Introduce close(Duration) to Producer and AdminClient instead of close(long, TimeUnit) | 2.2 | 2.0.0 | |||
65 | KIP- | 303: Add Dynamic Routing in Streams Sink366: Make FunctionConversions deprecated | 2. | 01.0 | |||
66 | KIP-302 - Enable Kafka clients to use all DNS resolved IP addresses365: Materialized, Serialized, Joined, Consumed and Produced with implicit Serde | 2.1.0 | |||||
67 | KIPKIP-298: Error Handling in Connect361: Add Consumer Configuration to Disable Auto Topic Creation | 2.03.0 | |||||
68 | KIP-297: Externalizing Secrets for Connect Configurations360: Improve handling of unknown producer | 2.04.0 (WIP) | |||||
69 | KIP-295 Add Streams Configuration Allowing for Optional Topology Optimization359: Verify leader epoch in produce requests | 2.04.0 (WIP) | |||||
70 | KIP-294 - Enable TLS hostname verification by default358: Migrate Streams API to Duration instead of long ms times | 2.01.0 | |||||
71 | KIP- | 292357: Add | transformValues() method to KTablesupport to list ACLs per principal | 2. | 01.0 | ||
72 | KIP-290: Support for Prefixed ACLs356: Add withCachingDisabled() to StoreBuilder | 2.01.0 | |||||
73 | KIP-289: Improve the default group id behavior in KafkaConsumer354: Add a Maximum Log Compaction Lag | 2.23.0 | |||||
74 | KIP- | 285: Connect Rest Extension Plugin353: Improve Kafka Streams Timestamp Synchronization | 2. | 01.0 | |||
75 | KIP-284: Set default retention ms for Streams repartition topics to Long.MAX_VALUE352: Distinguish URPs caused by reassignment | 2.04.0 (WIP) | |||||
76 | KIP-283: Efficient Memory Usage for Down-Conversion351: Add --under-min-isr option to describe topics command | 2.32.0.0 | |||||
77 | KIP-282: Add the listener name to the authentication context346: Improve LogCleaner behavior on error | 2.0.01 | |||||
78 | KIP-281: ConsumerPerformance: Increase Polling Loop Timeout and Make It Reachable by the End User345: Introduce static membership protocol to reduce consumer rebalances | 2.4.0 (WIP), partially available in 2.3.0 | |||||
79 | KIP- | 279: Fix log divergence between leader and follower after fast leader fail over342 Add support for custom SASL extensions in OAuthBearer authentication | 2. | 01.0 | |||
80 | KIP-278 - Add version option to Kafka's commands341: Update Sticky Assignor's User Data Protocol | 2.03.0 | |||||
81 | KIP-277 - Fine Grained ACL for CreateTopics API340: Allow kafka-reassign-partitions.sh and kafka-log-dirs.sh to take admin client property file | 2.01.0 | |||||
82 | KIP- | 276 - Add StreamsConfig prefix for different consumers339: Create a new IncrementalAlterConfigs API | 2. | 03. | 00 | ||
83 | KIP | -274: Kafka Streams Skipped Records Metrics-338 Support to exclude the internal topics in kafka-topics.sh command | 2. | 01.0 | |||
84 | KIP-272: Add API version tag to broker's RequestsPerSec metric336: Consolidate ExtendedSerializer/Serializer and ExtendedDeserializer/Deserializer | 2.01.0 | |||||
85 | KIP- | 270 - A Scala Wrapper Library for Kafka Streams332: Update AclCommand to use AdminClient API | 2. | 01.0 | |||
86 | KIP- | 268: Simplify Kafka Streams Rebalance Metadata Upgrade331 Add default implementation to close() and configure() for Serializer, Deserializer and Serde | 2. | 03.0 | |||
87 | KIP- | 267330: Add | Processor Unit Test Support to Kafka Streams Test UtilsretentionPeriod in SessionBytesStoreSupplier | 2. | 01.0 | ||
88 | KIP-266: Fix consumer indefinite blocking behavior328: Ability to suppress updates for KTables | 2.1.0 (partially implemented) / 2.3.0 (WIP)2.0.0 | |||||
89 | KIP- | 265: Make Windowed Serde to public APIs324: Add method to get metrics() in AdminClient | 2. | 01.0 | |||
90 | KIP-261: Add Single Value Fetch in Window Stores322: Return new error code for DeleteTopics API when topic deletion disabled. | 2.01.0 | |||||
91 | KIP-258321: Allow to Store Record Timestamps in RocksDBUpdate TopologyDescription to better represent Source and Sink Nodes | 2.31.0 | |||||
92 | KIP- | 257 - Configurable Quota Management320: Allow fetchers to detect and handle log truncation | 2.1.0 (partially implemented) / 2.2 | 2.0.0 | |||
93 | KIP-255: OAuth Authentication via SASL/OAUTHBEARER319: Replace segments with segmentInterval in WindowBytesStoreSupplier | 2.01.0 | |||||
94 | KIP- | 251: Allow timestamp manipulation in Processor API313: Add KStream.flatTransform and KStream.flatTransformValues | 2.2.0 (partially implemented) / 2.3. | 2.0.0 | |||
95 | KIP- | 249: Add Delegation Token Operations to KafkaAdminClient312 Add Overloaded StreamsBuilder Build Method to Accept java.util.Properties | 2. | 01.0 | |||
96 | KIP-247: Add public test utils for Kafka Streams | 1.1.0 | 308: Support dynamic update of max.connections.per.ip/max.connections.per.ip.overrides | 2.1.0 | |||
97 | KIP- | 245: Use Properties instead of StreamsConfig in KafkaStreams constructor307: Allow to define custom processor names with KStreams DSL | 2. | 03.0 (partial) | |||
98 | KIP-244: Add Record Header support to Kafka Streams Processor API306: Configuration for Delaying Response to Failed Authentication | 2.01.0 | |||||
99 | KIP-243: Make ProducerConfig and ConsumerConfig constructors public305: Add Connect primitive number converters | 2.01.1.0 | |||||
100 | KIP- | 239 Add queryableStoreName() to GlobalKTable303: Add Dynamic Routing in Streams Sink | 2.0 | 1.1.0 | |||
101 | KIP- | 238: Expose Kafka cluster ID in Connect REST API302 - Enable Kafka clients to use all DNS resolved IP addresses | 2 | 1.1.0 | |||
102 | KIP- | 237: More Controller Health Metrics300: Add Windowed KTable API in StreamsBuilder | 2. | 04.0 | |||
103 | KIP-235: Add DNS alias support for secured connection298: Error Handling in Connect | 2.10.0 | |||||
104 | KIP- | 233: Simplify StreamsBuilder#addGlobalStore297: Externalizing Secrets for Connect Configurations | 2.0 | 1.1.0 | |||
105 | KIP-231: Improve the Required ACL of ListGroups API295 Add Streams Configuration Allowing for Optional Topology Optimization | 2.10.0 | |||||
106 | KIP | -229: DeleteGroups API-294 - Enable TLS hostname verification by default | 2.0 | 1.1.0 | |||
107 | 227 - Introduce Incremental FetchRequests to Increase Partition Scalability | 1.1.0 | |||||
108 | KIP-226 - Dynamic Broker Configuration | 1.1.0 | |||||
109 | KIP-225 - Use tags for consumer “records.lag” metrics | 1.1.0 | |||||
110 | KIP-224: Add configuration parameter `retries` to Streams API | 1.1.0 | |||||
Accepted | |||||||
108 | KIP-292: Add transformValues() method to KTable | 2.0.0 | |||||
109 | KIP-290: Support for Prefixed ACLs | 2.0.0 | |||||
110 | KIP-289: Improve the default group id behavior in KafkaConsumer | 2.2.0 | |||||
111 | KIP-285: Connect Rest Extension Plugin | 2.0.0 | |||||
112 | KIP-284: Set default retention ms for Streams repartition topics to Long.MAX_VALUE | 111 | KIP-223 - Add per-topic min lead and per-partition lead metrics to KafkaConsumer2.0.0 | ||||
112113 | KIP- | 222 - Add Consumer Group operations to Admin API283: Efficient Memory Usage for Down-Conversion | 2.0.0 | ||||
113114 | KIP- | 220282: Add | AdminClient into Kafka Streams' ClientSupplierthe listener name to the authentication context | 1.1.0 | 114 | KIP-219 - Improve quota communication | 2.0.0 |
115 | KIP- | 218: Make KafkaFuture.Function java 8 lambda compatible281: ConsumerPerformance: Increase Polling Loop Timeout and Make It Reachable by the End User | 2.0 | 1.1.0 | |||
116 | KIP-215: Add topic regex support for Connect sinks279: Fix log divergence between leader and follower after fast leader fail over | 2.01.1.0 | |||||
117 | KIP-278 - | 214: Add zookeeper.max.in.flight.requests config to the brokerAdd version option to Kafka's commands | 2.0 | 1.1.0 | |||
118 | KIP-213 Support non-key joining in KTable277 - Fine Grained ACL for CreateTopics API | 2.30.0 (WIP) | |||||
119 | KIP-212: Enforce set of legal characters for connector names276 - Add StreamsConfig prefix for different consumers | 2.01.1.0 | |||||
120 | KIP-211: Revise Expiration Semantics of Consumer Group Offsets274: Kafka Streams Skipped Records Metrics | 2.10.0 | |||||
121 | KIP- | 210 - Provide for custom error handling when Kafka Streams fails to produce272: Add API version tag to broker's RequestsPerSec metric | 2.0 | 1.1.0 | |||
122 | KIP- | 208: Add SSL support to Kafka Connect REST interface270 - A Scala Wrapper Library for Kafka Streams | 2.0 | 1.1.0 | |||
123 | KIP-207: Offsets returned by ListOffsetsResponse should be monotonically increasing even during a partition leader change268: Simplify Kafka Streams Rebalance Metadata Upgrade | 2.20.0 | |||||
124 | KIP- | 206: Add support for UUID serialization and deserialization267: Add Processor Unit Test Support to Kafka Streams Test Utils | 2. | 10.0 | |||
125 | KIP- | 205: Add all() and range() API to ReadOnlyWindowStore266: Fix consumer indefinite blocking behavior | 2.0 | 1.1.0 | |||
126 | KIP-204 : Adding records deletion operation to the new Admin Client API265: Make Windowed Serde to public APIs | 2.01.1.0 | |||||
127 | KIP-203: Add toLowerCase support to sasl.kerberos.principal.to.local rule261: Add Single Value Fetch in Window Stores | 2.0 1.1.0 | |||||
128 | KIP- | 202: Move merge() from StreamsBuilder to KStream258: Allow to Store Record Timestamps in RocksDB | 2.3.0 (partially implemented) | 1.0.0||||
129 | KIP-198: Remove ZK dependency from Streams Reset Tool-257 - Configurable Quota Management | 21.0.0 | |||||
130 | KIP- | 197 Connect REST API should include the connector type when describing a connector255: OAuth Authentication via SASL/OAUTHBEARER | 2 | 1.0.0 | |||
131 | KIP-196: Add metrics to Kafka Connect framework251: Allow timestamp manipulation in Processor API | 21.0.0 | |||||
132 | KIP-195: AdminClient.createPartitions249: Add Delegation Token Operations to KafkaAdminClient | 21.0.0 | |||||
133 | KIP-192 : Provide cleaner semantics when idempotence is enabled247: Add public test utils for Kafka Streams | 1.01.0 | |||||
134 | KIP-191: KafkaConsumer.subscribe() overload that takes just Pattern245: Use Properties instead of StreamsConfig in KafkaStreams constructor | 21.0.0 | |||||
135 | KIP- | 190: Handle client-ids consistently between clients and brokers244: Add Record Header support to Kafka Streams Processor API | 2 | 1.0.0 | |||
136 | KIP-189: Improve principal builder interface and add support for SASL243: Make ProducerConfig and ConsumerConfig constructors public | 1.01.0 | |||||
137 | KIP-188 - Add new metrics to support health checks239 Add queryableStoreName() to GlobalKTable | 1.01.0 | |||||
138 | KIP-187 - Add cumulative count metric for all Kafka rate metrics238: Expose Kafka cluster ID in Connect REST API | 1.01.0 | |||||
139 | KIP-186: Increase offsets retention default to 7 days237: More Controller Health Metrics | 2.0.0 | |||||
140 | KIP- | 183 - Change PreferredReplicaLeaderElectionCommand to use AdminClient235: Add DNS alias support for secured connection | 2. | 21.0 | |||
141 | KIP-182: Reduce Streams DSL overloads and allow easier use of custom storage engines233: Simplify StreamsBuilder#addGlobalStore | 1.01.0 | |||||
142 | KIP- | 180: Add a broker metric specifying the number of consumer group rebalances in progress231: Improve the Required ACL of ListGroups API | 2 | 1.1.0 | |||
143 | KIP-177: Consumer perf tool should count rebalance time229: DeleteGroups API | 1.01.0 | |||||
144 | KIP- | 176: Remove deprecated new-consumer option for tools227 - Introduce Incremental FetchRequests to Increase Partition Scalability | 1.1 | 2.0.0 | |||
145 | KIP-175: Additional '--describe' views for ConsumerGroupCommand226 - Dynamic Broker Configuration | 1.1.0 | |||||
146 | KIP-174 - Deprecate and remove internal converter configs in WorkerConfig225 - Use tags for consumer “records.lag” metrics | 1.12.0.0 | |||||
147 | KIP-173224: Add prefix to StreamsConfig to enable setting default internal topic configsconfiguration parameter `retries` to Streams API | 1.01.0 | |||||
148 | KIP-171 - Extend Consumer Group Reset Offset for Stream Application223 - Add per-topic min lead and per-partition lead metrics to KafkaConsumer | 2.01.1.0 | |||||
149 | KIP-168: Add GlobalTopicCount and GlobalPartitionCount metric per cluster222 - Add Consumer Group operations to Admin API | 21.0.0 | |||||
150 | KIP-167: Add interface for the state store restoration process221: Enhance DSL with Connecting Topic Creation and Repartition Hint | 2.4.0 (WIP)1.0.0 | |||||
151 | KIP-164 - Add UnderMinIsrPartitionCount and per-partition UnderMinIsr metrics220: Add AdminClient into Kafka Streams' ClientSupplier | 1.01.0 | |||||
152 | KIP | -163: Lower the Minimum Required ACL Permission of OffsetFetch-219 - Improve quota communication | 2 | 1.0.0 | |||
153 | KIP-162: Enable topic deletion by default218: Make KafkaFuture.Function java 8 lambda compatible | 1.01.0 | |||||
154 | KIP-161: streams deserialization exception handlers215: Add topic regex support for Connect sinks | 1.01.0 | |||||
155 | KIP-160: Augment KStream.print(), KStream.writeAsText() to allow users pass in extra parameters in the printed string214: Add zookeeper.max.in.flight.requests config to the broker | 1.11.0.0 | |||||
156 | KIP-157 - Add consumer config options to streams reset tool213 Support non-key joining in KTable | 2.4.0 (WIP)1.0.0 | |||||
157 | KIP- | 156 Add option "dry run" to Streams application reset tool212: Enforce set of legal characters for connector names | 1.1 | 0.11.0.0 | |||
158 | KIP- | 155 - Add range scan for windowed state stores211: Revise Expiration Semantics of Consumer Group Offsets | 2.1.0 | 0.11.0.0||||
159 | KIP-154 Add Kafka Connect configuration properties for creating internal topics210 - Provide for custom error handling when Kafka Streams fails to produce | 1.1.00.11.0.0 | |||||
160 | KIP-153: Include only client traffic in BytesOutPerSec metric208: Add SSL support to Kafka Connect REST interface | 1.1.00.11.0.0 | |||||
161 | KIP-152 - Improve diagnostics for SASL authentication failures207: Offsets returned by ListOffsetsResponse should be monotonically increasing even during a partition leader change | 2.21.0.0 | |||||
162 | KIP- | 151 Expose Connector type in REST API206: Add support for UUID serialization and deserialization | 2.1.0 | 0.11.0.0||||
163 | KIP-150 - Kafka-Streams Cogroup | 2.3.0 (WIP) | 205: Add all() and range() API to ReadOnlyWindowStore | 1.1.0 | |||
164 | KIP-149: Enabling key access in ValueTransformer, ValueMapper, and ValueJoiner204 : Adding records deletion operation to the new Admin Client API | 1.1.0 (partially implemented)(WIP for 2.3.0) | |||||
165 | KIP-146 - Classloading Isolation in Connect | 0.11.0.0 | 166 | KIP-145 - Expose Record Headers in Kafka Connect203: Add toLowerCase support to sasl.kerberos.principal.to.local rule | 1.1.0 | ||
167166 | KIP-144: Exponential backoff for broker reconnect attempts202: Move merge() from StreamsBuilder to KStream | 10.11.0.0 | |||||
168167 | KIP-143: Controller Health Metrics198: Remove ZK dependency from Streams Reset Tool | 1.0.0 | |||||
168 | KIP-197 Connect REST API should include the connector type when describing a connector | 10.11.0.0 | |||||
169 | KIP-140: Add administrative RPCs for adding, deleting, and listing ACLs196: Add metrics to Kafka Connect framework | 10.11.0.0 | |||||
170 | KIP-138: Change punctuate semantics195: AdminClient.createPartitions | 1.0.0 | |||||
171 | KIP-137: Enhance TopicCommand --describe to show topics marked for deletion192 : Provide cleaner semantics when idempotence is enabled | 1.0.11.0.0 | |||||
172 | KIP-136: Add Listener name to SelectorMetrics tags191: KafkaConsumer.subscribe() overload that takes just Pattern | 1.0.11.0.0 | |||||
173 | KIP-134: Delay initial consumer group rebalance190: Handle client-ids consistently between clients and brokers | 10.11.0.0 | |||||
174 | KIP-133: Describe and Alter Configs Admin APIs189: Improve principal builder interface and add support for SASL | 10.11.0.0 | |||||
175 | KIP | -130: Expose states of active tasks to KafkaStreams public API-188 - Add new metrics to support health checks | 1.0.0 | ||||
176 | KIP-129: Streams Exactly-Once Semantics187 - Add cumulative count metric for all Kafka rate metrics | 1.0.11.0.0 | |||||
177 | KIP-128: Add ByteArrayConverter for Kafka Connect186: Increase offsets retention default to 7 days | 2.0.11.0.0 | |||||
178 | KIP-126 183 - Allow KafkaProducer to split and resend oversized batches.Change PreferredReplicaLeaderElectionCommand to use AdminClient | 2.20.11.0.0 | |||||
179 | KIP-124 - Request rate quotas182: Reduce Streams DSL overloads and allow easier use of custom storage engines | 1.0.11.0.0 | |||||
180 | KIP-123: Allow per stream/table timestamp extractor180: Add a broker metric specifying the number of consumer group rebalances in progress | 1.10.11.0.0 | |||||
181 | KIP-122177: Add Reset Consumer Group Offsets toolingConsumer perf tool should count rebalance time | 10.11.0.0 | |||||
182 | KIP- | 121: Add KStream peek method176: Remove deprecated new-consumer option for tools | 2 | 0.11.0.0 | |||
183 | KIP-120: Cleanup Kafka Streams builder API175: Additional '--describe' views for ConsumerGroupCommand | 1.01.0 | |||||
184 | KIP-119: Drop Support for Scala 2.10 in Kafka 0.11 | 0.11.0.0 | 174 - Deprecate and remove internal converter configs in WorkerConfig | 2.0.0 | |||
185 | KIP-118: Drop Support for Java 7173: Add prefix to StreamsConfig to enable setting default internal topic configs | 12.0.0 | |||||
186 | KIP-117: Add a public AdminClient API for Kafka admin operations-171 - Extend Consumer Group Reset Offset for Stream Application | 1.10.11.0.0 | |||||
187 | KIP-115: Enforce offsets.topic.replication.factor upon __consumer_offsets 168: Add GlobalTopicCount and GlobalPartitionCount metric per cluster | 1 auto topic creation0.11.0.0 | |||||
188 | KIP-114: KTable state stores and improved semantics167: Add interface for the state store restoration process | 1.0.11.0.0 | |||||
189 | 113: Support replicas movement between log directories 164 - Add UnderMinIsrPartitionCount and per-partition UnderMinIsr metrics | 1.10.0 | |||||
190 | 112: Handle disk failure for JBOD | 1.0.0 | |||||
191 | KIP- | 110: Add Codec for ZStandard Compression162: Enable topic deletion by default | 1.0 | 2.1.0 | |||
192 | KIP-109: Old Consumer Deprecation161: streams deserialization exception handlers | 1.0.11.0.0 | |||||
193 | KIP-108: Create Topic Policy160: Augment KStream.print(), KStream.writeAsText() to allow users pass in extra parameters in the printed string | 1.00.10.2.0 | |||||
194 | KIP- | 107: Add deleteRecordsBefore() API in AdminClient157 - Add consumer config options to streams reset tool | 1. | 0.11.0.0 | |||
195 | KIP- | 106 - Change Default unclean.leader.election.enabled from True to False156 Add option "dry run" to Streams application reset tool | 0.11.0.0 | ||||
196 | KIP- | 105: Addition of Record Level for Sensors155 - Add range scan for windowed state stores | 0. | 1011. | 20.0 | ||
197 | KIP-104: Granular Sensors for Streams 154 Add Kafka Connect configuration properties for creating internal topics | 0.1011.20.0 | |||||
198 | KIP-103: Separation of Internal and External traffic153: Include only client traffic in BytesOutPerSec metric | 0.1011.20.0 | |||||
199 | KIP-102 - Add close with timeout for consumers152 - Improve diagnostics for SASL authentication failures | 1.0.0.10.2.0 | |||||
200 | KIP-101 - Alter Replication Protocol to use Leader Epoch rather than High Watermark for Truncation151 Expose Connector type in REST API | 0.11.0.0 | |||||
201 | KIP-100 150 - Relax Type constraints in Kafka-Streams APICogroup | 02.10.2.04.0 (WIP) | |||||
202 | KIP-99: Add Global Tables to Kafka Streams149: Enabling key access in ValueTransformer, ValueMapper, and ValueJoiner | 1.1.0 (partially implemented) (WIP for 2.4.0)0.10.2.0 | |||||
203 | KIP-98 - Exactly Once Delivery and Transactional Messaging146 - Classloading Isolation in Connect | 0.11.0.0 | |||||
204 | KIP-97: Improved Kafka Client RPC Compatibility Policy-145 - Expose Record Headers in Kafka Connect | 1.1.0.10.2.0 | |||||
205 | KIP-96 - Add per partition metrics for in-sync and assigned replica count144: Exponential backoff for broker reconnect attempts | 0.1011.20.0 | |||||
206 | KIP-94 Session Windows143: Controller Health Metrics | 0.1011.20.0 | |||||
207 | KIP-93: Improve invalid timestamp handling in Kafka Streams140: Add administrative RPCs for adding, deleting, and listing ACLs | 0.1011.20.0 | |||||
208 | KIP-92 - Add per partition lag metrics to KafkaConsumer138: Change punctuate semantics | 1.0.0.10.2.0 | |||||
209 | KIP-91 Provide Intuitive User Timeouts in The Producer137: Enhance TopicCommand --describe to show topics marked for deletion | 0.11.02.1.0 | |||||
210 | KIP-90 - Remove zkClient dependency from Streams136: Add Listener name to SelectorMetrics tags | 0.1011.20.0 | |||||
211 | KIP-89: Allow sink connectors to decouple flush and offset commit134: Delay initial consumer group rebalance | 0.1011.20.0 | |||||
212 | KIP-88: OffsetFetch Protocol Update133: Describe and Alter Configs Admin APIs | 0.1011.20.0 | |||||
213 | KIP- | 86: Configurable SASL callback handlers130: Expose states of active tasks to KafkaStreams public API | 1 | 2.0.0 | |||
214 | KIP-85: Dynamic JAAS configuration for Kafka clients129: Streams Exactly-Once Semantics | 0.1011.20.0 | |||||
215 | KIP-84: Support SASL SCRAM mechanisms128: Add ByteArrayConverter for Kafka Connect | 0.1011.20.0 | |||||
216 | KIP-82 - Add Record Headers126 - Allow KafkaProducer to split and resend oversized batches. | 0.11.0.0 | |||||
217 | KIP-81: Bound Fetch memory usage in the consumer124 - Request rate quotas | 0.11.0.02.2.0 (WIP) | |||||
218 | KIP-79 - ListOffsetRequest/ListOffsetResponse v1 and add timestamp search methods to the new consumer123: Allow per stream/table timestamp extractor | 0.1011.10.0 | |||||
219 | KIP-78: Cluster Id122: Add Reset Consumer Group Offsets tooling | 0.1011.10.0 | |||||
220 | KIP-77: Improve Kafka Streams Join Semantics121: Add KStream peek method | 0. 1011. 20.0 | |||||
221 | KIP-75 - Add per-connector Converters120: Cleanup Kafka Streams builder API | 1.0.0.10.1.0 | |||||
222 | KIP-74: Add Fetch Response Size Limit in Bytes119: Drop Support for Scala 2.10 in Kafka 0.11 | 0.1011.10.0 | |||||
223 | KIP-73: Replication Quotas118: Drop Support for Java 7 | 2.00.10.1.0 | |||||
224 | KIP-72117: Allow putting a bound on memory consumed by Incoming request Add a public AdminClient API for Kafka admin operations | 0.111.0.0 | |||||
225 | KIP-71: Enable log compaction and deletion to co-exist115: Enforce offsets.topic.replication.factor upon __consumer_offsets auto topic creation | 0.1011.10.0 | |||||
226 | KIP-70: Revise Partition Assignment Semantics on New Consumer's Subscription Change114: KTable state stores and improved semantics | 0.1011.10.0 | |||||
227 | KIP-67: Queryable state for Kafka Streams113: Support replicas movement between log directories | 1.0.10.1.0 | |||||
228 | KIP-66: Single Message Transforms for Kafka Connect112: Handle disk failure for JBOD | 10.10.2.0 / 0.11.0.0 | |||||
229 | KIP- | 65: Expose timestamps to Connect110: Add Codec for ZStandard Compression | 2 | 0.10.1.0 | |||
230 | KIP-63: Unify store and downstream caching in streams109: Old Consumer Deprecation | 0.11.00.10.1.0 | |||||
231 | KIP-62: Allow consumer to send heartbeats from a background thread108: Create Topic Policy | 0.10.12.0 | |||||
232 | KIP-60 - Make Java client classloading more flexible107: Add deleteRecordsBefore() API in AdminClient | 0.1011.10.0 | |||||
233 | 58 - Make Log Compaction Point Configurable 106 - Change Default unclean.leader.election.enabled from True to False | 0.1011.10.0 | |||||
234 | KIP-57 - Interoperable LZ4 Framing105: Addition of Record Level for Sensors | 0.10.02.0 | |||||
235 | KIP-56: Allow cross origin HTTP requests on all HTTP methods104: Granular Sensors for Streams | 0.10.02.0 | |||||
236 | KIP-55: Secure Quotas for Authenticated Users103: Separation of Internal and External traffic | 0.10.12.0 | |||||
237 | KIP-54: Sticky Partition Assignment Strategy-102 - Add close with timeout for consumers | 0.1110.02.0 | |||||
238 | KIP-52: Connector Control APIs101 - Alter Replication Protocol to use Leader Epoch rather than High Watermark for Truncation | 0.1011.0.0 | |||||
239 | KIP-51 - List Connectors REST 100 - Relax Type constraints in Kafka Streams API | 0.10.02.0 | |||||
240 | KIP-50 - Move Authorizer to o.a.k.common package99: Add Global Tables to Kafka Streams | 0.10.12.0 | |||||
241 | KIP-48 Delegation token support for Kafka | 1.1.0 | 242 | KIP-45 - Standardize all client sequence interaction on j.u.Collection.98 - Exactly Once Delivery and Transactional Messaging | 0.1011.0.0 | ||
243242 | KIP-4397: Kafka SASL enhancementsImproved Kafka Client RPC Compatibility Policy | 0.10.02.0 | |||||
244243 | KIP-42: Add Producer and Consumer Interceptors96 - Add per partition metrics for in-sync and assigned replica count | 0.10.2.0 | |||||
244 | KIP-94 Session Windows | 0.10.2.0 | |||||
245 | KIP-41: Consumer Max Records93: Improve invalid timestamp handling in Kafka Streams | 0.10.02.0 | |||||
246 | KIP-40: ListGroups and DescribeGroup-92 - Add per partition lag metrics to KafkaConsumer | 0.910.02.0 | |||||
247 | KIP-38: ZooKeeper Authentication91 Provide Intuitive User Timeouts in The Producer | 2.1.00.9.0.0 | |||||
248 | KIP-36 - Rack aware replica assignment90 - Remove zkClient dependency from Streams | 0.10.02.0 | |||||
249 | KIP-35 - Retrieving protocol version89: Allow sink connectors to decouple flush and offset commit | 0.10.02.0 | |||||
250 | KIP-33 - Add a time based log index88: OffsetFetch Protocol Update | 0.10.12.0 | |||||
251 | KIP-32 - Add timestamps to Kafka message86: Configurable SASL callback handlers | 2.0.10.0.0 | |||||
252 | KIP-31 - Move to relative offsets in compressed message sets85: Dynamic JAAS configuration for Kafka clients | 0.10.02.0 | |||||
253 | KIP-28 - Add a processor client84: Support SASL SCRAM mechanisms | 0.10.02.0 | |||||
254 | KIP-26 82 - Add Kafka Connect framework for data import/exportRecord Headers | 0.911.0.0 | |||||
255 | KIP-25 - System test improvements81: Bound Fetch memory usage in the consumer | 2.4.0 (WIP)0.9.0.0 | |||||
256 | KIP-22 - Expose a Partitioner interface in the new producer79 - ListOffsetRequest/ListOffsetResponse v1 and add timestamp search methods to the new consumer | 0.910.01.0 | |||||
257 | KIP-21 - Dynamic Configuration78: Cluster Id | 0.910.01.0 (WIP) | |||||
258 | KIP-20 Enable log preallocate to improve consume performance under windows and some old Linux file system77: Improve Kafka Streams Join Semantics | 0.910.02.0 | |||||
259 | KIP-19 75 - Add a request timeout to NetworkClientper-connector Converters | 0.910.01.0 | |||||
260 | KIP-16 - Automated Replica Lag Tuning74: Add Fetch Response Size Limit in Bytes | 0.910.01.0 | |||||
261 | KIP-15 - Add a close method with a timeout in the producer73: Replication Quotas | 0.910.01.0 | |||||
262 | KIP-13 - Quota Design72: Allow putting a bound on memory consumed by Incoming request | 10.9.0.0 | |||||
263 | KIP-12 - Kafka Sasl/Kerberos and SSL implementation71: Enable log compaction and deletion to co-exist | 0.910.01.0 | |||||
264 | KIP-11 - Kafka Authorizer design70: Revise Partition Assignment Semantics on New Consumer's Subscription Change | 0.910.01.0 | |||||
265 | KIP-8 - Add a flush method to the producer API67: Queryable state for Kafka Streams | 0.910.01.0 | |||||
266 | KIP-4 - Metadata Protocol Changes66: Single Message Transforms for Kafka Connect | 0.10.2.0 / 0.11.0.0 | |||||
267 | KIP-4 - Command line and centralized administrative operations65: Expose timestamps to Connect | 0.910.01.0, | |||||
268 | KIP-63: Unify store and downstream caching in streams | 0.10.01.0, | |||||
269 | KIP-62: Allow consumer to send heartbeats from a background thread | 0.10.1.0 | |||||
268270 | KIP-3 - Mirror Maker Enhancement60 - Make Java client classloading more flexible | 0.910.01.0 | |||||
269271 | KIP-2 - Refactor brokers to allow listening on multiple ports and IPs58 - Make Log Compaction Point Configurable | 0.910.01.0 | |||||
270272 | KIP-1 - Remove support of request.required.acks57 - Interoperable LZ4 Framing | 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
...