[ https://issues.apache.org/jira/browse/KUDU-2612?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17170220#comment-17170220 ]
ASF subversion and git services commented on KUDU-2612: ------------------------------------------------------- Commit cb1c2efb59373453e734074a02021f14c403257d in kudu's branch refs/heads/master from Andrew Wong [ https://gitbox.apache.org/repos/asf?p=kudu.git;h=cb1c2ef ] KUDU-2612 p6: add coordination calls to system client This adds the following calls to the TxnSystemClient: - BeginTransaction() - RegisterParticipant() whose APIs roughly match those of the TxnStatusManager. For the sake of a more focused patch, I only added these couple to build out reusable pieces of the system client. Later patches will extend the client with BeginCommitTransaction() and AbortTransaction() calls. All of these calls share the same RPC-sending code, which draws loose inspiration from the client::Batcher. I considered templatizing/reusing the Batcher, but eventually opted not to for several reasons: - We don't need all the bells and whistles attached to the Batcher, e.g. timestamp tracking and consistency modes, session-based API, etc. - The complexity of abstracting the Batcher to the point of using it for other RPC types would have made the code very unwieldy and difficult to maintain and extend. - Not reusing the Batcher gives us an opportunity moving forward to consider other approaches to batching (e.g. batching by server rather than by tablet ID). Where the implementation draws inspiration from the Batcher is its usage of the MetaCache to attach callbacks to tablet lookups, its retry-handling, and its memory management -- namely, each request is encapsulated in such a way that the memory used to track the call automatically frees itself upon completion. Change-Id: I4126cb3dcf379b397f84578c2265dca3ece3d98c Reviewed-on: http://gerrit.cloudera.org:8080/16194 Reviewed-by: Alexey Serbin <aser...@cloudera.com> Tested-by: Andrew Wong <aw...@cloudera.com> > Implement multi-row transactions > -------------------------------- > > Key: KUDU-2612 > URL: https://issues.apache.org/jira/browse/KUDU-2612 > Project: Kudu > Issue Type: Task > Reporter: Mike Percy > Priority: Major > Labels: roadmap-candidate > > Tracking Jira to implement multi-row / multi-table transactions in Kudu. -- This message was sent by Atlassian Jira (v8.3.4#803005)