...
- 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: 471529
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- | 464: Defaults for AdminClient#createTopic2.3.0 (WIP) | ||||
2 | KIP-465: Add Consolidated Connector Endpoint to Connect REST API | 2.3.0 | ||||
500: Replace ZooKeeper with a Self-Managed Metadata Quorum | ||||||
2 | KIP-482: The Kafka Protocol should Support Optional Tagged Fields | 2.4.0 (WIP) | ||||
3 | KIP-504 - Add new Java Authorizer Interface | 2.4.0 (WIP) | 3 | KIP-462: Use local thread id for KStreams | 2.3.0 | |
4 | KIP- | 460: Admin Leader Election RPC503: Add metric for number of topics marked for deletion | 2. | 34.0 (WIP) | ||
5 | KIP-454: Expansion of the ConnectClusterState interface497: Add inter-broker API to alter ISR | 2.34.0 (WIP) | ||||
6 | KIP-453: Add close() method to RocksDBConfigSetter496: Administrative API to delete consumer offsets | 2.34.0 (WIP) | ||||
7 | KIP-449: Add connector contexts to log messages 495: Dynamically Adjust Log Levels in Connect workers | 2.34.0 (WIP) | ||||
8 | KIP-446: Add changelog topic configuration to KTable suppress488: Clean up Sum,Count,Total Metrics | 2.34.0 (WIP) | ||||
9 | KIP-445: In-memory Session Store484: Expose metrics for group and transaction metadata loading duration | 2.34.0 (WIP) | ||||
10 | KIP-443: Return to default segment.ms and segment.index.bytes in Streams repartition topics | 2.3.0 | 481: SerDe Improvements for Connect Decimal type in JSON | 2.4.0 (WIP) | ||
11 | KIP- | 442: Return to default max poll interval in Streams480: Sticky Partitioner | 2. | 34.0 | ||
12 | KIP- | 436479: Add | a metric indicating start timeMaterialized to Join | 2. | 34.0(WIP) | |
13 | KIP-417: Allow JmxTool to connect to a secured RMI port476: Add Java AdminClient Interface | 2.34.0 | ||||
14 | KIP-415: Incremental Cooperative Rebalancing in Kafka Connect475: New Metrics to Measure Number of Tasks on a Connector | 2.34.0 (WIP) | ||||
15 | KIP- | 427: Add AtMinIsr topic partition category (new metric & TopicCommand option474: To deprecate WindowStore#put(key, value) | 2. | 34.0 (WIP) | ||
16 | KIP- | 430 - Return Authorized Operations in Describe Responses471: Expose RocksDB Metrics in Kafka Streams | 2. | 34.0 (WIP) | ||
17 | KIP- | 428: Add in-memory window store467: Augment ProduceResponse error messaging for specific culprit records | 2. | 34.0 (WIP) | ||
18 | KIP-425465: Add some Log4J Kafka Appender Properties for Producing to Secured BrokersConsolidated Connector Endpoint to Connect REST API | 2.3.0 | ||||
19 | KIP-420: Add Single Value Fetch in Session Stores464: Defaults for AdminClient#createTopic | 2.24.0 | ||||
20 | KIP-421: Support resolving externalized secrets in AbstractConfig462: Use local thread id for KStreams | 2.3.0 | ||||
21 | KIP-412: Extend Admin API to support dynamic application log levels461: Improve Replica Fetcher behavior at handling partition failure | 2.3.0 (WIP) | ||||
22 | KIP- | 414: Expose Embedded ClientIds in Kafka Streams460: Admin Leader Election RPC | 2. | 24.0 | ||
23 | KIP-411: Make default Kafka Connect worker task client IDs distinct458: Connector Client Config Override Policy | 2.3.0 | ||||
24 | KIP-402: Improve fairness in SocketServer processors455: Create an Administrative API for Replica Reassignment | 2.24.0 (WIP) | ||||
25 | KIP-394: Require member.id for initial join group request454: Expansion of the ConnectClusterState interface | 2.23.0 | ||||
26 | KIP-393: Time windowed serde to properly deserialize changelog input topic453: Add close() method to RocksDBConfigSetter | 2.23.0 | ||||
27 | KIP- | 386: Standardize on Min/Avg/Max metrics' default value449: Add connector contexts to log messages in Connect workers | 2. | 23.0 | ||
28 | KIP-446: Add changelog topic configuration to KTable suppress | 382: MirrorMaker 2.4.0 (WIP) | ||||
29 | KIP-445: In-memory Session Store | 2.3.0 | ||||
2930 | 380: Detect outdated control requests and bounced brokers using broker generation | 2.2.0 | 30 | KIP-377: TopicCommand to use AdminClient | 2.32.2.0 | |
31 | KIP-376: Implement AutoClosable on appropriate classes that want to be used in a try-with-resource statement442: Return to default max poll interval in Streams | 2.23.0 | ||||
32 | KIP-374: Add '--help' option to all available Kafka CLI commands440: Extend Connect Converter to support headers | 2.24.0 (WIP) | ||||
33 | KIP-372: Naming Repartition Topics for Joins and Grouping436: Add a metric indicating start time | 2.13.0 | ||||
34 | KIP- | 371: Add a configuration to build custom SSL principal name434: Add Replica Fetcher and Log Cleaner Count Metrics | 2. | 24.0 (WIP) | ||
35 | KIP | 368: Allow SASL Connections to Periodically Re-Authenticate-430 - Return Authorized Operations in Describe Responses | 2. | 23.0 | ||
36 | KIP-367 Introduce close(Duration) to Producer and AdminClient instead of close(long, TimeUnit)429: Kafka Consumer Incremental Rebalance Protocol | 2.24.0 (WIP) | ||||
37 | KIP-366: Make FunctionConversions deprecated428: Add in-memory window store | 2.13.0 | ||||
38 | KIP- | 365: Materialized, Serialized, Joined, Consumed and Produced with implicit Serde427: Add AtMinIsr topic partition category (new metric & TopicCommand option) | 2. | 13.0 | ||
39 | KIPKIP-361425: Add Consumer Configuration to Disable Auto Topic Creationsome Log4J Kafka Appender Properties for Producing to Secured Brokers | 2.3.0 | ||||
40 | KIP-359: Verify leader epoch in produce requests421: Support resolving externalized secrets in AbstractConfig | 2.3.0 (WIP) | ||||
41 | KIP- | 358: Migrate Streams API to Duration instead of long ms times420: Add Single Value Fetch in Session Stores | 2. | 12.0 | ||
42 | KIP-357: Add support to list ACLs per principal417: Allow JmxTool to connect to a secured RMI port | 2.13.0 | ||||
43 | KIP- | 356: Add withCachingDisabled() to StoreBuilder415: Incremental Cooperative Rebalancing in Kafka Connect | 2. | 13.0 | ||
44 | KIP-353: Improve 414: Expose Embedded ClientIds in Kafka Streams Timestamp Synchronization | 2.12.0 | ||||
45 | KIP- | 351: Add --under-min-isr option to describe topics command412: Extend Admin API to support dynamic application log levels | 2. | 34.0 (WIP) | ||
46 | 346: Improve LogCleaner behavior on error | 2. | 13.0 | |||
47 | KIP-342 Add support for custom SASL extensions in OAuthBearer authentication402: Improve fairness in SocketServer processors | 2.2.0 (partially implemented) / 2.32.1.0 | ||||
48 | KIP-341: Update Sticky Assignor's User Data Protocol401: TransformerSupplier/ProcessorSupplier StateStore connecting | 2.34.0 (WIP) | ||||
49 | KIP-340: Allow kafka-reassign-partitions.sh and kafka-log-dirs.sh to take admin client property file396: Add Commit/List Offsets Operations to AdminClient | 2.14.0 (WIP) | ||||
50 | KIP-339: Create a new IncrementalAlterConfigs API394: Require member.id for initial join group request | 2.32.0 0 | ||||
51 | KIP-338 Support to exclude the internal topics in kafka-topics.sh command393: Time windowed serde to properly deserialize changelog input topic | 2.12.0 | ||||
52 | KIP- | 336: Consolidate ExtendedSerializer/Serializer and ExtendedDeserializer/Deserializer389: Introduce a configurable consumer group size limit | 2. | 12.0 | ||
53 | KIP- | 332: Update AclCommand to use AdminClient API386: Standardize on Min/Avg/Max metrics' default value | 2. | 12.0 | ||
54 | KIP-331 Add default implementation to close() and configure() for Serializer, Deserializer and Serde382: MirrorMaker 2.0 | 2.34.0 (WIP) | ||||
55 | 330: Add retentionPeriod in SessionBytesStoreSupplier | 2. | 14.0 (WIP) | |||
56 | KIP-328: Ability to suppress updates for KTables380: Detect outdated control requests and bounced brokers using broker generation | 2.1.0 (partially implemented) / 2.3.0 (WIP) | ||||
57 | KIP-324377: Add method to get metrics() in TopicCommand to use AdminClient | 2.12.0 | ||||
58 | KIP- | 322: Return new error code for DeleteTopics API when topic deletion disabled.376: Implement AutoClosable on appropriate classes that want to be used in a try-with-resource statement | 2. | 12.0 | ||
59 | KIP-321: Update TopologyDescription to better represent Source and Sink Nodes374: Add '--help' option to all available Kafka CLI commands | 2.12.0 | ||||
60 | KIP-320: Allow fetchers to detect and handle log truncation372: Naming Repartition Topics for Joins and Grouping | 2.1.0 (partially implemented) / | ||||
61 | KIP-371: Add a configuration to build custom SSL principal name | 2.2.0 | ||||
6162 | KIP- | 319: Replace segments with segmentInterval in WindowBytesStoreSupplier369: Alternative Partitioner to Support "Always Round-Robin" Selection | 2. | 14.0 | 62||
63 | KIP | -313: Add KStream.flatTransform and KStream.flatTransformValues368: Allow SASL Connections to Periodically Re-Authenticate | 2.2.0 | |||
64 | KIP-367 Introduce close(Duration) to Producer and AdminClient instead of close(long, TimeUnit) | 2.2 (partially implemented)/ 2.3.0 | ||||
65 | KIP- | 312 Add Overloaded StreamsBuilder Build Method to Accept java.util.Properties366: Make FunctionConversions deprecated | 2.1.0 | |||
66 | KIP- | 308: Support dynamic update of max.connections.per.ip/max.connections.per.ip.overrides365: Materialized, Serialized, Joined, Consumed and Produced with implicit Serde | 2.1.0 | |||
6567 | KIPKIP-307361: Allow to define custom processor names with KStreams DSLAdd Consumer Configuration to Disable Auto Topic Creation | 2.3.0 (partial) | ||||
68 | KIP-306: Configuration for Delaying Response to Failed Authentication360: Improve handling of unknown producer | 2.14.0 (WIP) | ||||
69 | KIP- | 305: Add Connect primitive number converters359: Verify leader epoch in produce requests | 2. | 04.0 (WIP) | ||
70 | KIP-303: Add Dynamic Routing in Streams Sink358: Migrate Streams API to Duration instead of long ms times | 2.01.0 | ||||
71 | KIP- | 302 - Enable Kafka clients to use all DNS resolved IP addresses357: Add support to list ACLs per principal | 2.1.0 | |||
7072 | KIP-298: Error Handling in Connect356: Add withCachingDisabled() to StoreBuilder | 2.01.0 | ||||
73 | KIP-297: Externalizing Secrets for Connect Configurations354: Add a Maximum Log Compaction Lag | 2.03.0 | ||||
7274 | KIP-295 Add Streams Configuration Allowing for Optional Topology Optimization353: Improve Kafka Streams Timestamp Synchronization | 2.01.0 | ||||
75 | KIP-294 - Enable TLS hostname verification by default352: Distinguish URPs caused by reassignment | 2.04.0 (WIP) | ||||
76 | KIP-292351: Add transformValues() method to KTable--under-min-isr option to describe topics command | 2.03.0 | ||||
77 | KIP-290: Support for Prefixed ACLs346: Improve LogCleaner behavior on error | 2.0.01 | 76||||
78 | KIP-289: Improve the default group id behavior in KafkaConsumer345: Introduce static membership protocol to reduce consumer rebalances | 2.2.0 | 77 | KIP-285: Connect Rest Extension Plugin | 2.04.0 (WIP), partially available in 2.3.0 | |
7879 | KIP-284: Set default retention ms for Streams repartition topics to Long.MAX_VALUE342 Add support for custom SASL extensions in OAuthBearer authentication | 2.01.0 | ||||
7980 | KIP-283: Efficient Memory Usage for Down-Conversion341: Update Sticky Assignor's User Data Protocol | 2.03.0 | 80||||
81 | KIP-282: Add the listener name to the authentication context | 2.0.0 | 81 | KIP-281: ConsumerPerformance: Increase Polling Loop Timeout and Make It Reachable by the End User | 340: Allow kafka-reassign-partitions.sh and kafka-log-dirs.sh to take admin client property file | 2.12.0.0 |
82 | KIP- | 279: Fix log divergence between leader and follower after fast leader fail over339: Create a new IncrementalAlterConfigs API | 2. | 03. | 00 | |
83 | KIP-278 - Add version option to Kafka's commands338 Support to exclude the internal topics in kafka-topics.sh command | 2.01.0 | ||||
84 | KIP-277 - Fine Grained ACL for CreateTopics API336: Consolidate ExtendedSerializer/Serializer and ExtendedDeserializer/Deserializer | 2.01.0 | ||||
85 | KIP-276 - Add StreamsConfig prefix for different consumers332: Update AclCommand to use AdminClient API | 2.01.0 | ||||
86 | KIP- | 274: Kafka Streams Skipped Records Metrics331 Add default implementation to close() and configure() for Serializer, Deserializer and Serde | 2. | 03.0 | ||
87 | KIP-272330: Add API version tag to broker's RequestsPerSec metricretentionPeriod in SessionBytesStoreSupplier | 2.01.0 | ||||
88 | KIP-270 - A Scala Wrapper Library for Kafka Streams328: Ability to suppress updates for KTables | 2.1.0 (partially implemented) / 2.3.0 (WIP)2.0.0 | ||||
89 | KIP- | 268: Simplify Kafka Streams Rebalance Metadata Upgrade324: Add method to get metrics() in AdminClient | 2. | 01.0 | ||
90 | KIP-267: Add Processor Unit Test Support to Kafka Streams Test Utils322: Return new error code for DeleteTopics API when topic deletion disabled. | 2.01.0 | ||||
91 | KIP-266: Fix consumer indefinite blocking behavior321: Update TopologyDescription to better represent Source and Sink Nodes | 2.01.0 | ||||
92 | KIP- | 265: Make Windowed Serde to public APIs320: Allow fetchers to detect and handle log truncation | 2.1.0 (partially implemented) / 2.2 | 2.0.0 | ||
93 | KIP- | 261: Add Single Value Fetch in Window Stores319: Replace segments with segmentInterval in WindowBytesStoreSupplier | 2. | 01.0 | ||
94 | KIP-258: Allow to Store Record Timestamps in RocksDB313: Add KStream.flatTransform and KStream.flatTransformValues | 2. 32.0 | 95 | KIP-257 - Configurable Quota Management | (partially implemented) / 2.3 | 2.0.0 |
95 | KIP-255: OAuth Authentication via SASL/OAUTHBEARER312 Add Overloaded StreamsBuilder Build Method to Accept java.util.Properties | 2.1.0 | ||||
96 | KIP-309: Add toUpperCase support to sasl.kerberos.principal.to.local rule | 2.42.0.0 | ||||
97 | KIP-251: Allow timestamp manipulation in Processor API308: Support dynamic update of max.connections.per.ip/max.connections.per.ip.overrides | 2.01.0 | ||||
98 | KIP- | 249: Add Delegation Token Operations to KafkaAdminClient307: Allow to define custom processor names with KStreams DSL | 2. | 03.0 (partial) | ||
99 | KIP- | 247: Add public test utils for Kafka Streams306: Configuration for Delaying Response to Failed Authentication | 2 | 1.1.0 | ||
100 | KIP-245: Use Properties instead of StreamsConfig in KafkaStreams constructor305: Add Connect primitive number converters | 2.0.0 | ||||
101 | KIP-244303: Add Record Header support to Kafka Streams Processor APIDynamic Routing in Streams Sink | 2.0.0 | ||||
102 | KIP | -243: Make ProducerConfig and ConsumerConfig constructors public-302 - Enable Kafka clients to use all DNS resolved IP addresses | 2 | 1.1.0 | ||
103 | KIP- | 239 Add queryableStoreName() to GlobalKTable300: Add Windowed KTable API in StreamsBuilder | 2.4 | 1.1.0 | ||
104 | KIP- | 238: Expose Kafka cluster ID298: Error Handling in Connect | REST API1 | 2. | 10.0 | |
105 | KIP- | 237: More Controller Health Metrics297: Externalizing Secrets for Connect Configurations | 2.0.0 | |||
106 | KIP-235: Add DNS alias support for secured connection295 Add Streams Configuration Allowing for Optional Topology Optimization | 2.10.0 | ||||
107 | KIP | -233: Simplify StreamsBuilder#addGlobalStore-294 - Enable TLS hostname verification by default | 2.0 | 1.1.0 | ||
108 | 231: Improve the Required ACL of ListGroups API2.1.0 | Accepted | ||||
109 | KIP- | 229: DeleteGroups API292: Add transformValues() method to KTable | 2.0 | 1.1.0 | ||
110 | KIP- | 227 - Introduce Incremental FetchRequests to Increase Partition Scalability290: Support for Prefixed ACLs | 2.0 | 1.1.0 | ||
111 | KIP- | 226 - Dynamic Broker Configuration289: Improve the default group id behavior in KafkaConsumer | 2.2 | 1.1.0 | ||
112 | KIP-225 - Use tags for consumer “records.lag” metrics285: Connect Rest Extension Plugin | 2.01.1.0 | ||||
113 | KIP- | 224: Add configuration parameter `retries` to Streams API284: Set default retention ms for Streams repartition topics to Long.MAX_VALUE | 2.0 | 1.1.0 | ||
114 | KIP- | 223 - Add per-topic min lead and per-partition lead metrics to KafkaConsumer283: Efficient Memory Usage for Down-Conversion | 2.0.0 | |||
115 | KIP- | 222 - Add Consumer Group operations to Admin API282: Add the listener name to the authentication context | 2.0.0 | |||
116 | KIP- | 220: Add AdminClient into Kafka Streams' ClientSupplier281: ConsumerPerformance: Increase Polling Loop Timeout and Make It Reachable by the End User | 2.0 | 1.1.0 | ||
117 | KIP-219 - Improve quota communication279: Fix log divergence between leader and follower after fast leader fail over | 2.0.0 | ||||
118 | KIP- | 218: Make KafkaFuture.Function java 8 lambda compatible278 - Add version option to Kafka's commands | 2.0 | 1.1.0 | ||
119 | KIP | -215: Add topic regex support for Connect sinks-277 - Fine Grained ACL for CreateTopics API | 2.0 | 1.1.0 | ||
120 | KIP-276 - 214: Add zookeeper.max.in.flight.requests config to Add StreamsConfig prefix for different consumers | 2.0 the broker1.1.0 | ||||
121 | KIP- | 213 Support non-key joining in KTable274: Kafka Streams Skipped Records Metrics | 2. | 30.0 | (WIP)||
122 | KIP- | 212: Enforce set of legal characters for connector names272: Add API version tag to broker's RequestsPerSec metric | 2.0 | 1.1.0 | ||
123 | KIP | -211: Revise Expiration Semantics of Consumer Group Offsets-270 - A Scala Wrapper Library for Kafka Streams | 2. | 10.0 | ||
124 | KIP-210 - Provide for custom error handling when Kafka Streams fails to produce268: Simplify Kafka Streams Rebalance Metadata Upgrade | 2.01.1.0 | ||||
125 | KIP-208267: Add SSL support Processor Unit Test Support to Kafka Connect REST interfaceStreams Test Utils | 2.01.1.0 | ||||
126 | KIP- | 207: Offsets returned by ListOffsetsResponse should be monotonically increasing even during a partition leader change266: Fix consumer indefinite blocking behavior | 2. | 20.0 | ||
127 | KIP- | 206: Add support for UUID serialization and deserialization265: Make Windowed Serde to public APIs | 2. | 10.0 | ||
128 | KIP-205: Add all() and range() API to ReadOnlyWindowStore261: Add Single Value Fetch in Window Stores | 2.01.1.0 | ||||
129 | KIP- | 204 : Adding records deletion operation to the new Admin Client API258: Allow to Store Record Timestamps in RocksDB | 2.3.0 (partially implemented) | 1.1.0|||
130 | KIP-257 - Configurable Quota Management | 2.0-203: Add toLowerCase support to sasl.kerberos.principal.to.local rule 1.1.0 | ||||
131 | KIP- | 202: Move merge() from StreamsBuilder to KStream255: OAuth Authentication via SASL/OAUTHBEARER | 2 | 1.0.0 | ||
132 | KIP-198: Remove ZK dependency from Streams Reset Tool251: Allow timestamp manipulation in Processor API | 21.0.0 | ||||
133 | KIP-197 Connect REST API should include the connector type when describing a connector249: Add Delegation Token Operations to KafkaAdminClient | 21.0.0 | ||||
134 | KIP-196247: Add metrics to Kafka Connect frameworkpublic test utils for Kafka Streams | 1.01.0 | ||||
135 | KIP-195: AdminClient.createPartitions245: Use Properties instead of StreamsConfig in KafkaStreams constructor | 2.1.0.0 | ||||
136 | KIP- | 192 : Provide cleaner semantics when idempotence is enabled244: Add Record Header support to Kafka Streams Processor API | 2 | 1.0.0 | ||
137 | KIP-191: KafkaConsumer.subscribe() overload that takes just Pattern243: Make ProducerConfig and ConsumerConfig constructors public | 1.01.0 | ||||
138 | KIP-190: Handle client-ids consistently between clients and brokers239 Add queryableStoreName() to GlobalKTable | 1.01.0 | ||||
139 | KIP-189: Improve principal builder interface and add support for SASL238: Expose Kafka cluster ID in Connect REST API | 1.01.0 | ||||
140 | KIP-188 - Add new metrics to support health checks237: More Controller Health Metrics | 21.0.0 | ||||
141 | KIP- | 187 - Add cumulative count metric for all Kafka rate metrics235: Add DNS alias support for secured connection | 2.1 | 1.0.0 | ||
142 | KIP-186: Increase offsets retention default to 7 days233: Simplify StreamsBuilder#addGlobalStore | 1.12.0.0 | ||||
143 | KIP- | 183 - Change PreferredReplicaLeaderElectionCommand to use AdminClient231: Improve the Required ACL of ListGroups API | 2. | 21.0 | ||
144 | KIP-182: Reduce Streams DSL overloads and allow easier use of custom storage engines229: DeleteGroups API | 1.01.0 | ||||
145 | KIP-180: Add a broker metric specifying the number of consumer group rebalances in progress-227 - Introduce Incremental FetchRequests to Increase Partition Scalability | 1.1.0 | ||||
146 | KIP-177: Consumer perf tool should count rebalance time-226 - Dynamic Broker Configuration | 1.01.0 | ||||
147 | KIP- | 176: Remove deprecated new-consumer option for tools225 - Use tags for consumer “records.lag” metrics | 1.1 | 2.0.0 | ||
148 | KIP-175: Additional '--describe' views for ConsumerGroupCommand224: Add configuration parameter `retries` to Streams API | 1.1.0 | ||||
149 | KIP-223 - 174 - Deprecate and remove internal converter configs in WorkerConfigAdd per-topic min lead and per-partition lead metrics to KafkaConsumer | 2.0.0 | ||||
150 | KIP-173: Add prefix to StreamsConfig to enable setting default internal topic configs222 - Add Consumer Group operations to Admin API | 21.0.0 | ||||
151 | KIP-171 - Extend Consumer Group Reset Offset for Stream Application221: Enhance DSL with Connecting Topic Creation and Repartition Hint | 2.4.0 (WIP)1.1.0 | ||||
152 | KIP-168220: Add GlobalTopicCount and GlobalPartitionCount metric per clusterAdminClient into Kafka Streams' ClientSupplier | 1.01.0 | ||||
153 | KIP-167: Add interface for the state store restoration process219 - Improve quota communication | 21.0.0 | ||||
154 | KIP-164 - Add UnderMinIsrPartitionCount and per-partition UnderMinIsr metrics218: Make KafkaFuture.Function java 8 lambda compatible | 1.01.0 | ||||
155 | KIP- | 163: Lower the Minimum Required ACL Permission of OffsetFetch215: Add topic regex support for Connect sinks | 1. | 01.0 | ||
156 | KIP-162: Enable topic deletion by default214: Add zookeeper.max.in.flight.requests config to the broker | 1.01.0 | ||||
157 | KIP- | 161: streams deserialization exception handlers213 Support non-key joining in KTable | 2.4.0 (WIP) | 1.0.0|||
158 | KIP-160: Augment KStream.print(), KStream.writeAsText() to allow users pass in extra parameters in the printed string | 1.0.0 | ||||
159 | KIP-157 - Add consumer config options to streams reset tool | 1.0.0 | ||||
160 | KIP-156 Add option "dry run" to Streams application reset tool | 0.11.0.0 | ||||
161 | KIP-155 - Add range scan for windowed state stores | 0.11.0.0 | ||||
162 | KIP-154 Add Kafka Connect configuration properties for creating internal topics | 0.11.0.0 | ||||
163 | KIP-153: Include only client traffic in BytesOutPerSec metric | 0.11.0.0 | ||||
164 | KIP-152 - Improve diagnostics for SASL authentication failures | 1.0.0 | ||||
165 | KIP-151 Expose Connector type in REST API | 0.11.0.0 | ||||
166 | KIP-150 - Kafka-Streams Cogroup | 2.3.0 (WIP) | ||||
167 | KIP-149: Enabling key access in ValueTransformer, ValueMapper, and ValueJoiner | 1.1.0 (partially implemented) (WIP for 2.3.0) | ||||
212: Enforce set of legal characters for connector names | 1.1.0 | |||||
159 | KIP-211: Revise Expiration Semantics of Consumer Group Offsets | 2.1.0 | ||||
160 | KIP-210 - Provide for custom error handling when Kafka Streams fails to produce | 1.1.0 | ||||
161 | KIP-208: Add SSL support to Kafka Connect REST interface | 1.1.0 | ||||
162 | KIP-207: Offsets returned by ListOffsetsResponse should be monotonically increasing even during a partition leader change | 2.2.0 | ||||
163 | KIP-206: Add support for UUID serialization and deserialization | 2.1.0 | ||||
164 | KIP-205: Add all() and range() API to ReadOnlyWindowStore | 1.1.0 | ||||
165 | KIP-204 : Adding records deletion operation to the new Admin Client API | 1.1.0 | ||||
166 | KIP-203: Add toLowerCase support to sasl.kerberos.principal.to.local rule | 1.1.0 | ||||
167 | KIP-202: Move merge() from StreamsBuilder to KStream | 1.0.0 | ||||
168 | KIP-198: Remove ZK dependency from Streams Reset Tool | 1 | 168 | KIP-146 - Classloading Isolation in Connect | 0.11.0.0 | |
169 | KIP-145 - Expose Record Headers in Kafka Connect197 Connect REST API should include the connector type when describing a connector | 1.10.0 | ||||
170 | KIP-144: Exponential backoff for broker reconnect attempts196: Add metrics to Kafka Connect framework | 1.0.11.0.0 | ||||
171 | KIP-143: Controller Health Metrics195: AdminClient.createPartitions | 1.0.11.0.0 | ||||
172 | KIP-140: Add administrative RPCs for adding, deleting, and listing ACLs192 : Provide cleaner semantics when idempotence is enabled | 10.11.0.0 | ||||
173 | KIP-138: Change punctuate semantics191: KafkaConsumer.subscribe() overload that takes just Pattern | 1.0.0 | ||||
174 | KIP-137190: Enhance TopicCommand --describe to show topics marked for deletionHandle client-ids consistently between clients and brokers | 10.11.0.0 | ||||
175 | KIP-136: Add Listener name to SelectorMetrics tags189: Improve principal builder interface and add support for SASL | 10.11.0.0 | ||||
176 | KIP-134: Delay initial consumer group rebalance-188 - Add new metrics to support health checks | 1.0.11.0.0 | ||||
177 | KIP-133: Describe and Alter Configs Admin APIs187 - Add cumulative count metric for all Kafka rate metrics | 1.0.11.0.0 | ||||
178 | KIP- | 130: Expose states of active tasks to KafkaStreams public API186: Increase offsets retention default to 7 days | 2 | 1.0.0 | ||
179 | KIP-129: Streams Exactly-Once Semantics183 - Change PreferredReplicaLeaderElectionCommand to use AdminClient | 2.2.00.11.0.0 | ||||
180 | KIP-128: Add ByteArrayConverter for Kafka Connect182: Reduce Streams DSL overloads and allow easier use of custom storage engines | 1.0.11.0.0 | ||||
181 | KIP-126 - Allow KafkaProducer to split and resend oversized batches.180: Add a broker metric specifying the number of consumer group rebalances in progress | 1.1.00.11.0.0 | ||||
182 | KIP-124 - Request rate quotas177: Consumer perf tool should count rebalance time | 1.0.0.11.0.0 | ||||
183 | KIP- | 123: Allow per stream/table timestamp extractor176: Remove deprecated new-consumer option for tools | 2 | 0.11.0.0 | ||
184 | KIP-122: Add Reset Consumer Group Offsets tooling175: Additional '--describe' views for ConsumerGroupCommand | 1.10.11.0.0 | ||||
185 | KIP-121: Add KStream peek method174 - Deprecate and remove internal converter configs in WorkerConfig | 2.0.11.0.0 | ||||
186 | KIP-120: Cleanup Kafka Streams builder API173: Add prefix to StreamsConfig to enable setting default internal topic configs | 1.0.0 | ||||
187 | KIP-171 - Extend Consumer Group Reset Offset for Stream Application | 1.1.0-119: Drop Support for Scala 2.10 in Kafka 0.110.11.0.0 | ||||
188 | KIP-118: Drop Support for Java 7168: Add GlobalTopicCount and GlobalPartitionCount metric per cluster | 12.0.0 | ||||
189 | KIP-117167: Add a public AdminClient API for Kafka admin operationsinterface for the state store restoration process | 10.11.0.0 | ||||
190 | KIP-164 - Add UnderMinIsrPartitionCount and per-partition UnderMinIsr metrics | 1-115: Enforce offsets.topic.replication.factor upon __consumer_offsets auto topic creation0.11.0.0 | ||||
191 | 114: KTable state stores and improved semantics | 1. | 0.11.0.0 | |||
192 | KIP-113: Support replicas movement between log directories162: Enable topic deletion by default | 1.10.0 | ||||
193 | KIP-112: Handle disk failure for JBOD161: streams deserialization exception handlers | 1.0.0 | ||||
194 | KIP- | 110: Add Codec for ZStandard Compression160: Augment KStream.print(), KStream.writeAsText() to allow users pass in extra parameters in the printed string | 1.0 | 2.1.0 | ||
195 | KIP | -109: Old Consumer Deprecation-157 - Add consumer config options to streams reset tool | 1. | 0.11.0.0 | ||
196 | KIP- | 108: Create Topic Policy156 Add option "dry run" to Streams application reset tool | 0. | 1011. | 20.0 | |
197 | KIP- | 107: Add deleteRecordsBefore() API in AdminClient155 - Add range scan for windowed state stores | 0.11.0.0 | |||
198 | KIP-106 - Change Default unclean.leader.election.enabled from True to False154 Add Kafka Connect configuration properties for creating internal topics | 0.11.0.0 | ||||
199 | KIP-105: Addition of Record Level for Sensors153: Include only client traffic in BytesOutPerSec metric | 0.1011.20.0 | ||||
200 | KIP-104: Granular Sensors for Streams 152 - Improve diagnostics for SASL authentication failures | 1.00.10.2.0 | ||||
201 | KIP-103: Separation of Internal and External traffic151 Expose Connector type in REST API | 0.1011.20.0 | ||||
202 | KIP-150 - 102 - Add close with timeout for consumersKafka-Streams Cogroup | 2.4.0 (WIP)0.10.2.0 | ||||
203 | KIP-101 - Alter Replication Protocol to use Leader Epoch rather than High Watermark for Truncation | 0.11.0.0 | 149: Enabling key access in ValueTransformer, ValueMapper, and ValueJoiner | 1.1.0 (partially implemented) (WIP for 2.4.0) | ||
204 | KIP-146 - Classloading Isolation in Connect | 0.11.0 | 204 | KIP-100 - Relax Type constraints in Kafka Streams API | 0.10.2 .0 | |
205 | KIP-99: Add Global Tables to Kafka Streams-145 - Expose Record Headers in Kafka Connect | 1.1.0.10.2.0 | ||||
206 | KIP-98 - Exactly Once Delivery and Transactional Messaging144: Exponential backoff for broker reconnect attempts | 0.11.0.0 | ||||
207 | KIP-97: Improved Kafka Client RPC Compatibility Policy143: Controller Health Metrics | 0.1011.20.0 | ||||
208 | KIP-96 - Add per partition metrics for in-sync and assigned replica count140: Add administrative RPCs for adding, deleting, and listing ACLs | 0.1011.20.0 | ||||
209 | KIP-94 Session Windows138: Change punctuate semantics | 1.00.10.2.0 | ||||
210 | KIP-93: Improve invalid timestamp handling in Kafka Streams137: Enhance TopicCommand --describe to show topics marked for deletion | 0.1011.20.0 | ||||
211 | KIP-92 - Add per partition lag metrics to KafkaConsumer136: Add Listener name to SelectorMetrics tags | 0.1011.20.0 | ||||
212 | KIP-91 Provide Intuitive User Timeouts in The Producer134: Delay initial consumer group rebalance | 0.11.02.1.0 | ||||
213 | KIP-90 - Remove zkClient dependency from Streams133: Describe and Alter Configs Admin APIs | 0.1011.20.0 | ||||
214 | KIP- | 89: Allow sink connectors to decouple flush and offset commit130: Expose states of active tasks to KafkaStreams public API | 1.0. | 0.10.2.0 | ||
215 | KIP-88: OffsetFetch Protocol Update129: Streams Exactly-Once Semantics | 0.1011.20.0 | ||||
216 | KIP-86: Configurable SASL callback handlers128: Add ByteArrayConverter for Kafka Connect | 0.112.0.0 | ||||
217 | KIP-85: Dynamic JAAS configuration for Kafka clients126 - Allow KafkaProducer to split and resend oversized batches. | 0.1011.20.0 | ||||
218 | KIP-84: Support SASL SCRAM mechanisms-124 - Request rate quotas | 0.1011.20.0 | ||||
219 | KIP-82 - Add Record Headers123: Allow per stream/table timestamp extractor | 0.11.0.0 | ||||
220 | KIP-81: Bound Fetch memory usage in the consumer122: Add Reset Consumer Group Offsets tooling | 0.11.0.02.2.0 (WIP) | ||||
221 | KIP-79 - ListOffsetRequest/ListOffsetResponse v1 and add timestamp search methods to the new consumer121: Add KStream peek method | 0. 1011. 10.0 | ||||
222 | KIP-78: Cluster Id120: Cleanup Kafka Streams builder API | 1.0.0.10.1.0 | ||||
223 | KIP-77: Improve Kafka Streams Join Semantics119: Drop Support for Scala 2.10 in Kafka 0.11 | 0.1011.20.0 | ||||
224 | KIP-75 - Add per-connector Converters118: Drop Support for Java 7 | 2.0.0.10.1.0 | ||||
225 | KIP-74117: Add Fetch Response Size Limit in Bytesa public AdminClient API for Kafka admin operations | 0.1011.10.0 | ||||
226 | KIP-73: Replication Quotas115: Enforce offsets.topic.replication.factor upon __consumer_offsets auto topic creation | 0.1011.10.0 | ||||
227 | KIP-72: Allow putting a bound on memory consumed by Incoming request 114: KTable state stores and improved semantics | 0.111.0.0 | ||||
228 | KIP-71: Enable log compaction and deletion to co-exist113: Support replicas movement between log directories | 10.10.1.0 | ||||
229 | KIP-70: Revise Partition Assignment Semantics on New Consumer's Subscription Change112: Handle disk failure for JBOD | 1.00.10.1.0 | ||||
230 | KIP- | 67110: | Queryable state for Kafka StreamsAdd Codec for ZStandard Compression | 2. | 0.10.1.0 | |
231 | KIP-66: Single Message Transforms for Kafka Connect109: Old Consumer Deprecation | 00.10.2.0 / 0.11.0.0 | ||||
232 | KIP-65: Expose timestamps to Connect108: Create Topic Policy | 0.10.12.0 | ||||
233 | KIP-63: Unify store and downstream caching in streams107: Add deleteRecordsBefore() API in AdminClient | 0.1011.10.0 | ||||
234 | 62: Allow consumer to send heartbeats from a background thread 106 - Change Default unclean.leader.election.enabled from True to False | 0.1011.10.0 | ||||
235 | KIP-60 - Make Java client classloading more flexible105: Addition of Record Level for Sensors | 0.10.12.0 | ||||
236 | KIP-58 - Make Log Compaction Point Configurable104: Granular Sensors for Streams | 0.10.12.0 | ||||
237 | KIP-57 - Interoperable LZ4 Framing103: Separation of Internal and External traffic | 0.10.02.0 | ||||
238 | KIP-56: Allow cross origin HTTP requests on all HTTP methods102 - Add close with timeout for consumers | 0.10.02.0 | ||||
239 | KIP-55: Secure Quotas for Authenticated Users-101 - Alter Replication Protocol to use Leader Epoch rather than High Watermark for Truncation | 0.1011.10.0 | ||||
240 | KIP-54: Sticky Partition Assignment Strategy-100 - Relax Type constraints in Kafka Streams API | 0.1110.02.0 | ||||
241 | KIP-52: Connector Control APIs99: Add Global Tables to Kafka Streams | 0.10.02.0 | ||||
242 | KIP-51 - List Connectors REST API98 - Exactly Once Delivery and Transactional Messaging | 0.1011.0.0 | ||||
243 | KIP-50 - Move Authorizer to o.a.k.common package97: Improved Kafka Client RPC Compatibility Policy | 0.10.12.0 | ||||
244 | KIP-48 Delegation token support for Kafka-96 - Add per partition metrics for in-sync and assigned replica count | 0.10.21.1.0 | ||||
245 | KIP-45 - Standardize all client sequence interaction on j.u.Collection.94 Session Windows | 0.10.02.0 | ||||
246 | KIP-4393: Kafka SASL enhancementsImprove invalid timestamp handling in Kafka Streams | 0.10.02.0 | ||||
247 | KIP-42: Add Producer and Consumer Interceptors92 - Add per partition lag metrics to KafkaConsumer | 0.10.02.0 | ||||
248 | KIP-41: Consumer Max Records91 Provide Intuitive User Timeouts in The Producer | 2.10.10.0.0 | ||||
249 | KIP-40: ListGroups and DescribeGroup90 - Remove zkClient dependency from Streams | 0.910.02.0 | ||||
250 | KIP-38: ZooKeeper Authentication89: Allow sink connectors to decouple flush and offset commit | 0.910.02.0 | ||||
251 | KIP-36 - Rack aware replica assignment88: OffsetFetch Protocol Update | 0.10.02.0 | ||||
252 | KIP-35 - Retrieving protocol version86: Configurable SASL callback handlers | 20.10.0.0 | ||||
253 | KIP-33 - Add a time based log index85: Dynamic JAAS configuration for Kafka clients | 0.10.12.0 | ||||
254 | KIP-32 - Add timestamps to Kafka message84: Support SASL SCRAM mechanisms | 0.10.02.0 | ||||
255 | KIP-31 - Move to relative offsets in compressed message sets82 - Add Record Headers | 0.1011.0.0 | ||||
256 | KIP-28 - Add a processor client81: Bound Fetch memory usage in the consumer | 2.4.0 (WIP)0.10.0.0 | ||||
257 | KIP-26 - Add Kafka Connect framework for data import/export79 - ListOffsetRequest/ListOffsetResponse v1 and add timestamp search methods to the new consumer | 0.910.01.0 | ||||
258 | KIP-25 - System test improvements78: Cluster Id | 0.910.01.0 | ||||
259 | KIP-22 - Expose a Partitioner interface in the new producer77: Improve Kafka Streams Join Semantics | 0.910.02.0 | ||||
260 | KIP-75 - 21 - Dynamic ConfigurationAdd per-connector Converters | 0.910.01.0 (WIP) | ||||
261 | KIP-20 Enable log preallocate to improve consume performance under windows and some old Linux file system74: Add Fetch Response Size Limit in Bytes | 0.910.01.0 | ||||
262 | KIP-19 - Add a request timeout to NetworkClient73: Replication Quotas | 0.910.01.0 | ||||
263 | KIP-16 - Automated Replica Lag Tuning72: Allow putting a bound on memory consumed by Incoming request | 10.9.0.0 | ||||
264 | KIP-15 - Add a close method with a timeout in the producer71: Enable log compaction and deletion to co-exist | 0.910.01.0 | ||||
265 | KIP-13 - Quota Design70: Revise Partition Assignment Semantics on New Consumer's Subscription Change | 0.910.01.0 | ||||
266 | KIP-12 - Kafka Sasl/Kerberos and SSL implementation67: Queryable state for Kafka Streams | 0.910.01.0 | ||||
267 | KIP-11 - Kafka Authorizer design66: Single Message Transforms for Kafka Connect | 0.10.2.0 / 0.110.9.0.0 | ||||
268 | KIP-8 - Add a flush method to the producer API65: Expose timestamps to Connect | 0.910.01.0 | ||||
269 | KIP-4 - Metadata Protocol Changes63: Unify store and downstream caching in streams | 0.10.01.0 | ||||
270 | KIP-4 - Command line and centralized administrative operations62: Allow consumer to send heartbeats from a background thread | 0.910.01.0, | ||||
271 | KIP-60 - Make Java client classloading more flexible | 0.10.01.0, | ||||
272 | KIP-58 - Make Log Compaction Point Configurable | 0.10.1.0 | ||||
271273 | KIP-3 - Mirror Maker Enhancement57 - Interoperable LZ4 Framing | 0.910.0.0 | ||||
272274 | KIP-2 - Refactor brokers to allow listening on multiple ports and IPs56: Allow cross origin HTTP requests on all HTTP methods | 0.910.0.0 | ||||
273275 | KIP-55: Secure Quotas for Authenticated Users | 0.10.1 - Remove support of request.required.acks.0 | ||||
276 | KIP-54: Sticky Partition Assignment Strategy | 0.911.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
...