GitHub user apurvam opened a pull request: https://github.com/apache/kafka/pull/2970
Kafka-5160; KIP-98 Broker side support for TxnOffsetCommitRequest This patch adds support for the `TxnOffsetCommitRequest` added in KIP-98. Desired handling for this request is [described here](https://docs.google.com/document/d/11Jqy_GjUGtdXJK94XGsEIK7CP1SnQGdp2eF0wSw9ra8/edit#bookmark=id.55yzhvkppi6m) . The functionality includes handling the stable state of receiving `TxnOffsetCommitRequests` and materializing results only when the commit marker for the transaction is received. It also handles partition emigration and immigration and rebuilds the required data structures on these events. Tests are included for the basic stable state functionality. Still need to add tests for the immigration/emigration functionality. You can merge this pull request into a Git repository by running: $ git pull https://github.com/apurvam/kafka KAFKA-5160-broker-side-support-for-txnoffsetcommitrequest Alternatively you can review and apply these changes as the patch at: https://github.com/apache/kafka/pull/2970.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2970 ---- commit 925e104ca60bccb6a57ba96c1aaa4135f8734dab Author: Apurva Mehta <apu...@confluent.io> Date: 2017-05-02T22:07:04Z WIP commit 27760828c7672b31050cc0c02e9e6e3f6256a0db Author: Apurva Mehta <apu...@confluent.io> Date: 2017-05-03T06:59:32Z WIP commit: 1. Able to write txn offset commits to the log and delay materialization until the commit marker appears. 2. Able to recover these commits on partition load. Todo: 1. Tests for the above. 2. Materialize or drop cached offset commits when the transaction marker is received. commit 00ab335cc0423c3544b052cccb5cb47e0e42dcc8 Author: Apurva Mehta <apu...@confluent.io> Date: 2017-05-03T07:06:30Z Small simplification commit f8139073e7c25781b521c855420ba83b5a1c252a Author: Apurva Mehta <apu...@confluent.io> Date: 2017-05-03T07:07:54Z fix indentation commit 4a4bbd39ed71edc04ecd31c5000a1b83c73483d3 Author: Apurva Mehta <apu...@confluent.io> Date: 2017-05-03T23:03:05Z Code complete barring integration. Now to add unit tests commit 8993b93d2e9565016d9be528b7451e1c0a865a35 Author: Apurva Mehta <apu...@confluent.io> Date: 2017-05-04T01:00:25Z Added the first test cases commit 684ccea1b35a44c19e148f9c9b44cebd5bcb4fa9 Author: Apurva Mehta <apu...@confluent.io> Date: 2017-05-04T01:16:10Z Completed the functional test cases ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---