Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
6976 commits
Select commit Hold shift + click to select a range
caa71a3
MINOR: Deflake Headers store upgrade integration test (#21808)
aliehsaeedii Mar 18, 2026
422845f
KAFKA-20291 [1/3]: Implement assignment batching for consumer groups …
squah-confluent Mar 18, 2026
f6ca0f6
MINOR: replace mkMap/mkEntry with Map.of/Map.entry in clients module …
DL1231 Mar 18, 2026
8b47aa8
KAFKA-17411: Fix issues with new offset management (#21795)
nicktelford Mar 18, 2026
f380a04
KAFKA-20164; Add bootstrap support to KRaft listener interface (#21453)
mannoopj Mar 18, 2026
56d562d
KAFKA-20258 Refactor DSL store config and propagate dslStoreFormat (#…
zheguang Mar 18, 2026
b2b240b
MINOR: Revise Topic Resolving Logic in OffsetCommit Request to Preven…
lucliu1108 Mar 18, 2026
0f0b418
KAFKA-20291 [2/3]: Implement assignment batching for share groups (#2…
squah-confluent Mar 18, 2026
0db9f32
MINOR: misc improvements in consumer test & events (#21797)
lianetm Mar 18, 2026
9be18d2
MINOR: Remove unused createNetworkClient overload in ClientUtils (#21…
majialoong Mar 18, 2026
a6eb6ae
KAFKA-20291 [3/3]: Implement assignment batching for streams groups (…
squah-confluent Mar 18, 2026
24ce8c2
KAFKA-20291 [4/N]: Fix consumer system tests (#21811)
squah-confluent Mar 18, 2026
2401cac
MINOR: add test cases for dumpLogSegments (#21538)
TaiJuWu Mar 18, 2026
a6fd96c
KAFKA-20317: Enable time-ordered header window store in DSL (#21780)
frankvicky Mar 18, 2026
51fa160
KAFKA-20333: Fix flaky consumer test (#21815)
lianetm Mar 18, 2026
599d55c
KAFKA-19710: Write legacy .checkpoint on close for downgrade support …
nicktelford Mar 19, 2026
4796f46
MINOR: Replace Collections factory methods with Java 11+ equivalents …
see-quick Mar 19, 2026
ba0738d
KAFKA-20251: Add group-level configs for assignment batching and offl…
squah-confluent Mar 19, 2026
a8e9135
MINOR: Bump trunk to 4.4.0-SNAPSHOT (#21821)
mimaison Mar 19, 2026
6ceb36f
KAFKA-19752 Move UnifiedLogTest to storage module (#21761)
TaiJuWu Mar 19, 2026
a69156a
MINOR: refactor warning message (#21661)
brandboat Mar 19, 2026
1ad463d
KAFKA-20318: Add time ordered session store support to the DSL (#21794)
bbejeck Mar 19, 2026
9a28bd2
KAFKA-19542: Consumer.close() does not remove all added sensors from …
kirktrue Mar 19, 2026
bba9952
KAFKA-20326: WindowStoreMaterializerTests needs to get updated (#21825)
frankvicky Mar 20, 2026
4ce6c04
KAFKA-20306: StreamsGroupCommand should display committed offsets for…
aliehsaeedii Mar 20, 2026
93918c5
MINOR: Update supported image in docker_scan.yml (#21833)
viktorsomogyi Mar 20, 2026
5a628e5
KAFKA-20321: Mark lost partitions before callbacks for Consumer and S…
lianetm Mar 20, 2026
010f81b
MINOR: Consumer tidying (#21832)
AndrewJSchofield Mar 20, 2026
826755a
MINOR: improve generic type safety for IQv2 in metered-store layer (#…
mjsax Mar 20, 2026
a83dda8
KAFKA-20249: Optimize raw value extraction in headers-aware deseriali…
zheguang Mar 20, 2026
f645314
MINOR: Use mutable maps in Fetch.forPartition to avoid potential Unsu…
joshua2519 Mar 21, 2026
9e8bb29
MINOR: Fix default server config in BenchmarkConfigUtils (#21839)
mimaison Mar 21, 2026
49bf46e
MINOR: clean typos and grammar across quickstart, connect, streams, a…
Zhang-Charlie Mar 23, 2026
994eae3
KAFKA-17840: Move ReplicationQuotaManager to server module (#21702)
mimaison Mar 23, 2026
70dfc42
KAFKA-19562 Replace hand-written AbortedTxn with generated protocol (…
mingyen066 Mar 23, 2026
a3fae9c
KAFKA-20348: Move ControllerRegistrationManager to server module (#21…
mimaison Mar 23, 2026
05185c1
KAFKA-20341 Clarify return semantics of assignment(), subscription(),…
DL1231 Mar 24, 2026
94b0f3e
KAFKA-20050: Add syntax highlighting for code blocks in getting start…
gomudayya Mar 24, 2026
b9882a0
KAFKA-20302: Receive buffers allocated from MemoryPool may not be rel…
edoardocomar Mar 25, 2026
153a458
KAFKA-19711: Add commit-rate metric to metered state stores Add commi…
bbejeck Mar 25, 2026
2f047be
KAFKA-20340 Remove GroupConfigManager dependency from SharePartition …
majialoong Mar 25, 2026
ba96e09
KAFKA-20211, KAFKA-20345: Fix group coordinator background metrics te…
squah-confluent Mar 26, 2026
a2c0c8b
MINOR: Enable dependabot for github-actions (#21872)
mimaison Mar 26, 2026
949f1a7
MINOR: Cleanups in Tools module (#21823)
sjhajharia Mar 26, 2026
3c42359
KAFKA-19752: Move UnifiedLogTest to storage module (#21844)
TaiJuWu Mar 26, 2026
ccd8330
KAFKA-20355: Invalid formatting of System Properties in website (#21874)
gomudayya Mar 26, 2026
4d3c658
KAFKA-19541; Allow configuration of kraft RPC max bytes (#21028)
josefk31 Mar 26, 2026
f93ffeb
KAFKA-20360 Upgrade ducktape from 0.13 to 0.14 and requests from 2.32…
muralibasani Mar 26, 2026
58b56c2
KAFKA-15853: [1/N] Move static methods, SocketServer and Log configs …
clolov Mar 27, 2026
de7e0eb
KAFKA-20267: Move LogCleanerParameterizedIntegrationTest to storage m…
see-quick Mar 27, 2026
69f7515
KAFKA-20106 [2/2]: Ensure reconciled assignment updated within poll K…
lianetm Mar 27, 2026
9d1c93b
MINOR: Various cleanups in raft module (#21883)
mimaison Mar 27, 2026
1b69c09
KAFKA-15630: Improve documentation of offset.lag.max (#21357)
k0b3rIT Mar 27, 2026
73cb15e
KAFKA-16600: Add unit test for idempotent PENDING_SHUTDOWN state tran…
kirktrue Mar 27, 2026
3fd16d0
KAFKA-20203: setFlushListener should pass record.headers() instead of…
chickenchickenlove Mar 27, 2026
5e509dc
KAFKA-20287 : Fix CF handle leaks (#21751)
muralibasani Mar 27, 2026
5a94cd6
KAFKA-20279: Refactor dslStoreFormat resolution into AbstractConfigur…
zooo-code Mar 27, 2026
b42acde
MINOR: Remove boilerplate code from header serializer test (#21837)
iit2009060 Mar 27, 2026
6ebc93c
MINOR: simplify window-byte-store-supplier (#21829)
mjsax Mar 27, 2026
6fe8415
KAFKA-9195: Use Randomized State Directory Names in Streams System Te…
aliehsaeedii Mar 27, 2026
20e681b
KAFKA-20205: Use utils in TimestampedToHeadersWindowStoreAdapter (#21…
FrankYang0529 Mar 28, 2026
eb111f6
KAFKA-20310: Persist previousProducerId and nextProducerId in transac…
haltandcatchwater Mar 28, 2026
29d0ec2
KAFKA-14487 Move LogManager to storage module (#21834)
mimaison Mar 29, 2026
e4f75df
MINOR: Use getAbsolutePath in LocalLog#exception (#21891)
FrankYang0529 Mar 29, 2026
5a2d79a
KAFKA-20359 Update docker image with fully qualified name (#21877)
muralibasani Mar 30, 2026
b4d1ca7
KAFKA-20347 Fix metric leak and JMX tag order in ShareCoordinatorMetr…
majialoong Mar 30, 2026
a1c155e
KAFKA-20297 Cleanup `org.apache.kafka.common.utils.CollectionUtils` (…
unknowntpo Mar 30, 2026
61299dd
KAFKA-20330: Ack handling improvement on broker restart (#21824)
AndrewJSchofield Mar 30, 2026
a26b2fd
KAFKA-18608: Add documentation for OAuth client assertion authentica…
prabhashkr Mar 30, 2026
5eff4ce
MINOR: Replace Collections factory methods with Java 11+ equivalents …
see-quick Mar 30, 2026
7ff975d
MINOR: Improve shutdown logging for share consumer system tests (#21895)
AndrewJSchofield Mar 30, 2026
b347f4b
KAFKA-20297 move ImplicitLinkedHashCollection, ImplicitLinkedHashMult…
cychiu8 Mar 30, 2026
a35d649
KAFKA-19851; Delete dynamic configs that were removed by Kafka (#21053)
0xffff-zhiyan Mar 30, 2026
67d1e22
KAFKA-20036 Handle LogCleaner segment overflow caused by compression …
m1a2st Mar 31, 2026
0fd8327
KAFKA-20315: Add tests for single in-flight poll events in Async and …
nileshkumar3 Mar 31, 2026
1697a7b
KAFKA-20316 Rewrite AddPartitionsTest with ClusterInstance (#21903)
DL1231 Mar 31, 2026
07c87a8
KAFKA-19752 Move parts of UnifiedLogTest to storage module (#21807)
m1a2st Mar 31, 2026
9812461
MINOR: Bump requests from 2.32.4 to 2.33.0 in /.github/scripts (#21875)
dependabot[bot] Mar 31, 2026
8956d38
MINOR: Sort reviewer candidates by contribution count (#21908)
mingyen066 Mar 31, 2026
feba1af
MINOR: Test Coverage for Segmented stores (#21860)
eduwercamacaro Mar 31, 2026
d84e19d
KAFKA-19712: Commit OFFSET_UNKOWN when closing state stores and the o…
eduwercamacaro Mar 31, 2026
f55073b
KAFKA-13499: Avoid restoring outdated records (#21901)
gabriellefu Mar 31, 2026
e2154fe
MINOR: Cleanups in LogManager (#21916)
mimaison Mar 31, 2026
b803e8b
KAFKA-20329: Test headers dsl.store.format further (2/N) (#21812)
aliehsaeedii Mar 31, 2026
4becf48
MINOR:Remove explicit flushes from RocksDBStores (#21871)
eduwercamacaro Mar 31, 2026
98e13b7
MINOR: Move TerseFailure to server-common (#21890)
m1a2st Apr 1, 2026
4e3e685
KAFKA-19752 Move parts of UnifiedLogTest to storage module (#21912)
m1a2st Apr 1, 2026
6918a56
KAFKA-20382: Send background error when updating assignment for callb…
lianetm Apr 1, 2026
7303c1e
KAFKA-20366: Add syntax highlighting across docs, excluding security …
gomudayya Apr 1, 2026
58d208f
KAFKA-20282: Add message to classic consumer startup guiding to next-…
lianetm Apr 1, 2026
9a8fd60
KAFKA-19932: adding handling of OOM and avoiding wrapped as timeout (…
iit2009060 Apr 1, 2026
67850b0
KAFKA-20136: Add javadoc to public APIs in org.apache.kafka.clients.c…
zooo-code Apr 1, 2026
8dd49bd
MINOR: deprecate internal config for NamedTopologies (#21921)
mjsax Apr 1, 2026
c04b2d9
KAFKA-20289: Fix DescribeConfigs to correctly resolve broker synonyms…
majialoong Apr 1, 2026
ad2e3e7
MINOR: Improve to skip output msg if manual assignment option used (#…
lianetm Apr 1, 2026
e9eb75f
KAFKA-20194: Ensure backward compatibility (#21904)
mjsax Apr 1, 2026
2713477
KAFKA-20173: Propagate headers into serde 6/N (#21850)
UladzislauBlok Apr 1, 2026
2759ea0
KAFKA-20369 Upgrade log4j2 to 2.25.4 (#21896)
muralibasani Apr 2, 2026
76b9dd2
MINOR: Fix typo in CoordinatorBackgroundThreadPoolExecutorTest (#21932)
squah-confluent Apr 2, 2026
82869a7
MINOR: Add todo to WindowSegmentWithHeaders (#21917)
FrankYang0529 Apr 2, 2026
ada5f22
KAFKA-20165: Handle retriable partition errors gracefully on OffsetFe…
lianetm Apr 2, 2026
ede01b8
KAFKA-20246: Detection and handling of misrouted connections [1/N] (#…
AndrewJSchofield Apr 2, 2026
1dacfd2
KAFKA-20194: Ensure backward compatibility for Windowed Store (#21922)
mjsax Apr 2, 2026
482694c
KAFKA-20173: Ensure Metered window-stores pass headers correctly (#21…
mjsax Apr 2, 2026
9426f93
KAFKA-20173: Propagate headers into serde 7/N (#21851)
UladzislauBlok Apr 3, 2026
6e989cc
MINOR: Fix headers in KTableMapValues and KTableTransformValues (#21835)
aliehsaeedii Apr 3, 2026
d840776
MINOR: Fix typo 'reqeust' to 'request' in NetworkPartitionMetadataCli…
xxxxxxjun Apr 3, 2026
c7d574e
KAFKA-20371: Add Iterable constructor to generated message collection…
FrankYang0529 Apr 3, 2026
55a7c2f
KAFKA-20344: Upgrade Jetty to 12.0.34 (trunk, 4.3, 4.2) (#21939)
mingyen066 Apr 3, 2026
f669814
KAFKA-20368 Use LinkedHashMap for deterministic metric tags order in …
cychiu8 Apr 3, 2026
02dca7a
KAFKA-20194: Ensure backward compatibility for Session Stores (#21934)
mjsax Apr 3, 2026
ff64569
KAFKA-20362 Auto-fill PR reviewers in PR description (#21928)
mingyen066 Apr 4, 2026
5d03ccf
KAFKA-15529 Fix race condition between isConsumed and position update…
majialoong Apr 4, 2026
c37b145
KAFKA-20357 Unify method signature for retrieving config names across…
DL1231 Apr 4, 2026
b0684bf
MINOR: Simplify inheritance for MeteredTimestampedWindowStoreWithHead…
UladzislauBlok Apr 5, 2026
0fa536b
KAFKA-20173: Propagate headers into serde 9/N (#21969)
UladzislauBlok Apr 5, 2026
1bf7d60
KAFKA-20173: Propagate headers into serde 8/N (#21967)
UladzislauBlok Apr 5, 2026
86328c2
KAFKA-19566 Deprecate ClientQuotaCallback#updateClusterMetadata (#21958)
brandboat Apr 6, 2026
f766ce5
KAFKA-20346 LogCleaner#cleaners should be thread-safe (#21847)
TaiJuWu Apr 6, 2026
7352188
KAFKA-13819: Add application.server to Streams assignor logs when set…
dubeyKartikay Apr 6, 2026
7b8549f
KAFKA-20194: Ensure backward compatibility for Sliding Windows (#21949)
mjsax Apr 6, 2026
69d5456
KAFKA-20405: Remove redundant `numClassicGroupsTimelineCounter` (#21978)
Rancho-7 Apr 7, 2026
c9cfaaf
KAFKA-20331, KAFKA-20240: Update upgrade.md for new KIP-1263 configs …
squah-confluent Apr 7, 2026
8ddda49
MINOR: Refactor config handling in ShareConsumerTest (#21947)
AndrewJSchofield Apr 7, 2026
9f9836c
KAFKA-20376: Update consumer rebalance docs (#21930)
lianetm Apr 7, 2026
8b6d31f
KAFKA-20297 move testIncrement and testIncrementUpperBoundary to Byte…
cychiu8 Apr 7, 2026
1ca017a
MINOR: Suppress the deprecation warning for `LOG_CLEANER_ENABLE_PROP`…
Rancho-7 Apr 7, 2026
c39e2af
KAFKA-20408 Remove ConsumerMetrics wrapper (#21974)
muralibasani Apr 7, 2026
20d975a
MINOR: Replace Map conversions with MetricsUtils.getTags for metric t…
TaiJuWu Apr 7, 2026
71c0882
KAFKA-20398: Fix memory leak by removing StreamsThreadMetricsDelegati…
sstremler Apr 7, 2026
794d2b6
KAFKA-20396: Fix RocksDBStore initialization error handling (#21946)
eduwercamacaro Apr 7, 2026
914051f
KAFKA-20194: Fix StoreBuilderWrapper for header-stores (#21950)
mjsax Apr 7, 2026
5a2dcf8
KAFKA-20173: Ensure Metered session-stores pass headers correctly (#2…
mjsax Apr 7, 2026
b954b35
KAFKA-20332: Fix to ensure app thread not collecting records for part…
lianetm Apr 8, 2026
40e9fcd
KAFKA-20119 Clarify that `Consumer#unsubscribe` does not trigger auto…
TaiJuWu Apr 8, 2026
112686c
MINOR: fix typo in KafkaAdminClient to align the meaning (#21988)
cychiu8 Apr 8, 2026
06bedcf
MINOR: Fix log statement formatting in KafkaAdminClient (#21990)
JiayaoS Apr 8, 2026
579a4e0
KAFKA-20219: Headers store with caching enabled should reject queries…
zheguang Apr 8, 2026
f4afec0
MINOR: Fix double negative typos in Javadoc and exception messages (#…
xxxxxxjun Apr 8, 2026
53629a2
KAFKA-20307: expose header-stores natively in IQv1 (#21992)
mjsax Apr 8, 2026
7e1c9db
KAFKA-20332 [2]: Handle wakeup on poll reconciliation check (#21997)
lianetm Apr 8, 2026
94fc9ad
KAFKA-20194: Add sesssion-header-store support to TDD (#21956)
mjsax Apr 8, 2026
06f6996
KAFKA-20415: Add share.version=2 for gated DLQ support. (#21994)
smjn Apr 8, 2026
433f06a
KAFKA-20329: Test `headers` dsl.store.format further (1/N) (#21806)
aliehsaeedii Apr 8, 2026
db3ece1
KAFKA-20264: fix overwrite in recursive parent-node matching (#21540)
appchemist Apr 8, 2026
1738c30
KAFKA-19863: Add documentation on how to implement a custom exception…
Rajarshi-Misra Apr 9, 2026
930f4ea
KAFKA-20194: Ensure backward compatibility for Windowed Store (#22004)
mjsax Apr 9, 2026
29254d6
KAFKA-20425: Optimize purgatory triggers when no data is available fo…
apoorvmittal10 Apr 9, 2026
6f4b47d
KAFKA-20089 clients - update javadocs -- while topic being created i…
muralibasani Apr 9, 2026
b908dd7
MINOR: Bump Jackson to 2.21.2 (#22008)
mimaison Apr 9, 2026
e4cd243
KAFKA-20337 Make all GroupConfig fields Optional and clean up validat…
dajac Apr 9, 2026
123ee9e
KAFKA-20393: Fix stickyNode using stale IP when broker address change…
kwondh5217 Apr 9, 2026
7aaf4de
KAFKA-20182 Upgrade gradle to 9.4.1 and spotless to 8.3.0 (#22012)
mingyen066 Apr 10, 2026
be6feb2
KAFKA-20354: Add missing Control Batch types in documentation (#21866)
fvaleri Apr 10, 2026
a0446e3
KAFKA-20363 Fix flaky testIdleTimeCallback in KafkaEventQueueTest (#2…
muralibasani Apr 10, 2026
c0e77d1
KAFKA-19914: Move AlterPartitionManager to server module (#21432)
joshua2519 Apr 10, 2026
30edb58
KAFKA-20323: Refactor deleteRecords stub to use partition-based match…
ChoMinGi Apr 10, 2026
ec17e5a
KAFKA-20378 Make container memory limit configurable (#21924)
see-quick Apr 10, 2026
d5d9868
KAFKA-20431: ConsumerGroupDescribe API does not return partitions bei…
dajac Apr 10, 2026
917caae
KAFKA-20417: Add KIP-1035 self-managed offset recovery integration te…
bbejeck Apr 10, 2026
6c0778a
KAFKA-20245: DLQ share group client REJECT ack records. [2/N] (#21793)
smjn Apr 10, 2026
2fd5946
MINOR: fix the Custom Exception Handler Implementation example. (#22022)
Nikita-Shupletsov Apr 11, 2026
1980f38
MINOR: Fix tool package in kafka-dump-log.bat (#22014)
mimaison Apr 11, 2026
a332a84
MINOR: Various code cleanups in server (#22021)
mimaison Apr 11, 2026
4b9eddc
KAFKA-20428: Fix unsubscribe failure with assignment updates (#22011)
lianetm Apr 11, 2026
eb6ce0e
MINOR: Change trivy action (#22024)
FrankYang0529 Apr 12, 2026
acd37fc
MINOR: Fix arguments in trivy scan (#22032)
FrankYang0529 Apr 12, 2026
e30f771
MINOR: Code cleanup in server module (#22026)
nileshkumar3 Apr 13, 2026
0d9fe51
KAFKA-20434: Consumer group does not recompute assignment when static…
dajac Apr 13, 2026
4acdac6
MINOR: Flaky test fixes (#21986)
AndrewJSchofield Apr 14, 2026
2327e51
KAFKA-20182 Remove removeUnusedImports and upgrade spotless to 8.4.0 …
mingyen066 Apr 14, 2026
40de3a6
MINOR: Bump pytest from 8.3.3 to 9.0.3 in /tests (#22042)
dependabot[bot] Apr 14, 2026
37b1a07
MINOR: Move KafkaMetricsGroupTest from Scala to Java (#22028)
m1a2st Apr 14, 2026
f8aa614
MINOR: Clarify components not considered for security issues (#22048)
mimaison Apr 14, 2026
6278e10
KAFKA-20252: Migrate clearYammerMetrics to TestUtils (#21679)
dubeyKartikay Apr 14, 2026
6c651fb
KAFKA-20329: Test headers dsl.store.format further (3/N) (#21820)
aliehsaeedii Apr 14, 2026
e2b5eb6
KAFKA-20329: Test headers dsl.store.format further (4/N) (#21827)
aliehsaeedii Apr 14, 2026
23bce3d
KAFKA-20446 KAFKA-20447: Fix CVE-2026-28390 and CVE-2026-22184 (#22053)
FrankYang0529 Apr 14, 2026
f9d502b
MINOR: Clarify group.consumer.assignors doc about default assignor ch…
dajac Apr 14, 2026
402cb65
Revert "KAFKA-13499: Avoid restoring outdated records (#21901)"
mjsax Apr 14, 2026
571cf30
MINOR: fix incorrect JavaDocs for headers-stores (#22043)
mjsax Apr 14, 2026
676712f
MINOR: Delegate version updates to Gradle in release script (#22031)
FrankYang0529 Apr 14, 2026
c4823da
KAFKA-20165 [2]: Integration tests to validate different OffsetFetch …
lianetm Apr 14, 2026
972f32d
KAFKA-19768 Update ci-complete to support branch 4.0 buildscan upload…
mingyen066 Apr 14, 2026
b4c9775
KAFKA-20297 move KafkaThread, ThreadUtils, ExponentialBackoff and Exp…
cychiu8 Apr 14, 2026
a39e714
KAFKA-20449: Downgrade "not updating high watermark" log from WARN to…
tkornai Apr 14, 2026
7f9f34a
KAFKA-19649: Document ListOffsets API v11 and follower fetch from tie…
abhijeetk88 Apr 14, 2026
45c4bdc
MINOR: Clarify docs for consumer leave options & rebalances (#22058)
lianetm Apr 14, 2026
5268721
KAFKA-20442: Update consumer group assignment epoch when last member …
dajac Apr 15, 2026
56be355
KAFKA-20442: Update share group assignment epoch when last member lea…
dajac Apr 15, 2026
e08a150
KAFKA-20442: Update streams group assignment epoch when last member l…
dajac Apr 15, 2026
2299a06
KAFKA-20297: Move AbstractIterator, CircularIterator, CloseableIterat…
m1a2st Apr 15, 2026
3852c50
MINOR: add comma before "and" in README (#22064)
cychiu8 Apr 15, 2026
07a6da3
MINOR: Split up ShareConsumerTest (#22017)
AndrewJSchofield Apr 15, 2026
f95a1f9
MINOR: increase test visibility to public in client integration tests…
Nikita-Shupletsov Apr 15, 2026
2791424
MINOR: Use maybeSetDslStoreFormatHeaders helper in more streams test …
m1a2st Apr 16, 2026
e7a5688
KAFKA-20297 move Crc32C Checksums and Sanitizer from utils to utils.i…
cychiu8 Apr 16, 2026
78fd214
MINOR: formatting fix on UpdateRaftVoterRequest class declaration (#2…
ppatierno Apr 16, 2026
4d0a85f
KAFKA-20417: Add KIP-1035 self-managed offset lifecycle integration t…
bbejeck Apr 17, 2026
963bc6a
KAFKA-20373: Bump maven artifact to 3.9.15 (#21911)
averemee-si Apr 17, 2026
0749b32
MINOR: Fix ListValueStore's restoration in headers mode (#22068)
aliehsaeedii Apr 17, 2026
46773ce
KAFKA-14588 Move ConfigCommand to tools module (#22013)
mimaison Apr 18, 2026
a09f7ed
MINOR: Bump setup-qemu-action, setup-buildx-action, and login-action …
FrankYang0529 Apr 18, 2026
4ae78a3
KAFKA-20297 Move ByteBufferUnmapper, BufferSupplier, ChunkedBytesStre…
m1a2st Apr 18, 2026
8ae35c0
MINOR: add DCL on get or create meter for performance improvement (#2…
YutaLin Apr 18, 2026
3b80855
MINOR: version updates for build and test dependencies (#21651)
dejan2609 Apr 20, 2026
f1f0d97
MINOR: remove un-necessary integration tags (#22095)
see-quick Apr 20, 2026
282eef9
MINOR: Add DCL to improve performance (#22098)
YutaLin Apr 20, 2026
75052bb
KAFKA-20422: Add DSL integration tests for header stores with explici…
aliehsaeedii Apr 21, 2026
b6d2503
KAFKA-20410: Add DLQ configuration parameters for Share Groups (KIP-1…
sjhajharia Apr 21, 2026
dc5f816
KAFKA-9914: Fix replication cycle detection (#22079)
tvainika Apr 21, 2026
4766b29
MINOR: Fix typos in UnifiedLog and LocalLog exception messages (#22107)
JiayaoS Apr 21, 2026
0a367aa
KAFKA-20297 Move OperatingSystem, Java, Exit... into internal (#22093)
m1a2st Apr 21, 2026
30cea6f
KAFKA-20456: Use lighter options for RocksDB offsets column family (#…
bbejeck Apr 21, 2026
63cc2f3
KAFKA-18149: Docs improvement for dynamic kraft quorum (#18350)
FrankYang0529 Apr 22, 2026
a3f1732
KAFKA-19193 Support rack-aware partitioning for Kafka producer (#19850)
ivanyu Apr 22, 2026
7b5d4ca
KAFKA-20362 Fall back to GitHub handle when reviewer email is unavail…
mingyen066 Apr 22, 2026
28402a3
MINOR: Move CreateTopicsRequestTest to clients-integration-tests and …
majialoong Apr 22, 2026
3e32d9a
MINOR: add missing javadoc to Metadata.java (#22106)
ivamly Apr 22, 2026
0d95e46
MINOR: Remove unnecessary min.assignment.interval.ms config from test…
squah-confluent Apr 23, 2026
e1cfea3
KAFKA-20505: Moving future completion out of locks for Share Partitio…
apoorvmittal10 Apr 23, 2026
c946802
KAFKA-20506 kafka-configs.sh can't delete the config from a offline b…
m1a2st Apr 23, 2026
1938d32
MINOR: Removed `setMetadataLogDirectory` unused method (#22128)
ppatierno Apr 23, 2026
150f09f
KAFKA-20519 Fix broken links in configuration option docs (#22127)
scholzj Apr 23, 2026
0dad6a7
KAFKA-20512 : Fix flakiness - same output topic is being used for all…
muralibasani Apr 24, 2026
76dcd5f
MINOR: Reduce duplicate parameter combinations in heavy Streams integ…
aliehsaeedii Apr 27, 2026
d0e0ec4
KAFKA-20312: Handle null leader during OffsetFetcher regroup safely (…
nileshkumar3 Apr 27, 2026
3c9b210
KAFKA-20456: Avoid persisting closed state if store is not open yet (…
eduwercamacaro Apr 27, 2026
eef6cab
KAFKA-20450 Allowlist based SafeObjectInputStream (#22056)
subbudvk Apr 28, 2026
ddec811
KAFKA-19937: Introduced Shared ReaperThread for Persister / NetworkPa…
rionmonster Apr 28, 2026
8afeecc
MINOR: Add streams group tests to GroupCoordinatorIntegrationTest (#2…
lucasbru Apr 28, 2026
44bafc6
KAFKA-20426 Using both group.id and assign() causes a busy loop in As…
brandboat Apr 28, 2026
90a4c93
MINOR: Fix testRackAwareAssignment flake (#22154)
squah-confluent Apr 28, 2026
c75e10d
KAFKA-20424 : clients: Update KafkaConsumerTest comments,tests with r…
muralibasani Apr 28, 2026
2dfdb70
MINOR: Fix typo in testConsumerGroupHeartbeatRebalance (#22119)
squah-confluent Apr 28, 2026
20c2450
MINOR: Reshape TxnOffsetCommitResponse.Builder (#22146)
dajac Apr 28, 2026
7340eef
MINOR: Reshape TxnOffsetCommitRequest.Builder (#22147)
dajac Apr 28, 2026
82d0c12
MINOR: Add topicId parameter to OffsetAndMetadata.fromRequest for Txn…
dajac Apr 28, 2026
d02723a
MINOR: Add shutdown broker and bootstrap controller for ConfigCommand…
m1a2st Apr 28, 2026
f47b9a4
KAFKA-20362 Resolve reviewer email via GitHub commit search API (#22135)
mingyen066 Apr 28, 2026
ebd7cd3
MINOR: Document transaction.timeout.ms behavior under EOS in Streams …
lucasbru Apr 28, 2026
a310bcb
MINOR: system-tests: fix KafkaServer#leader (#22168)
gaurav-narula Apr 28, 2026
e6653a9
MINOR: Fix Javadoc for ConfigCommand.java (#22101)
Atharv3221 Apr 28, 2026
07e0cae
KAFKA-18652: Add `num.warmup.replicas` config (#21801)
mjsax Apr 28, 2026
faa8b48
KAFKA-20533: Correcting error response for topic deletion during shar…
apoorvmittal10 Apr 28, 2026
8a1c198
KAFKA-20366: Add syntax highlighting in security docs (#21965)
gomudayya Apr 29, 2026
cb7e3ab
KAFKA-20410: Register topic DLQ configs in LogConfig. [2/N] (#22167)
smjn Apr 29, 2026
5645518
KAFKA-20542 : Fix aggregatedJavadocs build failure (#22172)
muralibasani Apr 29, 2026
4bb8f0f
MINOR: Fix duplicate args in KStreamSessionWindowAggregateProcessorTe…
aliehsaeedii Apr 30, 2026
474798a
KAFKA-20072: Don't generate IDs with hyphens (#21313)
wernerdv Apr 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
44 changes: 37 additions & 7 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,44 @@
# specific language governing permissions and limitations
# under the License.

# Enable the next-gen .asf.yaml parser
meta:
nextgen: true

notifications:
commits: commits@kafka.apache.org
issues: jira@kafka.apache.org
commits: commits@kafka.apache.org
issues: jira@kafka.apache.org
pullrequests: jira@kafka.apache.org
jira_options: link label

jenkins:
github_whitelist:
- ConcurrencyPractitioner
- ableegoldman
- cadonna
github:
description: "Apache Kafka - A distributed event streaming platform"
homepage: https://kafka.apache.org/
labels:
- java
- scala
- kafka
- streaming

# This list allows you to triage pull requests and trigger workflow runs on GitHub Actions. It can have a maximum of 10 collaborators.
# Read more here: https://github.com/apache/infrastructure-asfyaml
collaborators:
- brandboat
- chirag-wadhwa5
- DL1231
- m1a2st
- mingyen066
- Rancho-7
- sjhajharia
- smjn
- TaiJuWu
- Yunyung
enabled_merge_buttons:
squash: true
squash_commit_message: PR_TITLE_AND_DESC
merge: false
rebase: false

# Disable legacy branch protections. We have manual rulesets which protect trunk
# and our release branches. See INFRA-26603
protected_branches: ~
55 changes: 55 additions & 0 deletions .github/actions/gh-api-approve-run/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
---
name: "Approve Workflow Run"
description: "Approve a Workflow run that has been submitted by a non-committer"
inputs:
gh-token:
description: "The GitHub token for use with the CLI"
required: true
repository:
description: "The GitHub repository"
required: true
default: "apache/kafka"
run_id:
description: "The Workflow Run ID"
required: true
pr_number:
description: "The Pull Request number"
required: true
commit_sha:
description: "The SHA of the commit the run is for"
required: true

runs:
using: "composite"
steps:
- name: Approve Workflow Run
shell: bash
env:
GH_TOKEN: ${{ inputs.gh-token }}
REPO: ${{ inputs.repository }}
RUN_ID: ${{ inputs.run_id }}
PR_NUMBER: ${{ inputs.pr_number }}
COMMIT_SHA: ${{ inputs.commit_sha }}
run: |
echo "Approving workflow run $RUN_ID for PR $PR_NUMBER at SHA $COMMIT_SHA";
gh api --method POST \
-H 'Accept: application/vnd.github+json' \
-H 'X-GitHub-Api-Version: 2022-11-28' \
/repos/$REPO/actions/runs/$RUN_ID/approve
67 changes: 67 additions & 0 deletions .github/actions/gh-api-update-status/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
---
name: "Update Commit Status Check"
description: "Update the status of a commit check using the GH CLI"
inputs:
# Composite actions do not support typed parameters. Everything is treated as a string
# See: https://github.com/actions/runner/issues/2238
gh-token:
description: "The GitHub token for use with the CLI"
required: true
repository:
description: "The GitHub repository"
required: true
default: "apache/kafka"
commit_sha:
description: "The SHA of the commit we are updating"
required: true
url:
description: "The URL of the status check"
required: false
default: ""
description:
description: "The text to display next to the check"
default: ""
required: false
context:
description: "The name of the status check"
required: true
state:
description: "The state of the check. Can be one of: error, failure, pending, success"
required: true

runs:
using: "composite"
steps:
- name: Update Check
shell: bash
env:
GH_TOKEN: ${{ inputs.gh-token }}
REPO: ${{ inputs.repository }}
COMMIT_SHA: ${{ inputs.commit_sha }}
STATE: ${{ inputs.state }}
URL: ${{ inputs.url }}
DESCRIPTION: ${{ inputs.description }}
CONTEXT: ${{ inputs.context }}
run: |
gh api --method POST -H "Accept: application/vnd.github+json" -H "X-GitHub-Api-Version: 2022-11-28" \
/repos/$REPO/statuses/$COMMIT_SHA \
-f "state=$STATE" -f "target_url=$URL" \
-f "description=$DESCRIPTION" \
-f "context=$CONTEXT"
115 changes: 115 additions & 0 deletions .github/actions/run-gradle/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
---
name: "Run Tests with Gradle"
description: "Run specified Gradle test tasks with configuration for timeout and test catalog."
inputs:
# Composite actions do not support typed parameters. Everything is treated as a string
# See: https://github.com/actions/runner/issues/2238
test-task:
description: "The Gradle task name to run."
required: true
test-xml-output:
description: "Output directory for JUnit XML results"
required: true
timeout-minutes:
description: "The timeout for the tests, in minutes."
required: true
test-catalog-path:
description: "The file path of the test catalog file."
required: true
build-scan-artifact-name:
description: "The name to use for archiving the build scan."
required: true
test-retries:
description: "The number of retries for a given test should we allow"
required: true
default: "0"
test-repeat:
description: "The number of times to repeat the integration tests"
required: true
default: "1"
test-verbose:
description: "Enable additional logging by the JUnit infrastructure"
required: true
default: "false"
run-new-tests:
description: "Run tests not present in the given test catalog"
required: true
default: "false"
run-flaky-tests:
description: "Run tests marked as flaky"
required: true
default: "false"

outputs:
gradle-exitcode:
description: "The result of the Gradle test task."
value: ${{ steps.run-tests.outputs.exitcode }}

runs:
using: "composite"
steps:
- name: Run JUnit Tests (${{ inputs.test-task }})
# Gradle flags
# --build-cache: Let Gradle restore the build cache
# --no-scan: Don't attempt to publish the scan yet. We want to archive it first.
# --continue: Keep running even if a test fails
# -PcommitId Prevent the Git SHA being written into the jar files (which breaks caching)
shell: bash
id: run-tests
env:
TIMEOUT_MINUTES: ${{ inputs.timeout-minutes}}
TEST_CATALOG: ${{ inputs.test-catalog-path }}
TEST_TASK: ${{ inputs.test-task }}
TEST_RETRIES: ${{ inputs.test-retries }}
TEST_REPEAT: ${{ inputs.test-repeat }}
RUN_NEW_TESTS: ${{ inputs.run-new-tests }}
RUN_FLAKY_TESTS: ${{ inputs.run-flaky-tests }}
TEST_XML_OUTPUT_DIR: ${{ inputs.test-xml-output }}
TEST_VERBOSE: ${{ inputs.test-verbose }}
# This build step is invoked by build.yml to run junit tests only,
# Spotbugs is being run by that workflow via the "check" task and does not need to also be run here,
# since that is redundant.
run: |
set +e
./.github/scripts/thread-dump.sh &
timeout ${TIMEOUT_MINUTES}m ./gradlew --build-cache --continue --no-scan \
-PtestLoggingEvents=started,passed,skipped,failed \
-PmaxParallelForks=4 \
-PmaxTestRetries=$TEST_RETRIES -PmaxTestRetryFailures=10 \
-Pkafka.test.catalog.file=$TEST_CATALOG \
-Pkafka.test.run.new=$RUN_NEW_TESTS \
-Pkafka.test.run.flaky=$RUN_FLAKY_TESTS \
-Pkafka.test.xml.output.dir=$TEST_XML_OUTPUT_DIR \
-Pkafka.cluster.test.repeat=$TEST_REPEAT \
-Pkafka.test.verbose=$TEST_VERBOSE \
-PcommitId=xxxxxxxxxxxxxxxx \
-x spotbugsMain \
-x spotbugsTest \
$TEST_TASK
exitcode="$?"
echo "exitcode=$exitcode" >> $GITHUB_OUTPUT
- name: Archive build scan (${{ inputs.test-task }})
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ inputs.build-scan-artifact-name }}
path: ~/.gradle/build-scan-data
compression-level: 9
if-no-files-found: ignore
59 changes: 59 additions & 0 deletions .github/actions/setup-gradle/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
---
name: "Gradle Setup"
description: "Setup Java and Gradle"
inputs:
# Composite actions do not support typed parameters. Everything is treated as a string
# See: https://github.com/actions/runner/issues/2238
java-version:
description: "Java version to use"
default: "17"
gradle-cache-read-only:
description: "Should the Gradle cache be read-only?"
default: "true"
gradle-cache-write-only:
description: "Should the Gradle cache be write-only?"
default: "false"
develocity-access-key:
description: "Optional access key for uploading build scans to Develocity"
default: ""
runs:
using: "composite"
steps:
- name: Setup Java
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: ${{ inputs.java-version }}
- name: Setup Gradle
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
env:
GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true
with:
gradle-version: wrapper
develocity-access-key: ${{ inputs.develocity-access-key }}
develocity-token-expiry: 4
cache-read-only: ${{ inputs.gradle-cache-read-only }}
cache-write-only: ${{ inputs.gradle-cache-write-only }}
# Cache downloaded JDKs in addition to the default directories.
gradle-home-cache-includes: |
caches
notifications
jdks
cache-cleanup: on-success
30 changes: 30 additions & 0 deletions .github/actions/setup-python/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
---
name: "Python Setup"
description: "Setup Python and install dependencies"
runs:
using: "composite"
steps:
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: 3.12
- name: Pip install
shell: bash
run: pip install -r .github/scripts/requirements.txt
Loading