[
https://issues.apache.org/jira/browse/IGNITE-12319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16957716#comment-16957716
]
Rajesh commented on IGNITE-12319:
---------------------------------
[~Pavlukhin], My views on this:
In [IGNITE-4188|https://issues.apache.org/jira/browse/IGNITE-4188], the user
needs to be aware of the transaction that is running currently to open a save
point and then rollback to that state but for a third party jar which gets
called they might not be aware of the transaction running in the outer code and
when a new transaction is opened in the code then it would fail with an
exception _"Transaction is held by current thread"_, which will not help the
purpose. I feel save point feature, would help for users who have the current
transaction instance and are aware of outer transaction.
Also, committing the inner transaction irrespective of whether the outer
transaction fails is not possible using save point.
I feel the issue is not identical.
The use case would be something like :-
{code:java}
//Current code
Begin transaction
....some code ( Cache A,Cache B )
...call third party code
.. some code ( Cache A, Cache B )
Commit Transaction
Exception:
Rollback Transaction
Finally:
Close Transaction
//------------------------------------------------------------------------------
//Third party code
Begin Transaction
.. some code ( Cache C )
Commit Transaction
Exception:
Rollback Transaction
Finally:
Close Transaction
{code}
> Nested Transaction support in Ignite
> ------------------------------------
>
> Key: IGNITE-12319
> URL: https://issues.apache.org/jira/browse/IGNITE-12319
> Project: Ignite
> Issue Type: Bug
> Affects Versions: 2.7.6
> Reporter: Rajesh
> Priority: Major
>
> There is no support for Nested transaction. For example, if there is an outer
> transaction which works on few caches and within that there is a transaction
> which is opened by a third party client to update their caches then it throws
> exception as current thread already has the transaction.
> This scenario is encountered multiple times where the inner transaction needs
> to be committed on success of inner transaction even if the outer transaction
> fails.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)