[ 
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)

Reply via email to