[ https://issues.apache.org/jira/browse/IGNITE-22090?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Scherbakov reassigned IGNITE-22090: ------------------------------------------ Assignee: Alexey Scherbakov > Thin 3.0: Avoid TX_BEGIN round-trip > ----------------------------------- > > Key: IGNITE-22090 > URL: https://issues.apache.org/jira/browse/IGNITE-22090 > Project: Ignite > Issue Type: Improvement > Components: thin client > Affects Versions: 3.0.0-beta1 > Reporter: Pavel Tupitsyn > Assignee: Alexey Scherbakov > Priority: Major > Labels: ignite-3 > Fix For: 3.1 > > > IGNITE-19681 implements tx partition awareness, where TX_BEGIN request is > performed together with the first enlisted operation. However, this still > involves a separate round-trip to start the transaction. > We can change the protocol to do two things in one go: > * Start the transaction > * Enlist first operation > See the comment from [~ascherbakov]: > https://github.com/apache/ignite-3/pull/3640#discussion_r1575943518 > {code} > This can be optimized even further. > Currently we still have +1RTT due to begin tx request/response here, which > may be sensitive to small transactions. > A transaction should be started on first map request. > For this to work logical client tx id should be assigned on client. > For example, id can consist of local client counter combined with client > unique id assigned by server on handshake. > One bit of 64 bit id is reserved for "first" flag. > If an operation is "first", the txn is implicitly started. > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)