[ https://issues.apache.org/jira/browse/IGNITE-19682?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17845191#comment-17845191 ]
Pavel Tupitsyn commented on IGNITE-19682: ----------------------------------------- Merged to main: [1c0ee275624f07b1dab1a2c0a0307ae74ab0a579|https://github.com/apache/ignite-3/commit/1c0ee275624f07b1dab1a2c0a0307ae74ab0a579] > .NET: Thin 3.0: Tx partition awareness > -------------------------------------- > > 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, performance > Fix For: 3.0.0-beta2 > > Time Spent: 20m > Remaining Estimate: 0h > > 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)