[
https://issues.apache.org/jira/browse/IGNITE-23207?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17883241#comment-17883241
]
Vladislav Pyatkov commented on IGNITE-23207:
--------------------------------------------
I do not think we can remove inflights right now because coursor is not a
thread-safe object even in an implicit transaction. What I doubt about making
the course thread-safe is the fact that it is worse in all cases except
implicit transactions.
>From the other side, we can get rid of the inflight map in all cases (RWs, RO
>coursors):
{code:java}
TransactionInflights#txCtxMap
{code}
Just add a counter in the Ignite transaction. It is possible because a
transaction is passed to any operation.
> Optimize read-only tx inflights for implicit gets and getAlls
> -------------------------------------------------------------
>
> Key: IGNITE-23207
> URL: https://issues.apache.org/jira/browse/IGNITE-23207
> Project: Ignite
> Issue Type: Improvement
> Reporter: Denis Chudov
> Priority: Major
> Labels: ignite-3
>
> *Motivation*
> We need inflights counter for read-only transactions to make sure that tx
> resources (specifically, cursors) will be cleaned up on remote nodes no
> earlier than user finishes the tx. Seems that it's not necessary for implicit
> read-only txns. Removing the usage of txn context may make them significantly
> faster.
> *Definition of done*
> Inflights are not used for implicit read-only txns.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)