{"push_id":760364635,"size":7,"distinct_size":7,"ref":"refs/heads/trunk","head":"2636b7324b50939865dfd3984393a95c8f8c0021","before":"5c268b35d3d221c4e64e34ba8a24f72e1ab41653","commits":[{"sha":"2c55bd8aa2666ea11ee2814b04f782eef8fa52c6","author":{"email":"81ffae58c459f74195044ace599cc448410ac50e@gmail.com","name":"Jiangjie Qin"},"message":"KAFKA-2406: Throttle ISR propagation\n\nThis is a follow up patch for KAFKA-2406. Further test to verify if this change alone is enough to solve the problem or not.\n\nAuthor: Jiangjie Qin <becket.qin@gmail.com>\nAuthor: Jiangjie Qin <jqin@jqin-ld1.linkedin.biz>\n\nReviewers: Jun Rao <junrao@gmail.com>\n\nCloses #114 from becketqin/KAFKA-2406","distinct":true,"url":"https://api.github.com/repos/dguy/kafka/commits/2c55bd8aa2666ea11ee2814b04f782eef8fa52c6"},{"sha":"c8e62c9818a04c01a4eb16cf30772dfbd30d3a26","author":{"email":"c3918f39022407dee6a0056ceca9b1aa80e8e4ce@confluent.io","name":"Geoff Anderson"},"message":"MINOR: expose vagrant base box as variable\n\nAdded base_box variable to Vagrantfile. This makes it possible to override the base box in Vagrantfile.local.\n\nAuthor: Geoff Anderson <geoff@confluent.io>\n\nReviewers: Guozhang Wang\n\nCloses #137 from granders/minor-expose-vagrant-box and squashes the following commits:\n\n44936f7 [Geoff Anderson] Added base_box variable to Vagrantfile. This makes it possible to override the base box in Vagrantfile.local.","distinct":true,"url":"https://api.github.com/repos/dguy/kafka/commits/c8e62c9818a04c01a4eb16cf30772dfbd30d3a26"},{"sha":"f6acfb08917946f15cb8de2fee786019124af212","author":{"email":"b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@ewencp.org","name":"Ewen Cheslack-Postava"},"message":"KAFKA-2366; Initial patch for Copycat\n\nThis is an initial patch implementing the basics of Copycat for KIP-26.\n\nThe intent here is to start a review of the key pieces of the core API and get a reasonably functional, baseline, non-distributed implementation of Copycat in place to get things rolling. The current patch has a number of known issues that need to be addressed before a final version:\n\n* Some build-related issues. Specifically, requires some locally-installed dependencies (see below), ignores checkstyle for the runtime data library because it's lifted from Avro currently and likely won't last in its current form, and some Gradle task dependencies aren't quite right because I haven't gotten rid of the dependency on `core` (which should now be an easy patch since new consumer groups are in a much better state).\n* This patch currently depends on some Confluent trunk code because I prototyped with our Avro serializers w/ schema-registry support. We need to figure out what we want to provide as an example built-in set of serializers. Unlike core Kafka where we could ignore the issue, providing only ByteArray or String serializers, this is pretty central to how Copycat works.\n* This patch uses a hacked up version of Avro as its runtime data format. Not sure if we want to go through the entire API discussion just to get some basic code committed, so I filed KAFKA-2367 to handle that separately. The core connector APIs and the runtime data APIs are entirely orthogonal.\n* This patch needs some updates to get aligned with recent new consumer changes (specifically, I'm aware of the ConcurrentModificationException issue on exit). More generally, the new consumer is in flux but Copycat depends on it, so there are likely to be some negative interactions.\n* The layout feels a bit awkward to me right now because I ported it from a Maven layout. We don't have nearly the same level of granularity in Kafka currently (core and clients, plus the mostly ignored examples, log4j-appender, and a couple of contribs). We might want to reorganize, although keeping data+api separate from runtime and connector plugins is useful for minimizing dependencies.\n* There are a variety of other things (e.g., I'm not happy with the exception hierarchy/how they are currently handled, TopicPartition doesn't really need to be duplicated unless we want Copycat entirely isolated from the Kafka APIs, etc), but I expect those we'll cover in the review.\n\nBefore commenting on the patch, it's probably worth reviewing https://issues.apache.org/jira/browse/KAFKA-2365 and https://issues.apache.org/jira/browse/KAFKA-2366 to get an idea of what I had in mind for a) what we ultimately want with all the Copycat patches and b) what we aim to cover in this initial patch. My hope is that we can use a WIP patch (after the current obvious deficiencies are addressed) while recognizing that we want to make iterative progress with a bunch of subsequent PRs.\n\nAuthor: Ewen Cheslack-Postava <me@ewencp.org>\n\nReviewers: Ismael Juma, Gwen Shapira\n\nCloses #99 from ewencp/copycat and squashes the following commits:\n\na3a47a6 [Ewen Cheslack-Postava] Simplify Copycat exceptions, make them a subclass of KafkaException.\n8c108b0 [Ewen Cheslack-Postava] Rename Coordinator to Herder to avoid confusion with the consumer coordinator.\n7bf8075 [Ewen Cheslack-Postava] Make Copycat CLI speific to standalone mode, clean up some config and get rid of config storage in standalone mode.\n656a003 [Ewen Cheslack-Postava] Clarify and expand the explanation of the Copycat Coordinator interface.\nc0e5fdc [Ewen Cheslack-Postava] Merge remote-tracking branch 'origin/trunk' into copycat\n0fa7a36 [Ewen Cheslack-Postava] Mark Copycat classes as unstable and reduce visibility of some classes where possible.\nd55d31e [Ewen Cheslack-Postava] Reorganize Copycat code to put it all under one top-level directory.\nb29cb2c [Ewen Cheslack-Postava] Merge remote-tracking branch 'origin/trunk' into copycat\nd713a21 [Ewen Cheslack-Postava] Address Gwen's review comments.\n6787a85 [Ewen Cheslack-Postava] Make Converter generic to match serializers since some serialization formats do not require a base class of Object; update many other classes to have generic key and value class type parameters to match this change.\nb194c73 [Ewen Cheslack-Postava] Split Copycat converter option into two options for key and value.\n0b5a1a0 [Ewen Cheslack-Postava] Normalize naming to use partition for both source and Kafka, adjusting naming in CopycatRecord classes to clearly differentiate.\ne345142 [Ewen Cheslack-Postava] Remove Copycat reflection utils, use existing Utils and ConfigDef functionality from clients package.\nbe5c387 [Ewen Cheslack-Postava] Minor cleanup\n122423e [Ewen Cheslack-Postava] Style cleanup\n6ba87de [Ewen Cheslack-Postava] Remove most of the Avro-based mock runtime data API, only preserving enough schema functionality to support basic primitive types for an initial patch.\n4674d13 [Ewen Cheslack-Postava] Address review comments, clean up some code styling.\n25b5739 [Ewen Cheslack-Postava] Fix sink task offset commit concurrency issue by moving it to the worker thread and waking up the consumer to ensure it exits promptly.\n0aefe21 [Ewen Cheslack-Postava] Add log4j settings for Copycat.\n220e42d [Ewen Cheslack-Postava] Replace Avro serializer with JSON serializer.\n1243a7c [Ewen Cheslack-Postava] Merge remote-tracking branch 'origin/trunk' into copycat\n5a618c6 [Ewen Cheslack-Postava] Remove offset serializers, instead reusing the existing serializers and removing schema projection support.\ne849e10 [Ewen Cheslack-Postava] Remove duplicated TopicPartition implementation.\ndec1379 [Ewen Cheslack-Postava] Switch to using new consumer coordinator instead of manually assigning partitions. Remove dependency of copycat-runtime on core.\n4a9b4f3 [Ewen Cheslack-Postava] Add some helpful Copycat-specific build and test targets that cover all Copycat packages.\n31cd1ca [Ewen Cheslack-Postava] Add CLI tools for Copycat.\ne14942c [Ewen Cheslack-Postava] Add Copycat file connector.\n0233456 [Ewen Cheslack-Postava] Add copycat-avro and copycat-runtime\n11981d2 [Ewen Cheslack-Postava] Add copycat-data and copycat-api","distinct":true,"url":"https://api.github.com/repos/dguy/kafka/commits/f6acfb08917946f15cb8de2fee786019124af212"},{"sha":"bbb7d97adefe5826f2e02a8e55423ea215c9f749","author":{"email":"43ecbb61629904b830f7e8cb990c5b3ef10b62b6@linkedin.com","name":"Aditya Auradkar"},"message":"KAFKA-2084; Add per-client-id byte-rate metrics and quota manager; reviewed by Joel Koshy, Dong Lin, Jun Rao and Edward Ribeiro","distinct":true,"url":"https://api.github.com/repos/dguy/kafka/commits/bbb7d97adefe5826f2e02a8e55423ea215c9f749"},{"sha":"63b89658bcb5fc2d95e10d28987337c3d971163f","author":{"email":"b1c1d8736f20db3fb6c1c66bb1455ed43909f0d8@ewencp.org","name":"Ewen Cheslack-Postava"},"message":"KAFKA-1782: Follow up - add missing @Test annotations.\n\nAuthor: Ewen Cheslack-Postava <me@ewencp.org>\n\nReviewers: Guozhang\n\nCloses #140 from ewencp/kafka-1782-followup and squashes the following commits:\n\nfe36bd1 [Ewen Cheslack-Postava] Fix missing annotation of Before and After in ControllerFailoverTest.\n1dcaf39 [Ewen Cheslack-Postava] KAFKA-1782: Follow up - add missing @Test annotations.","distinct":true,"url":"https://api.github.com/repos/dguy/kafka/commits/63b89658bcb5fc2d95e10d28987337c3d971163f"},{"sha":"786867c2e18f79fa17be120f78a253bb9822a861","author":{"email":"648737a4d5e8e7f3005f086c2dbed7bf1e0319c8@hortonworks.com","name":"Sriharsha Chintalapani"},"message":"KAFKA-2438; add maxParallelForks to build.gradle to speedup tests.\n\nAuthor: Sriharsha Chintalapani <harsha@hortonworks.com>\n\nReviewers: Gwen Shapira\n\nCloses #143 from harshach/KAFKA-2438","distinct":true,"url":"https://api.github.com/repos/dguy/kafka/commits/786867c2e18f79fa17be120f78a253bb9822a861"},{"sha":"2636b7324b50939865dfd3984393a95c8f8c0021","author":{"email":"4cc8fbd2f79a4690784ec834e1767ea6e4080bee@apple.com","name":"Damian Guy"},"message":"Merge remote-tracking branch 'upstream/trunk' into trunk","distinct":true,"url":"https://api.github.com/repos/dguy/kafka/commits/2636b7324b50939865dfd3984393a95c8f8c0021"}]}