Confluent Platform Component Changelogs
This topic provides changelogs for the individual Confluent Platform components.
This page contains the changelog for Confluent Platform 8.4. To view the changelog for an earlier Confluent Platform release, use the version picker to switch to the documentation for that release. To find the latest patch version for each Confluent Platform release line, see Confluent Platform patch versions.
Version 8.4.0
Released October 2026
Community Features
Common
7f54c289 - Update Jetty to 12.0.39
36a8c347 - Bump jmx_prometheus_javaagent.version from 0.20.0 to 1.6.0
a2a875ee - Update log4j to 2.25.5
9f9f643d - Update Netty to 4.1.137
9239d371 - Update Jackson to 2.21.5
PR-1041 - Update logback-core to 1.5.36
63606b30 - Bump gson.version to 2.11.0
PR-1024 - Update azure-security-keyvault-keys to 4.10.6
PR-953 - Update bouncycastle.jdk18 to 1.84
Kafka
PR-23499 - KAFKA-21106: Resolve merging of batches in ShareFetch
PR-23471 - KAFKA-21098: RemoteDeleteLag metrics report a phantom lag that never drains after a leader->follower transition
PR-2169 - Update Jetty to 12.0.39
PR-23473 - KAFKA-20843: Allow custom consumer group assignors to override built-in assignor names
PR-23464 - KAFKA-21096: Deregister SharePartition metrics on partition removal
PR-23316 - KAFKA-20979: Fix another gap in index metadata sync logic
PR-22102 - KAFKA-20464: Fix topology corruption when ConnectedStoreProviders share a StoreBuilder
PR-23246 - KAFKA-20977: Fix RemoteCopyLagSegments off-by-one on single-record segments
PR-23397 - KAFKA-19583: Enable OAUTHBEARER SASL in the native image
PR-23258 - KAFKA-20979: Ensure indexes resize are fsynced when shutting down
PR-23123 - KAFKA-20187: Fix for AsyncKafkaConsumer not clearing endOffsetRequested flag
PR-23364 - KAFKA-20939: Disable async dns resolution in streams and connect
PR-23348 - KAFKA-21010: Another busy loop happens if the member is in JOINING state and bootstrap DNS resolution is not finished
PR-23341 - KAFKA-21025: StreamsGroupHeartbeatRequest must drop warmup tasks for v0
PR-23227 - KAFKA-20970: Another busy loop happens if auto.commit.interval.ms is less than bootstrap.resolve.timeout.ms
PR-23321 - KAFKA-21004: Bump jackson to 2.21.6
PR-22059 - KAFKA-20314: Update GraalVM to version 25 to fix native image segfault on startup
PR-23214 - KAFKA-20939: Mark “bootstrap.resolve.timeout.ms” as an experimental feature
PR-23014 - KAFKA-20854: Fix consumer busy loop during bootstrap DNS resolution (KIP-909)
PR-22969 - KAFKA-20845: Don’t flush empty batch when appending large records in group coordinator
PR-23188 - KAFKA-20939: Client applications broken by DNS resolution failure behaviour change
PR-23144 - KAFKA-20933: RocksDB.putAll bypasses the transactional buffer
PR-23161 - KAFKA-20936: Bump lz4-java to 1.11.2
PR-23140 - KAFKA-20930: Mark assignment offloading configs internal for 4.4
PR-23083 - KAFKA-20894: Make StreamsGroupDescription.toString null-safe
PR-23092 - KAFKA-20790: Add AssignmentConfigs interface
PR-22783 - KAFKA-20719: Streams group sticky assignor not sticky at startup
PR-23100 - KAFKA-20891: Mark unused streams protocol configs internal
PR-23009 - KAFKA-20877: Fix incorrect restore-rate and update-rate metrics
PR-23093 - KAFKA-20721: Remove timeout on task removal from state updater
PR-23037 - KAFKA-20875: Headers window store adapters must expose the retention they wrap
PR-22614 - KAFKA-20711: Measure restore-remaining-records in offset slots
PR-23097 - KAFKA-18628: Add node.id to the metrics reporter config override
PR-23096 - KAFKA-20899: Fix streams StickyAssignor bug for standby tasks
PR-23013 - KAFKA-20116: Fix reporting task-(end)-offset sum for streams protocol
PR-22452 - KAFKA-14597: Record-e2e-latency-max only considers consumption latencies but not processing delays
PR-21592 - KAFKA-20232: Fix WakeupException in awaitMetadataUpdate()
PR-23101 - KAFKA-20385: [3/N]: Null-check for listener regn on AsyncKafkaConsumer
PR-22883 - KAFKA-20816: Add support for CIDR into Authorizer.authorizeByResourceType
PR-22999 - KAFKA-20861: Kafka Streams should handle corrupted assignments pro-actively
PR-22016 - KAFKA-19839: Fix NoSuchFieldError for zstd compression in native image
PR-22747 - KAFKA-20765: Fix OffsetFetch stale-epoch retry spinning in deduplication loop
PR-23005 - KAFKA-20874: Close SslFactory in JaasOptionsUtils.createSSLSocketFactory()
PR-23082 - KAFKA-20893: Avoid reporting incorrect task-offsets to Kafka Streams assignor
PR-22271 - KAFKA-20385: [2/N]: Add setRebalanceListener into *Consumer
PR-22984 - KAFKA-20430: Fix getTopicConfig() for connector-specific offset stores
PR-23006 - KAFKA-20868: Add warmup tasks to IQ metadata
PR-22405 - KAFKA-18157: Consider UnsupportedVersionException child class to represent the case of unsupported fields
PR-23050 - KAFKA-20885: Fix IQ metadata for source topics with fewer partitions
PR-22778 - KAFKA-20782: Fix lost IQ metadata in streams protocol
PR-22191 - KAFKA-20395: Support unregistering controllers
PR-22970 - KAFKA-20846:Make the streams assignor GroupSpec deeply unmodifiable
PR-22977 - KAFKA-18628: Deprecate broker.id config (KIP-1232)
PR-22654 - KAFKA-20578: Initial producer incremental allocation for uncompressed data
PR-22981 - KAFKA-20665: Change task roles in place in the reconciler
PR-22888 - KAFKA-20736: Close empty share sessions safely
PR-22985 - KAFKA-20665: Refine the assignment refiner scaffolding
PR-22920 - KAFKA-20790: Add group.streams.assignors broker config + loader
PR-22880 - KAFKA-20831: Cache SASL principal per authentication
PR-22982 - KAFKA-20843: Custom consumer group assignors can silently use duplicate or built-in assignor names
PR-22897 - KAFKA-14648: Do not fail clients if bootstrap servers is not immediately resolvable (2/2)
PR-22165 - KAFKA-20413: Make Streams suppress headers-aware
PR-20384 - KAFKA-20430: Add configuration to control internal topic creation in Kafka Connect
PR-21080 - KAFKA-14648: Do not fail clients if bootstrap servers is not immediately resolvable
PR-22748 - KAFKA-20665: Bump group epoch for warm-up refinement steps
PR-22979 - KAFKA-20780: Fix to clear completed inflight poll on empty fetch response and time remaining
PR-22923 - KAFKA-20665: Promote a warm-up task to active in place in the reconciler
PR-22900 - KAFKA-20825: Fix native image startup with share group DLQ manager
PR-22853 - KAFKA-20706: IQv2 TimestampedWindowRangeWithHeadersQuery (KIP-1356)
PR-22908 - KAFKA-20828: Derive client throttling from response schema
PR-22073 - KAFKA-20253: Trigger rejoin on heartbeat thread AuthenticationException
PR-22926 - KAFKA-20832: Fix cordon logic with user specified assignments
PR-22919 - KAFKA-20723: Resolve DLQ copy records per produce round
PR-22949 - KAFKA-20410: Make KIP-1191 cluster configs dynamic
PR-22326 - KAFKA-967: Use key range in ProducerPerformance
PR-21971 - KAFKA-20412: Fix prefixScan for KV-Store with headers
PR-22570 - KAFKA-20197: Headers aware StreamPartitioner
PR-22213 - KAFKA-20744: Add back rack.aware.assignment.tags config
PR-22917 - KAFKA-20829: Throttle StreamThread shutdown rebalance enforcement to avoid log flood
PR-22925 - KAFKA-20827: Don’t re-create an already-owned task on assignment
PR-22788 - KAFKA-20790: Promote streams assignor API to public module
PR-22810 - KAFKA-20804: Reduce lock contention in ProducerMetadata#add
PR-22755 - KAFKA-20769: ListDeserializer can silently deserialize a corrupted entry when the input is truncated mid-entry
PR-22006 - KAFKA-20198: Fix StickyTaskAssignor capacity calculation to use proportional instance limit
PR-22808 - KAFKA-20695: Extend “describe group” to return “task offset” metadata
PR-22529 - KAFKA-20673: Skip stale-leader lookup retry while the AdminClient is closing (follow-up)
PR-22379 - KAFKA-19584: Add SecurityManager shim support to native image
PR-22881 - KAFKA-20783: Fixes for locks release for async handling in DelayedShareFetch (6/N)
PR-22807 - KAFKA-20787: Implement KIP-1340: Expose Both Mapped Key and Stream Key in Streams-GlobalKTable Joins
PR-22766 - KAFKA-20736: Improve share session handling on leader change
PR-22855 - KAFKA-20808: StreamThread dies with fatal InvalidStateStoreException after TaskCorruptedException
PR-22678 - KAFKA-20726: Don’t reuse the BufferSupplier in kraft state machine
PR-22166 - KAFKA-20538: Make RocksDBTimeOrderedKeyValueBuffer headers-aware
PR-20598 - KAFKA-19663: Unify kafka-broker-api-versions tool to cluster-tool and support bootstrap controllers
PR-22836 - KAFKA-20253: Heartbeat CPU spin fix for Consumer protocol
PR-22799 - KAFKA-20705: IQv2 TimestampedWindowKeyWithHeadersQuery for headers-aware window stores (KIP-1356)
PR-22829 - KAFKA-20768: Add transactional and IQ isolation to time-ordered RocksDB stores
PR-21970 - KAFKA-20403: Streams - Fix stream threads interruptions
PR-22837 - KAFKA-20805: Refresh task directory mtime on state manager close
PR-22830 - KAFKA-20783: Release locks on exception for local reads within remote calls (5/N)
PR-22828 - KAFKA-20783: Clear held partitions failing min-bytes (4/N)
PR-22777 - KAFKA-20748: Keep StoredDescriptionTopologyEpoch consistent with the topology description plugin
PR-22754 - KAFKA-20768: Add transactional and IQ isolation to RocksDB window and session stores
PR-22806 - KAFKA-20798: Add readOnly(IsolationLevel) to TimestampedWindowStoreWithHeaders and SessionStoreWithHeaders
PR-22296 - KAFKA-20585: Share Fetch latency metric incorrectly updated during ShareAcknowledgeResponse
PR-22770 - KAFKA-20704: IQv2 TimestampedRangeWithHeadersQuery for headers-aware key-value stores (KIP-1356)
PR-22797 - KAFKA-20777: Make a closed StagedMergeIterator throw InvalidStateStoreException
PR-22802 - KAFKA-20771: Enforce max msg bytes in share group DLQ produce path
PR-22749 - KAFKA-20761: Add client logs for consumer group configs defined on the broker
PR-22501 - KAFKA-20088: CIDR-based Host Patterns for ACLs
PR-22794 - KAFKA-20791: Bump log4j to 2.25.5
PR-22729 - KAFKA-20741: Add ReadOnlyRecordIterator IQv2 result type (KIP-1356)
PR-22780 - KAFKA-20783: Integrate async log reader fetch in DelayedShareFetch (1/N)
PR-22768 - KAFKA-20778: Avoid unneeded rebalance on classic consumer when replica unavailable
PR-22712 - KAFKA-20751: Preserve available versions for cached connector plugin validation failures
PR-22666 - KAFKA-20703: IQv2 TimestampedKeyWithHeadersQuery for headers-aware key-value stores (KIP-1356)
PR-22753 - KAFKA-20678: Exception handling for read call in ReplicaManagerLogReader.readAsync
PR-22035 - KAFKA-18812: Improve consumer API errors upon background thread failure
PR-19456 - KAFKA-19117: Client Throttling Log messages should be of log level - WARN (Java client)
PR-22235 - KAFKA-14228: Support for nested structures: ValueToKey
PR-22512 - KAFKA-20246: Add clusterId and nodeId to ApiVersionsRequest (3/N)
PR-22328 - KAFKA-20598: Prevent polling unassigned consumer during ConsumerTask shutdown
PR-22720 - KAFKA-20736: Improve removal of unassigned partitions from share sessions
PR-22741 - KAFKA-20760: Commit position atomically with changelog offsets
PR-22745 - KAFKA-20760: Stage position updates in InMemorySessionStore transaction buffer
PR-22744 - KAFKA-20760: Stage position updates in InMemoryWindowStore transaction buffer
PR-22743 - KAFKA-20760: Stage position updates in InMemoryKeyValueStore transaction buffer
PR-22742 - KAFKA-20760: Fix ClassCastException in KeyValueToTimestampedKeyValueByteStoreAdapter
PR-22658 - KAFKA-20665: Add refiner scaffolding for streams warmup tasks
PR-22707 - KAFKA-20678: Add timeout in replica manager log reader remote read
PR-21337 - KAFKA-20032: KIP-1265 Automatic detection of internal API usage
PR-22714 - KAFKA-20742: Start offset for newly initialized share partitions of known topics should be 0
PR-22718 - KAFKA-20750: Add divide-by-zero error check in KafkaConsumerMetrics/KafkaShareConsumerMetrics
PR-22713 - KAFKA-20292: [5/N]: Fix UpdatedMembersAndTargetAssignmentView to handle instance id changes
PR-22673 - KAFKA-19871: Add a TopologyTestDriverBuilder, deprecate old constructors
PR-22711 - KAFKA-20655: Mark KIP-1331 RPCs stable before release
PR-22615 - KAFKA-20712: Fix transaction state name in log decoder output
PR-22716 - KAFKA-20753: Fix transactional status marker writes
PR-22708 - KAFKA-20747: Remove stale staticMembers entry when a member changes its instance id
PR-22661 - KAFKA-20732: Seed highestOffsetInRemoteStorage before size-based remote retention
PR-22681 - KAFKA-20499: Add isolation-level reads to in-memory stores
PR-22710 - KAFKA-20749: Fix stream-stream outer joins with transactional stores
PR-22691 - KAFKA-20720: Lower client log level for self-healing share session errors
PR-22677 - KAFKA-20741: Add ReadOnlyRecord IQv2 result type (KIP-1356)
PR-22454 - KAFKA-20223: Extended I/O Metrics Collection
PR-22603 - KAFKA-20710: Share coordinator - Fence stale periodic jobs
PR-22394 - KAFKA-20633: Update the default value of remote copy lag bytes
PR-22682 - KAFKA-20500: Add isolation-level reads to versioned stores
PR-22601 - KAFKA-20678: Support share group DLQ remote record fetch
PR-22664 - KAFKA-20717: Add broker-side set/get observability sensors for streams topology description (KIP-1331)
PR-22644 - KAFKA-20116: Forward task-(end)-offset to task assignor (5/5)
PR-22683 - KAFKA-20490: Track committed and uncommitted RocksDB Positions
PR-22685 - KAFKA-20743: Restrict sentinel leader and state epoch in share coord
PR-22645 - KAFKA-20116: Send task-(end)-offset only if changed (4/N)
PR-22652 - KAFKA-20495: Add transactional support to in-memory window and session stores
PR-21803 - KAFKA-20116: Send task-(end)-offset to broker (3/N)
PR-22653 - KAFKA-20498: Add isolation-level reads to RocksDBStore
PR-22640 - KAFKA-20625: Add StreamsGroupTopologyDescriptionRequestManager and Streams client topology push [2/N]
PR-22559 - KAFKA-20169: Support static membership for Kafka Streams with the streams rebalance protocol at Client Side
PR-22504 - KAFKA-20659: Reject unsupported MirrorMaker record versions at runtime
PR-22662 - KAFKA-20723: Merge records while coalescing share DLQ requests. [2/N]
PR-22635 - KAFKA-20723: Add fail fast check for share group DLQ [1/N]
PR-22622 - KAFKA-20696: Periodic plugin.deleteTopology cleanup for naturally expired streams groups
PR-22608 - KAFKA-20116: Make task-end-offset-sum available to client background thread (2/N)
PR-22639 - KAFKA-20625: Add StreamsGroupTopologyDescriptionRequestManager and Streams client topology push [1/N]
PR-22636 - KAFKA-20626: Add topology description to Admin client, DescribeStreamsGroups handler, and command-line tools
PR-22202 - KAFKA-17164: Enforce ‘application.server’ <server>:<port> format at config level
PR-22434 - KAFKA-19193: Trace-log rack-specific load stats in rack-aware mode
PR-22433 - KAFKA-19193: Throw ConfigException if rack is empty in rack-aware mode
PR-22607 - KAFKA-20524: Improve reset offset usability
PR-22356 - KAFKA-20601: Allow static member rejoin when consumer group is full
PR-22580 - KAFKA-20662: Throw INCONSISTENT_GROUP_PROTOCOL for malformed request during online migration
PR-22625 - KAFKA-20493: Transactional RocksDBStore
PR-22595 - KAFKA-20116: Make task-offset-sum available to client background thread (1/N)
PR-22626 - KAFKA-20494: Transactional InMemoryKeyValueStore
PR-22590 - KAFKA-20699: TopologyTestDriver.getStateStore must not reset the record context
9c7fad33 - Require expected issuer and audience for the SASL/OAUTHBEARER broker validator
PR-22627 - KAFKA-20624: Wire topology description plugin into GroupCoordinatorService for the read path (describe) and broker wiring
PR-20969 - KAFKA-17251: Avoid WARN on cleanup when state directory only contains process metadata
PR-22597 - KAFKA-20491: Add uncommitted bytes limit
PR-22617 - KAFKA-20713: Lower level for client log on self-healing session not found
PR-22554 - KAFKA-20623: DeleteGroups extension for streams group topology description plugin (3/3)
PR-22323 - KAFKA-20490: Add transaction buffer framework
PR-22552 - KAFKA-20623: Update RPC for streams group topology description plugin (2/3)
PR-22197 - KAFKA-20524: CSV reset offset plan for kafka-share-groups.sh
PR-22581 - KAFKA-20694: Fix share read leader epoch sentinel
PR-22551 - KAFKA-20623: Heartbeat extension for streams group topology description plugin (1/3)
PR-22315 - KAFKA-20497: Add TimeOrderedCachingWindowStore#readOnly
PR-22572 - KAFKA-20691: PersisterStateBatchCombiner.combineStateBatches() with an event-driven sweep-line
PR-22479 - KAFKA-20613: Add code to support copy record in DLQ state manager
PR-22457 - KAFKA-20640: Consumer group should reject classic member joins when migration policy is disabled
PR-22523 - KAFKA-20444: Add TxnOffsetCommit v6 with topic IDs (KIP-1319)
PR-22498 - KAFKA-20196: Deprecate Yammer-based metrics in GroupCoordinatorMetrics and add equivalent Kafka Metrics
PR-22245 - KAFKA-20169: Support static membership for Kafka Streams with the streams rebalance protocol (1/N)
PR-22270 - KAFKA-20385: [1/N]: Add RebalanceConsumer interface and callback impl
PR-22511 - KAFKA-20622: Define StreamsGroupTopologyDescriptionPlugin SPI and InMemoryTopologyDescriptionPlugin
PR-22493 - KAFKA-20673: AdminClient partition-leader APIs hang when a cached leader is no longer in the cluster
PR-22502 - KAFKA-20672: Retry DLQ on SharePartition init for ARCHIVING records
PR-22460 - KAFKA-20444: [11/N] Refresh metadata before TxnOffsetCommit (KIP-1319)
PR-22468 - KAFKA-20660: Add detection of use of legacy ConsumerRecords(Map) constructor
PR-22464 - KAFKA-20621: Add StoredTopologyEpoch and LastFailedTopologyEpoch to StreamsGroup model and metadata record
PR-22466 - KAFKA-20635: Spurious “Writing records” failed errors in the group coordinator after partition leadership change
PR-22378 - KAFKA-20616: Close offsets column family options and release column family handles
PR-22469 - KAFKA-20660: Mark deprecated ConsumerRecords constructor with forRemoval=true
PR-22187 - KAFKA-20246: Add clusterId and nodeId to ApiVersionsRequest (2/N)
PR-22491 - KAFKA-20663: Return committed offset from newest segment first
PR-22490 - KAFKA-20663: Fix startup state manager close to release StateDirectory task lock
PR-21799 - KAFKA-18652: Add acceptable.recovery.lag config
PR-22412 - KAFKA-20612: Stitch DLQ metrics with ShareGroupDLQStateManager
PR-22278 - KAFKA-20145: Avoid redundant partial HB acks from network-thread reconcile
PR-22444 - KAFKA-20634: Spurious HighWatermarkUpdate failed errors in the group coordinator after partition leadership change
PR-22312 - KAFKA-20497: Add readOnly(IsolationLevel) to CachingKeyValueStore
PR-22397 - KAFKA-20620: Add StreamsGroupTopologyDescriptionUpdate RPC schema and extend StreamsGroupDescribe/Heartbeat
PR-22316 - KAFKA-20497: Add readOnly(IsolationLevel) to MeteredKeyValueStore
PR-22314 - KAFKA-20497: Add readOnly(IsolationLevel) to CachingWindowStore
PR-22317 - KAFKA-20497: Add readOnly(IsolationLevel) to MeteredSessionStore
PR-22318 - KAFKA-20497: Add readOnly(IsolationLevel) to MeteredWindowStore
PR-22443 - KAFKA-20444: [10/N] Wire topic IDs through TransactionManager (KIP-1319)
PR-21122 - KAFKA-19964: ApiVersions response return unknown features if the cluster metadata HWM is unknown
PR-22415 - KAFKA-20638: Use Locale.ROOT in ConsumerGroupCommand.toLowerCase()
PR-22313 - KAFKA-20497: Add readOnly(IsolationLevel) to CachingSessionStore
PR-22311 - KAFKA-20497: Add readOnly(IsolationLevel) to ChangeLogging stores
PR-22372 - KAFKA-20611: Stitch share group DLQ manager with the main code
PR-22382 - KAFKA-20612: Add DLQ related metrics to ShareGroupMetrics. [1/N]
PR-21579 - KAFKA-20167: Introduce CloseOptions.DEFAULT for Kafka Streams
PR-22368 - KAFKA-20549: Implement PRODUCE RPC handler for DLQ state manager [5/N]
PR-20707 - KAFKA-19648: Cluster metadata bootstrapping with kraft checkpoint
PR-18142 - KAFKA-17871: Avoid blocking the herder thread when producer flushing hangs
PR-22265 - KAFKA-20444: [9/N] Preserve topic-level structure in TxnOffsetCommit response handling (KIP-1319)
PR-22282 - KAFKA-16876: TaskManager.handleRevocation doesn’t handle errors thrown from task.prepareCommit
PR-22199 - KAFKA-20535: Improve async consumer CPU usage under low max.poll.records
PR-20913 - KAFKA-19893: Reduce tiered storage redundancy with delayed upload (KIP-1241)
PR-22264 - KAFKA-20570: Catch RuntimeException in ConsumerProtocol deserialization in group coordinator
PR-22302 - KAFKA-20409: Don’t expose internal group configs unless they are user-defined
PR-22300 - KAFKA-20549: Change ownership of DLQ state manager. [4/N]
PR-22141 - KAFKA-20489: Add enable.transactional.statestores
PR-22142 - KAFKA-20492: Prepare DBAccessor for txn support
PR-22143 - KAFKA-20496: Add isolation level to IQ dispatch
PR-22284 - KAFKA-20549: Add logic for create topic in DLQ state manager. [3/N]
PR-22273 - KAFKA-20575: Add onPartitionsLost support to MockConsumer
PR-22041 - KAFKA-20440: Use default Keystore type instead of hardcoding PKCS12 keystore type
PR-22267 - KAFKA-20571: Add store unwrapping for publishing num-keys metric
PR-22249 - KAFKA-20444: [7/N] Wire topic IDs through OffsetMetadataManager (KIP-1319)
PR-22239 - KAFKA-20444: [6/N] Handle GROUP_ID_NOT_FOUND and STALE_MEMBER_EPOCH in TransactionManager (KIP-1319)
PR-22238 - KAFKA-20444: [5/N] Resolve TxnOffsetCommit topic IDs in KafkaApis (KIP-1319)
PR-20376 - KAFKA-18447: Support SASL_SSL protocol with java.security.auth.login.config
PR-22089 - KAFKA-20452: Avoid creating unnecessary empty batches in LogCleaner below the High Watermark
PR-22132 - KAFKA-20523: Fix logger class name in KStreamKTableJoinProcessor
PR-22224 - KAFKA-20444: [4/N] Prepare TxnOffsetCommitResponse for topic IDs (KIP-1319)
PR-22232 - KAFKA-20555: Use jakarta.annotation.Priority in JaasBasicAuthFilter
PR-22215 - KAFKA-20444: [3/N] Allow building TxnOffsetCommit v6 requests with topic IDs (KIP-1319)
PR-21918 - KAFKA-20380: Backwards compatible advertised.listeners when it is not defined
PR-22080 - KAFKA-20245: DLQ records exceeding max delivery count. [3/N]
PR-22214 - KAFKA-20444: [2/N] Update OffsetMetadataManager to use new TxnOffsetCommit errors (KIP-1319)
PR-22209 - KAFKA-20549: Share group DLQ manager implementation. Skeleton classes [1/N]
PR-22205 - KAFKA-20444: [1/N] Add TxnOffsetCommit v6 schema (KIP-1319)
PR-22206 - KAFKA-20546: Lazily call generateNewClientId when handling GetTelemetrySubscriptionsRequest
PR-22123 - KAFKA-15768: Fix getOnlyPartitionResult to handle FailedQueryResult
PR-22115 - KAFKA-13499: Avoid restoring outdated records
PR-22070 - KAFKA-20441: Fix handling of cordoned log dirs
PR-19079 - KAFKA-13022: Optimize ClientQuotasImage#describe
PR-22173 - KAFKA-20426: Using both group.id and assign() causes a busy loop in AsyncKafkaConsumer
PR-21313 - KAFKA-20072: Don’t generate IDs with hyphens
PR-22167 - KAFKA-20410: Register topic DLQ configs in LogConfig. [2/N]
PR-22170 - KAFKA-20533: Correct error response for topic deletion during share fetch
PR-21801 - KAFKA-18652: Add num.warmup.replicas config
PR-21842 - KAFKA-19937: Introduce shared ReaperThread for Persister / NetworkPartitionMetadataClient
PR-22056 - KAFKA-20450: Use allowlist for Connect offset store deserialization
PR-22140 - KAFKA-20456: Avoid persisting closed state if store is not open yet
PR-21760 - KAFKA-20312: Handle null leader during OffsetFetcher regroup safely
PR-22104 - KAFKA-20506: Kafka-configs.sh can’t delete the config from a offline broker when using bootstrap controller
PR-22126 - KAFKA-20505: Move future completion out of locks for Share Partition
PR-19850 - KAFKA-19193: Support rack-aware partitioning for Kafka producer
PR-22085 - KAFKA-20456: Use lighter options for RocksDB offsets column family
PR-22079 - KAFKA-9914: Fix replication cycle detection
PR-21979 - KAFKA-20410: Add DLQ configuration parameters for Share Groups (KIP-1191)
PR-21911 - KAFKA-20373: Bump maven artifact to 3.9.15
PR-22047 - KAFKA-20442: Update streams group assignment epoch when last member leaves
PR-22046 - KAFKA-20442: Update share group assignment epoch when last member leaves
PR-22045 - KAFKA-20442: Update consumer, share and streams group assignment epoch when last member leaves
PR-22055 - KAFKA-20449: Downgrade “not updating high watermark” log from WARN to DEBUG
PR-22036 - KAFKA-20434: Consumer group does not recompute assignment when static members rejoin with different assignor
PR-22011 - KAFKA-20428: Fix unsubscribe failure with assignment updates
PR-21793 - KAFKA-20245: DLQ share group client REJECT ack records. [2/N]
PR-22015 - KAFKA-20431: ConsumerGroupDescribe API does not return partitions being revoked
PR-21924 - KAFKA-20378: Make container memory limit configurable
PR-21983 - KAFKA-20393: Fix stickyNode using stale IP when broker address changes
PR-21817 - KAFKA-20306: StreamsGroupCommand should display committed offsets for repartition topics
PR-22005 - KAFKA-20425: Optimize purgatory triggers when no data is available for share fetch
PR-22004 - KAFKA-20194: Ensure backward compatibility for Windowed Store
PR-21540 - KAFKA-20264: Fix overwrite in recursive parent-node matching
PR-21900 - KAFKA-20282: Add message to classic consumer startup guiding to next-gen protocol
PR-21994 - KAFKA-20415: Add share.version=2 for gated DLQ support
PR-21956 - KAFKA-20194: Add session headers store support to TopologyTestDriver
PR-21997 - KAFKA-20332: [2]: Handle wakeup on poll reconciliation check
PR-21992 - KAFKA-20307: Expose header-stores natively in IQv1
PR-21897 - KAFKA-20332: Fix to ensure app thread not collecting records for partitions being revoked
PR-21941 - KAFKA-20219: Headers store with caching enabled should reject queries
PR-21957 - KAFKA-20173: Ensure Metered session-stores pass headers correctly
PR-21950 - KAFKA-20194: Fix StoreBuilderWrapper for header-stores
PR-21973 - KAFKA-20398: Remove metrics reporter of replaced stream threads
PR-21946 - KAFKA-20396: Fix RocksDBStore initialization error handling
PR-21926 - KAFKA-20339: Remove assignment offloading configs for 4.3
PR-21949 - KAFKA-20194: Ensure backward compatibility for Sliding Windows
PR-21605 - KAFKA-13819: Add application.server to Streams assignor logs when set
PR-21958 - KAFKA-19566: Deprecate ClientQuotaCallback#updateClusterMetadata
PR-21967 - KAFKA-20173: Propagate headers into serde 8/N
PR-21969 - KAFKA-20173: Propagate headers into serde 9/N
PR-21951 - KAFKA-20357: Unify method signature for retrieving config names across config classes
PR-21934 - KAFKA-20194: Ensure backward compatibility for Session Stores
PR-21931 - KAFKA-20368: Use LinkedHashMap for deterministic metric tags order in RLMExpirationTask
PR-21851 - KAFKA-20173: Propagate headers into serde 7/N
PR-21936 - KAFKA-20173: Ensure Metered window-stores pass headers correctly
PR-21766 - KAFKA-20246: Detection and handling of misrouted connections [1/N]
PR-21464 - KAFKA-20165: Handle retryable partition errors gracefully on OffsetFetch
PR-21850 - KAFKA-20173: Propagate headers into serde 6/N
PR-21904 - KAFKA-20194: Ensure backward compatibility
PR-21855 - KAFKA-20289: Fix DescribeConfigs to correctly resolve broker synonyms for group configs
PR-21117 - KAFKA-19932: Adding handling of OOM and avoiding wrapped as timeout
PR-21919 - KAFKA-20382: Send background error when updating assignment for callbacks fail
PR-21884 - KAFKA-19712: Commit OFFSET_UNKOWN when closing state stores and the offsets are not yet initialized
PR-21379 - KAFKA-20036: Handle LogCleaner segment overflow caused by compression level changes
PR-21828 - KAFKA-20310: Persist previousProducerId and nextProducerId in transaction log
PR-21053 - KAFKA-19851: Delete dynamic configs that were removed by Kafka
PR-21824 - KAFKA-20330: Ack handling improvement on broker restart
PR-21885 - KAFKA-20347: Fix sensor cleanup and JMX tag order in ShareCoordinatorMetrics
PR-21751 - KAFKA-20287: Close column family handles on store init failure
PR-21802 - KAFKA-20203: SetFlushListener should pass record.headers() instead of empty headers
PR-21028 - KAFKA-19541: Allow configuration of kraft RPC max bytes
PR-21813 - KAFKA-20106: [2/2]: Ensure reconciled assignment updated within poll in Kafka Streams
PR-21740 - KAFKA-20302: Return receive buffers to memory pool on invalid requests
PR-21853 - KAFKA-19711: Add commit-rate metric to metered state stores
PR-21706 - KAFKA-20249: Optimize raw value extraction in headers-aware deserializers
PR-21781 - KAFKA-20321: Mark lost partitions before callbacks for Consumer and Streams
PR-21038 - KAFKA-19542: Consumer.close() does not remove all added sensors from Metrics
PR-21794 - KAFKA-20318: Add time ordered session store support to the DSL
PR-21627 - KAFKA-20251: Add group-level configs for assignment batching and offload
ksqlDB
PR-11170 - Bump wire-runtime-jvm/wire-schema-jvm to 6.3.0
PR-11169 - Log restore range validations regardless of restore.enabled flag
0d52f9e6 - Bump Netty to 4.1.137.Final and httpclient5 to 5.6.3
PR-11133 - Add pull query queue capacity configs and metrics
PR-11141 - Exclude non-FIPS bcpkix-jdk18on from broker-plugins dependency
PR-11136 - Support allowlist for command topic
PR-11129 - Support allowlist for all KSQL endpoints that allows user overrides
a7aad96d - Log configuration property overrides
PR-11126 - Extend ConfigMigrator to migrate legacy OAuth callback handler classes
PR-11098 - Add configurable admin-request retry timeout and RF inheritance for CSAS/CTAS
PR-11121 - Bump jline to 3.30.14
PR-11123 - Bind default JMX listener to localhost
PR-11097 - Stop heartbeat and lag agents before Vert.x close to avoid shutdown hang
PR-11096 - Add ksql.kafka.client.additional.config.prefixes
PR-11066 - Apply ksqlDB denylist to SET statements
REST Proxy
PR-1496 - Ensure jars for CSFLE / data contract rules are included in image
9411fad6 - Honor instance-level consumer.request.timeout.ms in v2 read scheduler
PR-1471 - Disable javaType resolution in JSONSCHEMA consumer
5a80a7e3 - Add POST /v3/clusters/{clusterId}/topics/-/configs:alter for multi-topic batch config alteration
9441ad5f - Bump async-http-client to 2.16.0
PR-735 - Fix REST startup error with Basic authentication on Jetty 12
PR-723 - Fix authentication.skip.paths for /*
PR-679 - Add config to enforce required SNI headers
Schema Registry
PR-4596 - Log compatibility rejections with subject and policy context
PR-4599 - Count raw bytes in association payload
PR-4597 - Add a format parameter to the Maven plugin download goal
PR-4587 - Add configs for association batch size limits
PR-4592 - Preserve auth exception cause chain in Avro/JSON/Protobuf converters
PR-4591 - Support registering Logical Types from maven plugin
PR-4586 - Inherit metadata/ruleSets like other non-alias fields
PR-4579 - Add enum-delete rule, disable reorder check, guard bad config
PR-4581 - Pin Avro to 1.12.1
PR-4580 - Resolve config inheritance the same way for every scope
PR-4578 - Add range-check for variants.as(v, “timestamp”)
PR-4576 - Add equals/hashCode for Variant
PR-4568 - Exclude non-FIPS BouncyCastle jars from kafka-serde-tools package
PR-4557 - Preserve Avro named-type aliases in logical types
PR-4556 - Preserve Protobuf enum numbers in Logical Types
PR-4548 - Retry leader-forwarding requests on transient connection failures
PR-4546 - Fix USING TYPE for local aliases
PR-4544 - Handle empty/invalid encryptedKeyMaterial on createDek
PR-4543 - Support format=logical output across schema APIs
PR-4542 - Return 422 instead of 500 for invalid logical-format schemas
PR-4540 - Preserve name of root message when converting to logical types
PR-4539 - Fix handling of null variants
PR-4536 - Add max.to.connect.data.objects Avro converter config
PR-4537 - Improve compatibility check error messages
PR-4538 - Fix Protobuf Decimal, Timestamp, and Variant issues for CEL
7fbb5c01 - Fix TIMESTAMP_TZ overflow and enforce RFC 3339/date range bounds
PR-4522 - Add batchGet/batchMutate composition metrics
502c675a - Fix Variant field name comparisons to use UTF-8 byte order
PR-4513 - Enforce mutual exclusion of schema references and strong associations
PR-4514 - Add config to control fetching external refs for JSON Schema
cb17002f - Fix json formatting for decimal, temporal types
d099421a - Bump httpclient5 to 5.6.4
PR-4503 - Add association-level metrics for batchGet/batchMutate
4168b18f - Propagate Avro aliases, Protobuf field nums to logical types
PR-4505 - Throttle leader-elector poll-loop ERROR logging on persistent failure
ee03027c - Apply compatibility policy to logical types
9af5bb1e - Support logical types in Schema Registry REST endpoints
cae63551 - Make new uint behavior configurable
19a31be0 - Fix CEL rules on unsigned/enum Protobuf fields
931ea936 - Record per-field FAILED status when a kek is unavailable on read
9e5167d0 - Use names from registered Protobuf schema for validation
PR-4492 - Fix Protobuf transformations for absent/unknown fields and map keys
8fd8e1e8 - Ensure tags can be modified when registering schema through association
PR-4485 - Allow RetryExecutor to accept a custom retry predicate
PR-4484 - Block registration of subjects with the name *
PR-4481 - Reject non-frozen STRONG associations
PR-4476 - Preserve JSON Schema additionalProperties using opt-in config
PR-4471 - Pin transitive Jackson to 3.2.1
9d84245b - Reject if/then/else and not schemas
feb2216e - Upgrade wire to 6.4.5
PR-4457 - Fix divide-by-zero error during JSON Schema compat check
PR-4455 - Support Variant in V1 mode for Flink interop
PR-4454 - Fix Avro logical-type registry collision
PR-4441 - Fix handling of Proto custom options during normalization
PR-4434 - Skip schema normalization in IMPORT mode
PR-4439 - Update assertj-core to 3.27.7
PR-4440 - Ensure Flink compat for JSON union branch names
PR-4436 - Gate JSON single-member oneOf collapse by version
PR-4437 - Remove BackupAwareByteArrayConverter
PR-4402 - Add backup/restore converter support with BackupWrapper API
PR-4411 - Add Alibaba Cloud KMS CSFLE provider
PR-4426 - Upgrade jsonata to 2.6.4; use RE2 regex engine
PR-4422 - Pass context when clients make KEK calls to DEK Registry
PR-4421 - Bump azure sdk version
PR-4418 - Remove incorrect default for subject in RewrapDeks tool
PR-4416 - Add support for saving Azure key version with DEK
PR-4404 - Fix serializing fixed-size Avro decimals with small unscaled value
PR-4397 - Fix oneof handling of wrapper types in protobuf converter
PR-4396 - Fix oneofs in protobuf converter for nullables (write-side)
PR-4394 - Hide frozen attribute for its default in Association APIs
PR-4392 - Fix oneofs in protobuf converter with wrapper/optional for nullables
6e9f1b56 - Remove identity-based comparisons in Avro caches
PR-4381 - Add opt-in strict validation for conflicting schema reference versions
3f5ff243 - Detect incompatible oneof field changes hidden by oneof rename/removal
d69afe90 - Return 403 instead of 5xx for permission errors
350fdb61 - Speed up JSON Schema compatibility checks
PR-4340 - Update azure-security-keyvault-keys to 4.10.6
285139b9 - Fix use of $ref with sibling property
e9182c83 - Add decimal min/max CEL functions
0f31ac93 - Add decimal mod CEL function
01946fdd - Add decimal to double CEL function
8146ebd8 - Add decimal.sqrt CEL function
c01d10c2 - Allow hard delete of subject versions even if association exists
11eb2119 - Ensure message indexes are not empty for Protobuf serialize
3b581ff6 - Fix AssociatedNameStrategy.usesSchema() to reflect fallback strategy
9a401c12 - Don’t kill leader-election thread on transient exceptions