Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

KIPComment
KIP-59: Proposal for a kafka broker commandSent emails to Dev discussion group. Work tracked under KAFKA-3663.
KIP-125: ZookeeperConsumerConnector to KafkaConsumer Migration and Rollback
KIP-135 : Send of null key to a compacted topic should throw non-retriable error back to user
KIP 141 - ProducerRecord & SourceRecord: Add timestamp constructors
KIP-142: Add ListTopicsRequest to efficiently list all the topics in a cluster
KIP-148: Add a connect timeout for client
KIP-166 - Add a tool to make amounts of replicas and leaders on brokers balanced
KIP-169 - Lag-Aware Partition Assignment Strategy
KIP-178: Size-based log directory selection strategy


KIP-185: Make exactly once in order delivery the default producer setting


KIP-193: Add SchemaBuilder.from(Schema)
KIP-199: Add Kafka Connect offset tool
KIP-201: Rationalising Policy interfaces
KIP-209: Connection String Support
KIP-217: Expose a timeout to allow an expired ZK session to be re-created
KIP-228 Negative record timestamp supportVoting in progress
KIP-234: add support for getting topic defaults from AdminClient
KIP-236: Interruptible Partition Reassignment Discussion
KIP-240: AdminClient.listReassignments() AdminClient.describeReassignments()
KIP-242: Mask password in Kafka Connect Rest API response
KIP-250 Add Support for Quorum-based Producer Acknowledgment
KIP-252 - Extend ACLs to allow filtering based on ip ranges and subnets
KIP-253: Support in-order message delivery with partition expansion Discussion
KIP-254: JsonConverter Exception Handeling
KIP-264: Add a consumer metric to record raw fetch sizeVoting in progress
KIP-271: Add NetworkClient redirectorDiscussion
KIP-273: Kafka to support using ETCD beside ZookeeperDiscussion
KIP-293 Add new metrics for consumer/replication fetch requestsVoting in progress
KIP-296: Add connector level configurability for producer/consumer client configs Discussion
KIP-301: Schema Inferencing for JsonConverterDiscussion
KIP-304: Connect runtime mode improvements for container platformsDiscussion
KIP-315: Stream Join Sticky AssignorDiscussion
KIP-316: Command-line overrides for ConnectDistributed worker propertiesDiscussion
KIP-317: Add end-to-end data encryption functionality to Apache KafkaDiscussion
KIP-325: Extend Consumer Group Command to Show Beginning OffsetsVoting in Progress345
KIP-333: Add faster mode of rebalancingDiscussion
KIP-334 - Include partitions in exceptions raised during consumer record deserialization/validation
KIP-347: Enable batching in FindCoordinatorRequestDiscussion
KIP-348 Eliminate null from SourceTask#poll()
KIP-350: Allow kafka-topics.sh to take brokerid as parameter to show partitions associated with it
KIP-356: Add KafkaConsumer fetch-error-rate and fetch-error-total metricsDiscussion
KIP-363: Allow performance tools to print final results to output fileDiscussion
KIP-370: Remove Orphan PartitionsDiscussion
KIP-375: Kafka Clients - make Metadata#TOPIC_EXPIRY_MS configurableDiscussion
KIP-381: Connect: Tell about records that had their offsets flushed in callback

Voting in progress (restarted 18th January 2019, due to no votes in first attempt)

KIP-384: Add config for incompatible changes to persistent metadataDiscussion
KIP-385: Avoid throwing away prefetched dataDiscussion
KIP-387: Fair Message Consumption Across Partitions in KafkaConsumer

Discussion

KIP-388: Add observer interface to record request and responseDiscussion
KIP-390: Allow fine-grained configuration for compressionDiscussion, JIRA exists with pull-request
KIP-395: Encypt-then-MAC Delegation token metadata
KIP-397: Add methods to override fetch offsets based on timestampDiscussion
KIP-400: Improve exit status in case of errors in ConsoleProducerDiscussion
KIP-403: Increase ProducerPerformance precision by using nanoTimeDraft
KIP-405: Kafka Tiered Storage

Discussion

KIP-406: GlobalStreamThread should honor custom offset policy.Blocked
KIP-407: Kafka Connect support override worker kafka api configuration with connector configuration that post by rest api

KIP-409: Allow creating under-replicated topics and partitions


KIP-410: Add metric for request handler thread pool utilization by request type

Discussion
KIP-416: Notify SourceTask of ACK'd offsets, metadataDiscussion
KIP-419: Safely notify Kafka Connect SourceTask is stoppedVoting in progress, JIRA exists with pull request
KIP-423: Add JoinReason to Consumer Join Group Protocol

Discussion

KIP-424: Allow suppression of intermediate events based on wall clock timeDiscussion
KIP-426: Persist Broker Id to ZookeeperDiscussion
KIP-435: Internal Partition Reassignment BatchingDiscussion
KIP-438: Expose task, connector IDs in Connect APIDiscussion
KIP-439: Cleanup built-in Store interfacesDiscussion
KIP-448: Add State Stores Unit Test Support to Kafka Streams Test UtilsDiscussion
KIP-452: Tool to view cluster statusDiscussion, JIRA exists
KIP-468: Avoid decompression of record when validate record at server in the scene of inPlaceAssignment .Under discussion
KIP-473: Enable KafkaLog4JAppender to use SASL Authentication Callback HandlersUnder Discussion 
KIP-477: Add PATCH method for connector config in Connect REST APIUnder Discussion
KIP-487: Automatic Topic Creation on ProducerUnder Discussion
KIP-489: Kafka Consumer Record Latency MetricUnder Discussion
KIP-490: New metric to count offsets expired without being consumed by a consumer groupUnder discussion
KIP-491: Preferred Leader Deprioritized List (Temporary Blacklist)Under discussion
KIP-494: Connect REST Endpoint to get Transformations (SMTs)
KIP-498: Add client-side configuration for maximum response size to protect against OOMSent emails to Dev discussion group. Work tracked under KAFKA-4090.

KIP-499 - Unify connection name flag for command line tool

Under discussion
KIP-502: Connect SinkTask.put(...) to specify ArrayList<SinkRecord> in Signature
KIP-505: Add new public method to only update assignment metadata in consumerUnder discussion
KIP-506: Allow setting SCRAM password via Admin interfaceUnder discussion
KIP-508: Make Suppression State QueriableUnder discussion
KIP-509: Rebalance and restart ProducersUnder discussion
KIP-510: Metrics library upgradeUnder discussion
KIP-512: Adding headers to RecordMetaDataSent mail to dev discussion group
KIP-513: Distinguish between Key and Value serdes in scala wrapper library for kafka streamsSent mail to dev discussion group
KIP-536: Propagate broker start time to Admin APIUnder discussion
KIP-539: Add mechanism to flush records out in low volume suppression buffersUnder discussion.
KIP-540: Implement per key stream time trackingDraft (In Progress)
KIP-542: Partition Reassignment ThrottlingDraft
KIP-547: Extend ConsumerInterceptor to allow modification of Consumer CommitsUnder Discussion
KIP-548 Add Option to enforce rack-aware custom partition reassignment executionUnder Discussion
KIP-549: Surface Consumer's Metadata in KafkaAdminClient#describeConsumerGroupsUnder Discussion
KIP-550: Mechanism to Delete Stray Partitions on BrokerDraft
KIP-552: Suppress "unused config" warning

Under Discussion

KIP-560: Auto infer external topic partitions in stream reset tool

Under Discussion

KIP-561: Regex Support for ConsumerGroupCommand

Under Discussion
KIP-563: Add 'tail -n' feature for ConsoleConsumerUnder Discussion
KIP-564: Add new cached authorizer:change the dim of cacheUnder Discussion
KIP-565: Using AclCommand,avoid call the global method loadcache in SimpleAclAuthorizerUnder Discussion
KIP-566: Add rebalance callbacks to ConsumerInterceptorUnder Discussion
KIP-567: Kafka Cluster Audit

Under Discussion

KIP-575: build a Kafka-Exporter by JavaUnder Discussion
KIP-576: Support dynamic update of more broker configs related to replicationUnder Discussion
KIP-578: Add configuration to limit number of partitionsVoting
KIP-579: new exception on min.insync.replicas > replication.factorVoting in progress
KIP-581: Value of optional null field which has default valueUnder Discussion
KIP-582: Add a "continue" option for Kafka Connect error handlingUnder Discussion
KIP-583: add tag "partition" to BrokerTopicMetrics so as to observe the partition metrics on the same brokerUnder Discussion
KIP-587: Suppress detailed responses for handled exceptions in security-sensitive environmentsUnder Discussion
KIP-591: Add Kafka Streams config to set default store typeUnder Discussion
KIP-592: Replicate mirrormaker topics from earliestUnder Discussion
KIP-595: A Raft Protocol for the Metadata QuorumUnder Discussion
KIP-596: Safely abort Producer transactions during application shutdownUnder Discussion
KIP-598: Augment TopologyDescription with store and source / sink serde informationUnder Discussion
KIP-618: Exactly-Once Support for Source ConnectorsUnder Discussion
KIP-619: Add internal topic creation supportUnder Discussion
KIP-625: Richer encodings for integral-typed protocol fieldsUnder Discussion

KIP-628: ConsumerPerformance's multi-thread implementation

Sent email to Dev discussion group. Work tracked under KAFKA-10136.
KIP-634: Complementary support for headers in Kafka Streams DSLUnder Discussion
KIP-636: Make RPC error codes and messages tagged fieldsUnder Discussion
KIP-637: Include min.insync.replicas in MetadataResponse to make Producer smarter in partitioning eventsDraft
KIP-631: The Quorum-based Kafka ControllerUnder Discussion
KIP-639: Move nodeLevelSensor and storeLevelSensor methods from StreamsMetricsImpl to StreamsMetricsUnder Discussion
KIP-640: Add log compression analysis toolUnder Discussion
KIP-641 An new java interface to replace 'kafka.common.MessageReader'Under Discussion
KIP-649: Dynamic client configurationUnder Discussion
KIP-655: Windowed Distinct Operation for Kafka Streams APIUnder Discussion
KIP-656: MirrorMaker2 Exactly-once SemanticsDraft
KIP-665: Kafka Connect Hash SMT

Voting in progress

KIP-666: Add Instant-based methods to ReadOnlySessionStoreVoting in progress
KIP-667: Remove deprecated methods from ReadOnlyWindowStoreVoting in progress
KIP-668: Expose REST endpoint to list converter pluginsUnder Discussion
KIP-669 Preserve Source Partition in Kafka Streams from contextDraft

KIP-674: API to Aggregate Metrics in Kafka Streams

Under Discussion

KIP-675: Convert a KTable to a KStream using the previous valueUnder Discussion
KIP-678: New Kafka Connect SMT for plainText => struct with RegexUnder Discussion ( Sent mail )
KIP-681: Rename master key in delegation token featureDraft
KIP-682: Connect TimestampConverter support for multiple fields and multiple input formatsUnder Discussion
KIP-683: Add recursive support to Connect Cast and ReplaceField transforms, and support for casting complex types to either a native or JSON stringUnder Discussion
KIP-685: Loosen permission for listing reassignmentsUnder Discussion
KIP-686: API to ensure Records policy on the brokerUnder Discussion
KIP-687: Automatic Reloading of Security StoreUnder Discussion
KIP-688: Support dynamic update of delete.topic.enable config

Under Discussion

KIP-690: Add additional configuration to control MirrorMaker 2 internal topics naming conventionVoting in progress
KIP-691: Enhance Transactional Producer Exception HandlingUnder Discussion
KIP-692: Make AdminClient value object constructors publicUnder discussion

KIP-693: Client-side Circuit Breaker for Partition Write Errors

Under Discussion

KIP-694: Support Reducing Partitions for Topics

Under Discussion
KIP-697: Stricter parsing of addresses in configsUnder Discussion

KIP-698: Add Explicit User Initialization of Broker-side State to Kafka Streams

Under Discussion
KIP-701: Add --override option to bin/connect-distributed.shUnder Discussion
KIP-702: The control plane needs to force the validation of requests from the controllerUnder Discussion
KIP-703: Add a metric for reporting idle connections closed

Under Discussion

KIP-704: Indicate to broker if it is an unclean leader

Draft
KIP-705: Selectively Disable Topology OptimizationsDraft
KIP-706: add new method "Producer#produce" which can return CompletionStage instead of FutureUnder Discussion
KIP-707: The future of KafkaFutureUnder Discussion
KIP-708: Rack aware Kafka Streams with pluggable StandbyTask assignorDraft
KIP-709: Extend OffsetFetch requests to accept multiple group ids.Under Discussion


Dormant/inactive KIPs

Please insert new rows in sorted order (ascending by KIP number).

...

KIPComment
KIP-5 - Broker Configuration ManagementSuperseded by KIP-21
KIP-7 - Security - IP Filtering
KIP-9 - SSL SupportAdopted via KAFKA-1690 but not via this KIP process
KIP-18 - JBOD SupportSuperseded by KIP-112 and KIP-113 
KIP-24 - Remove ISR information from TopicMetadataRequest and add broker level metadata request
KIP-29 - Add an IsrPropagateIntervalMs configuration to KafkaConfigNo longer need after KAFKA-2722

KIP-34 Add Partitioner Change Listener to Partitioner Interface for Multiple Use Case

Per feedback it is better do this parition() method and avoid Thread Coordination etc.
KIP-50 - Move Authorizer to o.a.k.common packageSuperseded by KIP-504
KIP-80: Kafka Rest Server
KIP-83 - Allow multiple SASL authenticated Java clients in a single JVM processAfter KIP-85, no interface changes, reduced to KAFKA-4180
KIP-111: Kafka should preserve the Principal generated by the PrincipalBuilder while processing the request received on socket channel, on the broker.Covered by KIP-189
KIP-116: Add State Store Checkpoint Interval ConfigurationCurrently not needed as checkpointing can be done on commit interval.
KIP-127: Pluggable JAAS LoginModule configuration for SSLSimilar functionality can be implemented using a custom PrincipalBuilder.
KIP-132: Augment KStream.print to allow extra parameters in the printed string

Duplicated by KIP-160

KIP-147: Add missing type parameters to StateStoreSupplier factories and KGroupedStream/Table methodsCovered by KIP-182
KIP-165: Extend Interactive Queries for return latest update timestamp per keyCovered by KIP-258
KIP-170: Enhanced TopicCreatePolicy and introduction of TopicDeletePolicySuperseded by KIP-201: Rationalising Policy interfaces
KIP 172: Add regular-expression topic support for sink connectorSuperseded by KIP-215: Add topic regex support for Connect sinks
KIP-179: Change ReassignPartitionsCommand to use AdminClient
KIP-184: Rename LogCleaner and related classes to LogCompactorA lot of configuration change will cause more trouble and doesn't seems to be worth it
KIP 230: Name Windowing JoinsCovered by KIP-372: Naming Repartition Topics for Joins and Grouping
KIP-232: Detect outdated metadata using per-partition leaderEpoch fieldMerged into KIP-320: Allow fetchers to detect and handle log truncation
KIP-246: Connect producers and consumers should inherit worker configsWithdrawn because proposal could not be made backward compatible with existing behavior
KIP-248 - Create New ConfigCommand That Uses The New AdminClientDiscarded by author as it's partly covered in KIP-339 and KIP-422
KIP-259: Improve Streams DSL Timestamp Propagation SemanticsChange did not require a KIP.
KIP-262: Metadata should include number of state stores for taskRejected since metadata is no longer required.
KIP-263: Allow broker to skip sanity check of inactive segments on broker startupWithdrawn because the solution we agreed on does not require interface change
KIP-275 - Indicate "isClosing" in the SinkTaskContext
KIP-286: producer.send() should not block on metadata updateWithdrawn because the benefit of not having to wait for metadata is probably not worth the complexity added in producer.
KIP-288: [DISCARDED] Consumer.poll() timeout semantic change and new waitForAssignment methodDiscarded in deference to KIP-266
KIP-310: Add a Kafka Source Connector to Kafka ConnectWithdrawn in favor of KIP-382.
KIP-327: Add describe all topics API to AdminClientWithdrawn in-favor of filter support in Metadata API and KIP-142
KIP-344: The auto-generated client id should be passed to MetricsReporterBug fix so KIP not needed
KIP-364: Remove implicit Materialized, Consumed and ProducedSubsumed by KIP-365
KIP-383:  Pluggable interface for SSL FactoryReplaced by KIP-519
KIP-398: Support reading trust store from classpath

Not enough interest in favour. Can be implemented with mechanism in 

Jira
serverASF JIRA
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyKAFKA-8191

KIP-404: Add Kafka Connect configuration parameter for disabling WADL output on OPTIONS request

Discarded, reported as a bug by

Jira
serverASF JIRA
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyKAFKA-7759

KIP-432: Additional Broker-Side Opt-In for Default, Unsecure SASL/OAUTHBEARER Implementation

A "security sanity check tool" is a more generic and appropriate solution.
KIP-451: Make TopologyTestDriver output iterable

Discarded in favor of KIP-456

KIP-456: Helper classes to make it simpler to write test logic with TopologyTestDriverDiscarded in favor of KIP-470
KIP-472: Add header to RecordContext/ProducerRecordDiscarded due to change being far more complex than necessary for a simple bug
KIP-485: Make topic optional when using through() operations in DSLMoved to KIP-221
KIP-486: Support custom way to load KeyStore and TrustStoreDiscarded in favor of KIP-519
KIP-522: Update BrokerApiVersionsCommand to use AdminClientDiscarded as this KIP is likely to be misused
KIP-593: Enable --if-exists and --if-not-exists for AdminClient in TopicCommandSuperseded by KIP-604
KIP-615: add ConstrainedCooperativeStickyAssignorDiscarded in favor of modifying existing assignor
KIP-638: Deprecate DescribeLogDirsResponse.[LogDirInfo, ReplicaInfo]

Duplication of KIP-621

KIP-672: Introduce Kafka Streams Specific Uncaught Exception Handler

Combined with KIP-671

[DISCARD] KIP-658 Deprecate all setters of Headers

...