Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
491 commits
Select commit Hold shift + click to select a range
33af0cb
KAFKA-1660; Add API to the producer to support close with a timeout; …
becketqin May 12, 2015
49026f1
KAFKA-1334; Add the heartbeat logic to consumer coordinator; reviewed…
onurkaraman May 14, 2015
41ba262
kafka-2169; Upgrade to zkclient-0.5; patched by Parth Brahmbhatt; rev…
May 18, 2015
0ad6466
KAFKA-2160; remove watcher list if empty in purgatory; remove join-gr…
guozhangwang May 20, 2015
2941958
KAFKA-2196; Remove identical topic constraint in round-robin assignor…
onurkaraman May 20, 2015
bb133c6
KAFKA-1374; Log cleaner should be able to handle compressed messages;…
jjkoshy May 20, 2015
b4f2391
KAFKA-2190; Flush mirror maker before commiting offsets; abort the
becketqin May 21, 2015
23ff851
KAFKA-2186; Follow-up to KAFKA-1650 - add selective offset commit to
becketqin May 21, 2015
467736c
Revert "KAFKA-2186; Follow-up to KAFKA-1650 - add selective offset co…
jjkoshy May 21, 2015
43b92f8
KAFKA-1737; Enforce ZKSerializer while creating ZkClient; reviewed by…
vivekpm May 24, 2015
c60f325
kafka-2189; Snappy compression of message batches less efficient in 0…
ijuma May 28, 2015
05e8a78
KAFKA-2186; Follow-up to KAFKA-1650 - add selective offset commit to …
becketqin May 28, 2015
d6c45c7
KAFKA-2091; Expose a partitioner interface in the new producer
May 28, 2015
3836c57
kafka-2185; Update to Gradle 2.4; patched by Ismael Juma; reviewed by…
ijuma May 29, 2015
3d8494b
KAFKA-2199 Make signing artifacts optional and disabled by
ewencp May 29, 2015
9e894aa
kafka-2226; NullPointerException in TestPurgatoryPerformance; patched…
ymatsuda Jun 1, 2015
48edeca
KAFKA-2161; Fix a few copyrights
ewencp Jun 3, 2015
d22987f
KAFKA-2208; add consumer side error handling upon coordinator failure…
guozhangwang Jun 3, 2015
78ba492
kafka-1928; Move kafka.network over to using the network classes in o…
gwenshap Jun 4, 2015
ca6d01b
KAFKA-2246; UnknownTopicOrPartitionException should be an instance of…
becketqin Jun 5, 2015
9f80665
KAFKA-2253; fix deadlock between removeWatchersLock and watcher opera…
guozhangwang Jun 10, 2015
ab76dbd
kafka-2005; Generate html report for system tests; patched by Ashish …
Jun 11, 2015
017c00c
kafka-2266; Client Selector can drop idle connections without notifyi…
Jun 12, 2015
d31a2c2
kafka-2232; make MockProducer generic; patched by Alexander Pakulov; …
apakulov Jun 12, 2015
719f2bd
kafka-2164; ReplicaFetcherThread: suspicious log message on reset off…
resetius Jun 13, 2015
20a31a2
kafka-2101; Metric metadata-age is reset on a failed update; patched …
Tim-Brooks Jun 16, 2015
54e54f0
kafka-2195; Add versionId to AbstractRequest.getErrorResponse and Abs…
abiletskyi Jun 16, 2015
395716e
kafka-2270; incorrect package name in unit tests; patched by Proneet …
proneetv Jun 16, 2015
28ecea4
kafka-2272; listeners endpoint parsing fails if the hostname has capi…
Jun 16, 2015
7009f1d
kafka-2264; SESSION_TIMEOUT_MS_CONFIG in ConsumerConfig should be int…
omkreddy Jun 16, 2015
4785056
kafka-2252; Socket connection closing is logged, but not correspondin…
gwenshap Jun 16, 2015
9650e12
kafka-2262; LogSegmentSize validation should be consistent; patched b…
omkreddy Jun 16, 2015
ba86f0a
trivial fix for stylecheck error on Jenkins
junrao Jun 16, 2015
5c90407
kafka-2249; KafkaConfig does not preserve original Properties; patche…
gwenshap Jun 18, 2015
d9c0ad6
kafka-2265; creating a topic with large number of partitions takes a …
omkreddy Jun 18, 2015
5c2ca30
kafka-2234; Partition reassignment of a nonexistent topic prevents fu…
omkreddy Jun 18, 2015
1c93bb1
trivial change to fix unit test failure introduced in kafka-2234
junrao Jun 19, 2015
19c98cb
kafka-1758; corrupt recovery file prevents startup; patched by Maniku…
omkreddy Jun 19, 2015
ca75825
kafka-1646; Improve consumer read performance for Windows; patched by…
Jun 19, 2015
16ecf98
kafka-2012; Broker should automatically handle corrupt index files; …
omkreddy Jun 19, 2015
cf28f89
kafka-2290; OffsetIndex should open RandomAccessFile consistently; pa…
Jun 22, 2015
dc54055
kafka-2235; LogCleaner offset map overflow; patched by Ivan Simoneko;…
isimonenko Jun 22, 2015
1eac3ce
KAFKA-2245; Add response tests for consumer coordinator; reviewed by …
onurkaraman Jun 22, 2015
2270a75
KAFKA-2293; Fix incorrect format specification in Partition.scala; re…
auradkar Jun 22, 2015
b6d326b
kafka-2168; New consumer poll() can block other calls like position()…
Jun 23, 2015
6d4991e
KAFKA-2294; javadoc compile error due to illegal <p/> , build failing…
jmax01 Jun 23, 2015
9ff5b27
KAFKA-2281: avoid unnecessary value copying if logAsString is false; …
xiaotao183 Jun 30, 2015
14e0ce0
KAFKA-2168: minor follow-up patch; reviewed by Guozhang Wang
hachikuji Jul 1, 2015
3f8480c
KAFKA-1740: merge offset manager into consumer coordinator; reviewed …
guozhangwang Jul 2, 2015
fd612a2
kafka-2248; Use Apache Rat to enforce copyright headers; patched by E…
ewencp Jul 6, 2015
2d96da0
kafka-2132; Move Log4J appender to a separate module; patched by Ashi…
Jul 6, 2015
271b18d
KAFKA-2314: proper MirrorMaker's message handler help message; review…
lazyval Jul 7, 2015
f77dc38
kafka-1367; Broker topic metadata not kept in sync with ZooKeeper; pa…
Jul 7, 2015
ad485e1
KAFKA-2304 Supported enabling JMX in Kafka Vagrantfile patch by Stevo…
joestein Jul 7, 2015
a99f70f
KAFKA-2306: add another metric for buffer exhausted; reviewed by Guoz…
lindong28 Jul 7, 2015
826276d
KAFKA-2317: follow-up of KAFKA1367; reviewed by Guozhang Wang
Jul 7, 2015
f13dd80
KAFKA-2313: javadoc fix for KafkaConsumer deserialization; reviewed b…
onurkaraman Jul 7, 2015
23d72bc
KAFKA-2298; Client Selector can drop connections on InvalidReceiveExc…
lindong28 Jul 8, 2015
4204f4a
Trivial commit - explicitly exclude build/rat-report.xml from rat check
jjkoshy Jul 8, 2015
67b6b9a
KAFKA-2308: make MemoryRecords idempotent; reviewed by Guozhang Wang
gwenshap Jul 8, 2015
7df39e0
KAFKA-2316: Drop java 1.6 support; patched by Sriharsha Chintalapani …
Jul 8, 2015
ee88dbb
KAFKA-2327; broker doesn't start if config defines advertised.host bu…
Jul 9, 2015
9ca61d1
KAFKA-1740 follow-up: add state checking in handling heartbeat reques…
hachikuji Jul 10, 2015
4aba4bc
Trivial commit - explicitly exclude build/** from rat check
jjkoshy Jul 10, 2015
69b451e
KAFKA-2312: use atomic long for thread id reference; reviewed by Ewen…
Tim-Brooks Jul 13, 2015
bdbb967
kafka-972; MetadataRequest returns stale list of brokers; patched by …
Jul 14, 2015
a7e0ac3
KAFKA-2198: kafka-topics.sh exits with 0 status on failures; patched …
omkreddy Jul 14, 2015
99c0686
KAFKA-2123: add callback in commit api and use a delayed queue for as…
hachikuji Jul 15, 2015
4fcb7ac
KAFKA-2335; fix comment about thread safety
hachikuji Jul 15, 2015
83d17e5
[MINOR] fix new consumer heartbeat reschedule bug
hachikuji Jul 16, 2015
fa03a7c
KAFKA-2032: validate consumer's partition-assignment config; reviewed…
Jul 16, 2015
458ebeb
kafka-2323; Simplify ScalaTest dependency versions; patched by Ismael…
ijuma Jul 16, 2015
8fa24a6
kafka-2241; AbstractFetcherThread.shutdown() should not block on Read…
lindong28 Jul 16, 2015
1e0ed7a
kafka-2174; Wrong TopicMetadata deserialization; patched by Alexey Oz…
resetius Jul 17, 2015
5033b96
kafka-2271; transient unit test failure in KafkaConfigConfigDefTest.t…
Jul 17, 2015
31f6217
kafka-2103; kafka.producer.AsyncProducerTest failure; patched by Ewen…
ewencp Jul 17, 2015
15cba9f
KAFKA-2324; Update to Scala 2.11.7
ijuma Jul 17, 2015
a5b1188
KAFKA-2345; Attempt to delete a topic already marked for deletion th…
Jul 17, 2015
8463627
Adding a file missed while committing KAFKA-2345
gwenshap Jul 17, 2015
1d2bd62
KAFKA-2337; Verify that metric names will not collide when creating …
granthenke Jul 20, 2015
2040890
KAFKA-2328; merge-kafka-pr.py script should not leave user in a detac…
ijuma Jul 20, 2015
fd3b4cc
KAFKA-2342; KafkaConsumer rebalance with in-flight fetch can cause in…
hachikuji Jul 22, 2015
18adec7
KAFKA-2344; kafka-merge-pr improvements
ijuma Jul 23, 2015
66c8647
KAFKA-2355; Add an unit test to validate the deletion of a partition…
eribeiro Jul 23, 2015
520a813
KAFKA-2353; SocketServer catch exception and close connection properl…
guozhangwang Jul 24, 2015
fd3a3cd
KAFKA-2348; Drop support for Scala 2.9
ijuma Jul 24, 2015
4389a11
KAFKA-2321; Introduce CONTRIBUTING.md
ijuma Jul 27, 2015
57386de
KAFKA-2301: Warn ConsumerOffsetChecker as deprecated; reviewed by Ewe…
Jul 28, 2015
269c240
KAFKA-2381: Fix concurrent modification on assigned partition while l…
Jul 28, 2015
3df46bf
KAFKA-2347: Add setConsumerRebalanceListener method to ZookeeperConsu…
Jul 28, 2015
594b963
KAFKA-2275: Add ListTopics() API to the Java consumer; reviewed by Ja…
Jul 28, 2015
f4101ab
KAFKA-2089: Fix transient MetadataTest failure; reviewed by Jiangjie …
rajinisivaram Jul 28, 2015
e43c9af
KAFKA-2276; KIP-25 initial patch
Jul 29, 2015
b7bd297
KAFKA-2100; Client Error doesn't preserve or display original server …
dajac Jul 29, 2015
1162cc1
MINOR: Fixed ConsumerRecord constructor javadoc
sslavic Jul 30, 2015
be82a2a
KAFKA-2350; KafkaConsumer pause/resume API
hachikuji Jul 30, 2015
23a36eb
KAFKA-2026: fix logging of unsued options always showing null; review…
omkreddy Jul 30, 2015
b152c06
KAFKA-2384: Override commit message title in kafka-merge-pr.py
ijuma Aug 3, 2015
cd3dc7a
MINOR: Added to .gitignore Kafka server logs directory
sslavic Aug 3, 2015
3c09630
KAFKA-2386; increase timeouts for transient test failure in ConsumerC…
hachikuji Aug 3, 2015
4b400af
KAFKA-2055; Fix transient ConsumerBounceTest.testSeekAndCommitWithBro…
lvfangmin Aug 4, 2015
1a0179f
HOTFIX; Encode/decode to utf-8 for commit title IO in kafka-merge-pr.…
ijuma Aug 4, 2015
a56a790
kafka-2205; Generalize TopicConfigManager to handle multiple entity c…
auradkar Aug 4, 2015
7a666f7
KAFKA-2405; Don't kill the JVM on session establishment failure
jaikiran Aug 5, 2015
9cefb2a
KAFKA-2288; Follow-up to KAFKA-2249 - reduce logging and testing; Rev…
gwenshap Aug 5, 2015
fc40016
KAFKA-2407: Only create log directory when it will be used
granthenke Aug 5, 2015
85d8218
KAFKA-2401: Fix transient failure in ProducerSendTest.testCloseWithZe…
becketqin Aug 5, 2015
27d499f
KAFKA-2393: Correctly Handle InvalidTopicException in KafkaApis.getTo…
granthenke Aug 5, 2015
95c626d
MINOR: ConsumerRecords are organized per topic partition
sslavic Aug 5, 2015
4b798f0
MINOR: auto.offset.reset docs not in sync with validation
sslavic Aug 5, 2015
907ee7b
MINOR: Fixed javadoc for committed return value
sslavic Aug 5, 2015
9b1c52d
MINOR: Fix typo in ReplicaVerificationTool output
ottomata Aug 5, 2015
006b45c
KAFKA-2400: Expose heartbeat interval in KafkaConsumer configuration
hachikuji Aug 6, 2015
f6373e4
KAFKA-2340: Improve KafkaConsumer Fetcher test coverage
hachikuji Aug 6, 2015
63b820c
KAFKA-2413; New consumer's subscribe(Topic...) api fails if called mo…
onurkaraman Aug 7, 2015
47c99f3
Minor: Fixes to Selector's javadoc
ijuma Aug 7, 2015
a36befd
MINOR: documentation fix in StringDecoder
davecromberge Aug 7, 2015
68ad80f
KAFKA-2415; Fix transient failure in LogRecoveryTest
becketqin Aug 7, 2015
1ed88f0
KAFKA-1997: Follow-up patch, hardcode key/value serializer in mirror …
becketqin Aug 8, 2015
1fdb758
KAFKA-2202: fix consumerTimeoutMs computation on ConsumerPerformance;…
omkreddy Aug 11, 2015
96534a7
KAFKA-2336: Changing offsets.topic.num.partitions after the offset to…
granthenke Aug 11, 2015
be633a7
KAFKA-2408: ConsoleConsumerService direct log output to file
Aug 11, 2015
a62d630
KAFKA-2300: Error in controller log when broker tries to rejoin cluster
fpj Aug 12, 2015
3902dc0
MINOR: Fix hard coded strings in ProduceResponse
granthenke Aug 12, 2015
04b0d87
KAFKA-2429: Add annotations to mark classes as stable/unstable
ewencp Aug 12, 2015
78685dc
KAFKA-1782: fix JUnit3 Misuse
apakulov Aug 13, 2015
e2ebae8
KAFKA-2430; Listing of PR commits in commit message should be optional
ijuma Aug 13, 2015
2c55bd8
KAFKA-2406: Throttle ISR propagation
becketqin Aug 13, 2015
c8e62c9
MINOR: expose vagrant base box as variable
Aug 13, 2015
f6acfb0
KAFKA-2366; Initial patch for Copycat
ewencp Aug 14, 2015
bbb7d97
KAFKA-2084; Add per-client-id byte-rate metrics and quota manager; re…
auradkar Aug 15, 2015
63b8965
KAFKA-1782: Follow up - add missing @Test annotations.
ewencp Aug 15, 2015
786867c
KAFKA-2438; add maxParallelForks to build.gradle to speedup tests.
Aug 17, 2015
503bd36
KAFKA-2436; log.retention.hours should be honored by LogManager
lindong28 Aug 18, 2015
9e2c683
kafka-1690; Add SSL support to Kafka Broker, Producer and Consumer; p…
Aug 19, 2015
47b7a68
KAFKA-2084; trivial follow-up (remove JUnit3Suite dependency)
jjkoshy Aug 19, 2015
0b04f9f
KAFKA-2246; Fix incorrect config ZK path.
auradkar Aug 20, 2015
e4fc456
KAFKA-2330: Vagrantfile sets global configs instead of per-provider o…
ewencp Aug 20, 2015
767a8a7
KAFKA-2015: Enable ConsoleConsumer to use new consumer
benstopford Aug 20, 2015
9a6b573
KAFKA-1901; Move Kafka version to be generated in code by build (inst…
omkreddy Aug 20, 2015
3285a9c
KAFKA-2457; StackOverflowError during builds
ijuma Aug 21, 2015
6acd377
KAFKA-2457; Fix how the argument is passed to `compileScala`
ijuma Aug 21, 2015
1d2ae89
KAFKA-2439; Add MirrorMaker service class for system tests
Aug 23, 2015
5d453ba
KAFKA-2351; Catch all exceptions in socket server's acceptor; reviewe…
MayureshGharat Aug 26, 2015
436b7dd
KAFKA-2136; Add throttle time (on quota violation) in fetch/produce
auradkar Aug 26, 2015
8b538d6
KAFKA-1683; persisting session information in Requests
gwenshap Aug 26, 2015
03f850f
KAFKA-2072: Add StopReplica request/response to o.a.k.common.requests
dajac Aug 26, 2015
35eaef7
KAFKA-2388: refactor KafkaConsumer subscribe API
hachikuji Aug 27, 2015
8c88d19
KAFKA-2467: Fix changes to behavior in ConsoleConsumer: properly pars…
ewencp Aug 27, 2015
492bfdf
KAFKA-2367; Add Copycat runtime data API.
ewencp Aug 27, 2015
2fa8c74
KAFKA-2377: Add basic system test for copycat using source and sink f…
ewencp Aug 27, 2015
8956004
KAFKA-2468: SIGINT during Kafka server startup can leave server deadl…
Aug 28, 2015
9c936b1
MINOR: kafkatest add manifest
Aug 28, 2015
3803e5c
KAFKA-2475: Make Copycat only have a Converter class instead of Seria…
ewencp Aug 31, 2015
8354959
KAFKA-2485; Allow producer performance to take properties from a file…
lindong28 Aug 31, 2015
13c432f
KAFKA-2486; fix performance regression in new consumer
hachikuji Aug 31, 2015
e582447
KAFKA-2332; Add quota metrics to old producer and consumer
lindong28 Sep 1, 2015
ff189fa
TRIVIAL: Replace "it's" with "its" where appropriate
reftel Sep 2, 2015
17f85fc
KAFKA-2492; Upgraded zkclient dependency from 0.5 to 0.6
sslavic Sep 2, 2015
d0adf6a
TRIVIAL: Updated testing readme
Sep 2, 2015
d02ca36
KAFKA-2411; remove usage of blocking channel
ijuma Sep 2, 2015
689d170
kafka-2210; KafkaAuthorizer: Add all public entities, config changes …
Sep 3, 2015
6f398d6
KAFKA-2437; Fix ZookeeperLeaderElector to handle node deletion correc…
becketqin Sep 3, 2015
9223155
KAFKA-2437; Trivial follow-up
jjkoshy Sep 3, 2015
24da542
KAFKA-2461; request logger no longer logs extra information in debug …
Sep 3, 2015
4ffbfef
MINOR: Fix trace/debug logs in RequestChannel
Sep 3, 2015
f257312
KAFKA-2519; NetworkClient.close should remove node from inFlightRequests
ijuma Sep 4, 2015
9262975
KAFKA-2453: Enable new consumer in EndToEndLatency
benstopford Sep 8, 2015
f890298
TRIVIAL: change to API doc for seekToEnd() to clarify lazy evaluation
benstopford Sep 8, 2015
b8b1bca
KAFKA-2489: add benchmark for new consumer
Sep 9, 2015
fd12396
KAFKA-1893: Allow regex subscriptions in the new consumer
Sep 10, 2015
845514d
KAFKA-2389: remove commit type from new consumer.
becketqin Sep 11, 2015
6c1957d
KAFKA-2278: JmxTool should support querying all objects when object n…
lindong28 Sep 11, 2015
65bf3af
KAFKA-2440; Use `NetworkClient` instead of `SimpleConsumer` to fetch …
ijuma Sep 11, 2015
b7d4043
KAFKA-2538: Fixing a compilation error in trunk.
Parth-Brahmbhatt Sep 13, 2015
d88b5bd
KAFKA-2504: Stop logging WARN when client disconnects
jholoman Sep 14, 2015
7199c87
MINOR: Added scripts to automate Vagrant setup for system tests
Sep 14, 2015
b658e25
KAFKA-2549: Fixing checkstyle failure resulting due to unused imports…
Parth-Brahmbhatt Sep 14, 2015
da39931
KAFKA-2120; Add a request timeout to NetworkClient (KIP-19); reviewed…
MayureshGharat Sep 16, 2015
9dbeb71
Revert "KAFKA-2120; Add a request timeout to NetworkClient (KIP-19); …
jjkoshy Sep 17, 2015
9ae9868
KAFKA-2300: follow-up to clear the controller state upon resignment
fpj Sep 21, 2015
e18f686
KAFKA-2533: Create a member Metadata.Listener inside KafkaConsumer
Sep 21, 2015
6ec88f7
KAFKA-2532; Remove Consumer reference from rebalance callback
hachikuji Sep 21, 2015
0990b6b
KAFKA-2211: Adding simpleAclAuthorizer implementation and test cases.
Parth-Brahmbhatt Sep 22, 2015
4833d8a
KAFKA-2558: ServerShutdownTest is failing intermittently
fpj Sep 22, 2015
2837fa5
KAFKA-2557: separate REBALANCE_IN_PROGRESS and ILLEGAL_GENERATION err…
onurkaraman Sep 22, 2015
d1dd1e9
KAFKA-2403; Add support for commit metadata in KafkaConsumer
hachikuji Sep 23, 2015
b9ceac3
KAFKA-2390; OffsetOutOfRangeException should contain the Offset and P…
lindong28 Sep 23, 2015
54dd6e3
KAFKA-2576; ConsumerPerformance hangs when SSL enabled for Multi-Part…
ijuma Sep 24, 2015
1daf6ac
KAFKA-1387: Kafka getting stuck creating ephemeral node it has alread…
fpj Sep 24, 2015
8943b08
KAFKA-2548; kafka-merge-pr tool fails to update JIRA with fix version…
ijuma Sep 24, 2015
ac757eb
KAFKA-2554: change 0.8.3 to 0.9.0 in ApiVersion and other files
omkreddy Sep 24, 2015
bcf374d
KAFKA-2390; followup; add unit test for OffsetOutOfRange exception
lindong28 Sep 24, 2015
48b4d69
KAFKA-2373: Add Kafka-backed offset storage for Copycat.
ewencp Sep 25, 2015
18d3701
KAFKA-2571; KafkaLog4jAppender dies while specifying acks config
Sep 25, 2015
fe79864
KAFKA-2579; prevent unauthorized clients from joining groups
hachikuji Sep 25, 2015
7e453df
KAFKA-2409; have KafkaConsumer.committed return null when there is no…
hachikuji Sep 25, 2015
a07fbd0
KAFKA-2555: Fix infinite recursive ensurePartitionAssignment in callb…
becketqin Sep 25, 2015
10d5dea
HOTFIX: remove unused import causing checkstyle to fail
hachikuji Sep 25, 2015
ad120d5
KAFKA-2582; ConsumerMetdata authorization error not returned to user
hachikuji Sep 25, 2015
263c10a
KIP-28: Add a processor client for Kafka Streaming
guozhangwang Sep 26, 2015
b62f8ea
KAFKA-2531: Add Ducktape based tests for KafkaLog4jAppender
Sep 27, 2015
e90562f
MINOR: Fix FileStreamSourceTask to create the reader around System.in…
ewencp Sep 28, 2015
c20e3bf
HOTFIX: Checkstye fixes follow up for KAKFA-2531.
ewencp Sep 28, 2015
f540f4a
KAFKA-2586; Enable SSL for inter-broker communication when SSL is ena…
ijuma Sep 28, 2015
c7bc536
KAFKA-2514: change default JVM options in kafka-run-class.sh.
omkreddy Sep 28, 2015
41afdbe
KAFKA-2585; ConsoleConsumer should not hang infinitely upon exception
lindong28 Sep 28, 2015
4e7db39
MINOR: Make indenting in `checkstyle.xml` and `import-control.xml` co…
ijuma Sep 28, 2015
2c4e63a
KAFKA-2120; Add a request timeout to NetworkClient (KIP-19); reviewed…
MayureshGharat Sep 29, 2015
7372011
MINOR: fix Quota's equal() function
eribeiro Sep 29, 2015
f5596a8
HOTFIX: Checkstyle import fix
ijuma Sep 29, 2015
6b1a92c
KAFKA-2587; Increasing timeout for the test verification.
Parth-Brahmbhatt Sep 29, 2015
5e769cc
KAFKA-2570: commit offsets on rebalance/close when auto-commit is ena…
hachikuji Sep 30, 2015
d03b871
MINOR: Set `sendTime` in `doSend` instead of `InFlightRequests.add` a…
ijuma Oct 1, 2015
5764e54
KAFKA-2212: Authorizer CLI implementation.
Parth-Brahmbhatt Oct 2, 2015
7cfdf19
KAFKA-2517; Performance Regression post SSL implementation (zero copy)
ijuma Oct 2, 2015
4f8ad15
MINOR: Fix Vagrant setup script for use on Fedora
lindong28 Oct 2, 2015
a3bd998
MINOR: remove no longer needed CommitType
hachikuji Oct 2, 2015
b56e02b
KAFKA-2597: Add to .gitignore the Eclipse IDE directories
rhauch Oct 2, 2015
37f7d75
KAFKA-2591: Fix StreamingMetrics
guozhangwang Oct 3, 2015
4016011
KAFKA-2425; Copy latest docs to kafka repo docs/ directory
omkreddy Oct 3, 2015
f9faf33
KAFKA-2601; ConsoleProducer tool shows stacktrace on invalid command …
GabrielNicolasAvellaneda Oct 5, 2015
b88ba9a
KAFKA-2604; Remove `completeAll` and improve timeout passed to `Selec…
ijuma Oct 5, 2015
f236bc2
HOTFIX: Persistent store in ProcessorStateManagerTest
guozhangwang Oct 5, 2015
726e23e
TRIVIAL: remove TODO in KafkaConsumer after KAFKA-2120
guozhangwang Oct 5, 2015
b46cb3b
KAFKA-2599: Fix Metadata.getClusterForCurrentTopics throws NPE
eribeiro Oct 6, 2015
a0ca8f6
KAFKA-2573: Mirror maker system test hangs and eventually fails
Oct 6, 2015
23f9afb
KAFKA-2482: Allow sink tasks to get their current assignment, as well…
ewencp Oct 6, 2015
174a43c
KAFKA-2474: Add caching of JSON schema conversions to JsonConverter
ewencp Oct 6, 2015
02e103b
KAFKA-2476: Add Decimal, Date, and Timestamp logical types.
ewencp Oct 7, 2015
2047a9a
KAFKA-2534: Fixes and unit tests for SSLTransportLayer buffer overflow
rajinisivaram Oct 7, 2015
118912e
KAFKA-2419; Garbage collect unused sensors
Oct 7, 2015
2254f2b
Kafka-2587: Only notification handler will update the cache and all …
Parth-Brahmbhatt Oct 8, 2015
693d4ca
KAFKA-2428: Add sanity check in KafkaConsumer for the timeouts
Oct 8, 2015
f1110c3
KAFKA-2477: Fix a race condition between log append and fetch that ca…
becketqin Oct 8, 2015
5a921a3
MINOR: typing ProcessorDef
Oct 9, 2015
6a06e22
KAFKA-2596: reject commits from unknown groups with positive generations
hachikuji Oct 9, 2015
49822ff
KAFKA-2622: Add Time logical type for Copycat.
ewencp Oct 9, 2015
7233858
KAFKA-2600: Align Kafka Streams' interfaces with Java 8 functional in…
rhauch Oct 9, 2015
96209b1
MINOR: Fix exception message in Copycat's Time logical type.
ewencp Oct 9, 2015
c67ca65
MINOR: putting back kstream stateful transform methods
Oct 9, 2015
1265d7c
KAFKA-2614; No more clients can connect after `TooManyConnectionsExce…
ijuma Oct 10, 2015
bd98a99
MINOR: Use the correct processor id in the processor thread name
ijuma Oct 11, 2015
fe4818e
KAFKA-2633; Default logging from tools to Stderr
granthenke Oct 12, 2015
9fde92f
KAFKA-2443 KAFKA-2567; Expose windowSize on Rate; - Throttle time sho…
auradkar Oct 12, 2015
7915396
KAFKA-2203: Getting Java8 to relax about javadoc and let our build pass
gwenshap Oct 12, 2015
dd514b2
KAFKA-2581: Run some existing ducktape tests with SSL
rajinisivaram Oct 13, 2015
d734050
KAFKA-2613; Make maxParallelForks configurable via Gradle config so i…
ewencp Oct 13, 2015
518f78b
closes pr #206. *WONT FIX* - no new release planned for 0.8.2 branch
gwenshap Oct 13, 2015
373332b
Closes #206 . *WONT FIX* - no new release planned for 0.8.2 branch
gwenshap Oct 13, 2015
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
  •  
  •  
  •  
18 changes: 17 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,12 @@ lib_managed/
src_managed/
project/boot/
project/plugins/project/
patch-process/*
.idea
.svn
.classpath
/.metadata
/.recommenders
*~
*#
.#*
Expand All @@ -20,4 +23,17 @@ TAGS
.settings
.gradle
kafka.ipr
kafka.iws
kafka.iws
.vagrant
Vagrantfile.local
/logs

config/server-*
config/zookeeper-*
core/data/*
gradle/wrapper/*

results
tests/results
.ducktape
tests/.ducktape
26 changes: 0 additions & 26 deletions .rat-excludes

This file was deleted.

11 changes: 11 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
## Contributing to Kafka

*Before opening a pull request*, review the [Contributing](http://kafka.apache.org/contributing.html) and [Contributing Code Changes](https://cwiki.apache.org/confluence/display/KAFKA/Contributing+Code+Changes) pages.

It lists steps that are required before creating a PR.

When you contribute code, you affirm that the contribution is your original work and that you
license the work to the project under the project's open source license. Whether or not you
state this explicitly, by submitting any copyrighted material via pull request, email, or
other means you agree to license the material under the project's open source license and
warrant that you have the legal authority to do so.
29 changes: 25 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,11 @@ Follow instuctions in http://kafka.apache.org/documentation.html#quickstart
### Running a particular unit test ###
./gradlew -Dtest.single=RequestResponseSerializationTest core:test

### Running a particular test method within a unit test ###
./gradlew core:test --tests kafka.api.test.ProducerFailureHandlingTest.testCannotSendToInternalTopic
./gradlew clients:test --tests org.apache.kafka.clients.producer.MetadataTest.testMetadataUpdateWaitTime


### Running a particular unit test with log4j output ###
change the log4j setting in either clients/src/test/resources/log4j.properties or core/src/test/resources/log4j.properties
./gradlew -i -Dtest.single=RequestResponseSerializationTest core:test
Expand All @@ -49,11 +54,11 @@ The release file can be found inside ./core/build/distributions/.
### Cleaning the build ###
./gradlew clean

### Running a task on a particular version of Scala (either 2.9.1, 2.9.2, 2.10.1 or 2.11) ###
### Running a task on a particular version of Scala (either 2.10.5 or 2.11.7) ###
#### (If building a jar with a version other than 2.10, need to set SCALA_BINARY_VERSION variable or change it in bin/kafka-run-class.sh to run quick start.) ####
./gradlew -PscalaVersion=2.9.1 jar
./gradlew -PscalaVersion=2.9.1 test
./gradlew -PscalaVersion=2.9.1 releaseTarGz
./gradlew -PscalaVersion=2.11.7 jar
./gradlew -PscalaVersion=2.11.7 test
./gradlew -PscalaVersion=2.11.7 releaseTarGz

### Running a task for a specific project ###
This is for 'core', 'contrib:hadoop-consumer', 'contrib:hadoop-producer', 'examples' and 'clients'
Expand Down Expand Up @@ -88,11 +93,27 @@ Please note for this to work you should create/update `~/.gradle/gradle.properti
signing.password=
signing.secretKeyRingFile=

### Publishing the jars without signing to a local repository ###
./gradlew -Dorg.gradle.project.skipSigning=true -Dorg.gradle.project.mavenUrl=file://path/to/repo uploadArchivesAll

### Building the test jar ###
./gradlew testJar

### Determining how transitive dependencies are added ###
./gradlew core:dependencies --configuration runtime

### Running checkstyle on the java code ###
./gradlew checkstyleMain checkstyleTest

### Limit the number of processes for each task ###
./gradlew -Dorg.gradle.project.maxParallelForks=1 test

This will most commonly be useful for automated builds where the full resources of the host running the build and tests
may not be dedicated to Kafka's build.

### Running in Vagrant ###

See [vagrant/README.md](vagrant/README.md).

### Contribution ###

Expand Down
209 changes: 209 additions & 0 deletions Vagrantfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,209 @@
# 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.
# -*- mode: ruby -*-
# vi: set ft=ruby :

require 'socket'

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

# General config
enable_dns = false
enable_jmx = false
num_zookeepers = 1
num_brokers = 3
num_workers = 0 # Generic workers that get the code, but don't start any services
ram_megabytes = 1280
base_box = "ubuntu/trusty64"

# EC2
ec2_access_key = ENV['AWS_ACCESS_KEY']
ec2_secret_key = ENV['AWS_SECRET_KEY']
ec2_session_token = ENV['AWS_SESSION_TOKEN']
ec2_keypair_name = nil
ec2_keypair_file = nil

ec2_region = "us-east-1"
ec2_az = nil # Uses set by AWS
ec2_ami = "ami-9eaa1cf6"
ec2_instance_type = "m3.medium"
ec2_user = "ubuntu"
ec2_security_groups = nil
ec2_subnet_id = nil
# Only override this by setting it to false if you're running in a VPC and you
# are running Vagrant from within that VPC as well.
ec2_associate_public_ip = nil

local_config_file = File.join(File.dirname(__FILE__), "Vagrantfile.local")
if File.exists?(local_config_file) then
eval(File.read(local_config_file), binding, "Vagrantfile.local")
end

# This is a horrible hack to work around bad interactions between
# vagrant-hostmanager and vagrant-aws/vagrant's implementation. Hostmanager
# wants to update the /etc/hosts entries, but tries to do so even on nodes that
# aren't up (e.g. even when all nodes are stopped and you run vagrant
# destroy). Because of the way the underlying code in vagrant works, it still
# tries to communicate with the node and has to wait for a very long
# timeout. This modifies the update to check for hosts that are not created or
# stopped, skipping the update in that case since it's impossible to update
# nodes in that state.
Object.const_get("VagrantPlugins").const_get("HostManager").const_get("HostsFile").class_eval do
alias_method :old_update_guest, :update_guest
def update_guest(machine)
state_id = machine.state.id
return if state_id == :not_created || state_id == :stopped
old_update_guest(machine)
end
end

# TODO(ksweeney): RAM requirements are not empirical and can probably be significantly lowered.
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.hostmanager.enabled = true
config.hostmanager.manage_host = enable_dns
config.hostmanager.include_offline = false

## Provider-specific global configs
config.vm.provider :virtualbox do |vb,override|
override.vm.box = base_box

override.hostmanager.ignore_private_ip = false

# Brokers started with the standard script currently set Xms and Xmx to 1G,
# plus we need some extra head room.
vb.customize ["modifyvm", :id, "--memory", ram_megabytes.to_s]

if Vagrant.has_plugin?("vagrant-cachier")
override.cache.scope = :box
# Besides the defaults, we use a custom cache to handle the Oracle JDK
# download, which downloads via wget during an apt install. Because of the
# way the installer ends up using its cache directory, we need to jump
# through some hoops instead of just specifying a cache directly -- we
# share to a temporary location and the provisioning scripts symlink data
# to the right location.
override.cache.enable :generic, {
"oracle-jdk7" => { cache_dir: "/tmp/oracle-jdk7-installer-cache" },
}
end
end

config.vm.provider :aws do |aws,override|
# The "box" is specified as an AMI
override.vm.box = "dummy"
override.vm.box_url = "https://github.com/mitchellh/vagrant-aws/raw/master/dummy.box"

cached_addresses = {}
# Use a custom resolver that SSH's into the machine and finds the IP address
# directly. This lets us get at the private IP address directly, avoiding
# some issues with using the default IP resolver, which uses the public IP
# address.
override.hostmanager.ip_resolver = proc do |vm, resolving_vm|
if !cached_addresses.has_key?(vm.name)
state_id = vm.state.id
if state_id != :not_created && state_id != :stopped && vm.communicate.ready?
vm.communicate.execute("/sbin/ifconfig eth0 | grep 'inet addr' | tail -n 1 | egrep -o '[0-9\.]+' | head -n 1 2>&1") do |type, contents|
cached_addresses[vm.name] = contents.split("\n").first[/(\d+\.\d+\.\d+\.\d+)/, 1]
end
else
cached_addresses[vm.name] = nil
end
end
cached_addresses[vm.name]
end

override.ssh.username = ec2_user
override.ssh.private_key_path = ec2_keypair_file

aws.access_key_id = ec2_access_key
aws.secret_access_key = ec2_secret_key
aws.session_token = ec2_session_token
aws.keypair_name = ec2_keypair_name

aws.region = ec2_region
aws.availability_zone = ec2_az
aws.instance_type = ec2_instance_type
aws.ami = ec2_ami
aws.security_groups = ec2_security_groups
aws.subnet_id = ec2_subnet_id
# If a subnet is specified, default to turning on a public IP unless the
# user explicitly specifies the option. Without a public IP, Vagrant won't
# be able to SSH into the hosts unless Vagrant is also running in the VPC.
if ec2_associate_public_ip.nil?
aws.associate_public_ip = true unless ec2_subnet_id.nil?
else
aws.associate_public_ip = ec2_associate_public_ip
end

# Exclude some directories that can grow very large from syncing
override.vm.synced_folder ".", "/vagrant", type: "rsync", :rsync_excludes => ['.git', 'core/data/', 'logs/', 'system_test/', 'tests/results/', 'results/']
end

def name_node(node, name)
node.vm.hostname = name
node.vm.provider :aws do |aws|
aws.tags = { 'Name' => "kafka-vagrant-" + Socket.gethostname + "-" + name }
end
end

def assign_local_ip(node, ip_address)
node.vm.provider :virtualbox do |vb,override|
override.vm.network :private_network, ip: ip_address
end
end

## Cluster definition
zookeepers = []
(1..num_zookeepers).each { |i|
name = "zk" + i.to_s
zookeepers.push(name)
config.vm.define name do |zookeeper|
name_node(zookeeper, name)
ip_address = "192.168.50." + (10 + i).to_s
assign_local_ip(zookeeper, ip_address)
zookeeper.vm.provision "shell", path: "vagrant/base.sh"
zk_jmx_port = enable_jmx ? (8000 + i).to_s : ""
zookeeper.vm.provision "shell", path: "vagrant/zk.sh", :args => [i.to_s, num_zookeepers, zk_jmx_port]
end
}

(1..num_brokers).each { |i|
name = "broker" + i.to_s
config.vm.define name do |broker|
name_node(broker, name)
ip_address = "192.168.50." + (50 + i).to_s
assign_local_ip(broker, ip_address)
# We need to be careful about what we list as the publicly routable
# address since this is registered in ZK and handed out to clients. If
# host DNS isn't setup, we shouldn't use hostnames -- IP addresses must be
# used to support clients running on the host.
zookeeper_connect = zookeepers.map{ |zk_addr| zk_addr + ":2181"}.join(",")
broker.vm.provision "shell", path: "vagrant/base.sh"
kafka_jmx_port = enable_jmx ? (9000 + i).to_s : ""
broker.vm.provision "shell", path: "vagrant/broker.sh", :args => [i.to_s, enable_dns ? name : ip_address, zookeeper_connect, kafka_jmx_port]
end
}

(1..num_workers).each { |i|
name = "worker" + i.to_s
config.vm.define name do |worker|
name_node(worker, name)
ip_address = "192.168.50." + (100 + i).to_s
assign_local_ip(worker, ip_address)
worker.vm.provision "shell", path: "vagrant/base.sh"
end
}

end
23 changes: 23 additions & 0 deletions bin/copycat-distributed.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/sh
# 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.

base_dir=$(dirname $0)

if [ "x$KAFKA_LOG4J_OPTS" = "x" ]; then
export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:$base_dir/../config/copycat-log4j.properties"
fi

exec $(dirname $0)/kafka-run-class.sh org.apache.kafka.copycat.cli.CopycatDistributed "$@"
23 changes: 23 additions & 0 deletions bin/copycat-standalone.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/sh
# 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.

base_dir=$(dirname $0)

if [ "x$KAFKA_LOG4J_OPTS" = "x" ]; then
export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:$base_dir/../config/copycat-log4j.properties"
fi

exec $(dirname $0)/kafka-run-class.sh org.apache.kafka.copycat.cli.CopycatStandalone "$@"
Loading