[ 
https://issues.apache.org/jira/browse/IGNITE-19682?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Sapego updated IGNITE-19682:
---------------------------------
    Description: 
Currently, client sends a separate *TX_BEGIN* request when the user invokes 
*ITransactions.BeginAsync* API:
* Extra network request.
* Chosen tx coordinator (server node that handles TX_BEGIN request) is random 
and in most cases won't be the primary node for enlisted keys.

Solution:
* On the client, do not send *TX_BEGIN* request when the user invokes 
*ITransactions.BeginAsync*. Instead, start the tx "on demand" when it is first 
used in some API.
* Send two requests at once to the same node where the first enlisted operation 
goes (according to partition awareness, if applicable).

  was:
Currently, client sends a separate *TX_BEGIN* request when the user invokes 
*ITransactions.BeginAsync* API:
* Extra network request.
* Chosen tx coordinator (server node that handles TX_BEGIN request) is random 
and in most cases won't be the primary node for enlisted keys.

Solution:
* On the client, do not send *TX_BEGIN* request when the user invokes 
*IgniteTransactions.begin()*. Instead, start the tx "on demand" when it is 
first used in some API.
* Send two requests at once to the same node where the first enlisted operation 
goes (according to partition awareness, if applicable).


> .NET: Thin 3.0: Combine tx.begin with first enlisted operation
> --------------------------------------------------------------
>
>                 Key: IGNITE-19682
>                 URL: https://issues.apache.org/jira/browse/IGNITE-19682
>             Project: Ignite
>          Issue Type: Improvement
>          Components: thin client
>    Affects Versions: 3.0.0-beta1
>            Reporter: Pavel Tupitsyn
>            Assignee: Pavel Tupitsyn
>            Priority: Major
>              Labels: .NET, ignite-3
>             Fix For: 3.0.0-beta2
>
>
> Currently, client sends a separate *TX_BEGIN* request when the user invokes 
> *ITransactions.BeginAsync* API:
> * Extra network request.
> * Chosen tx coordinator (server node that handles TX_BEGIN request) is random 
> and in most cases won't be the primary node for enlisted keys.
> Solution:
> * On the client, do not send *TX_BEGIN* request when the user invokes 
> *ITransactions.BeginAsync*. Instead, start the tx "on demand" when it is 
> first used in some API.
> * Send two requests at once to the same node where the first enlisted 
> operation goes (according to partition awareness, if applicable).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to