Details
-
Improvement
-
Status: In Progress
-
Major
-
Resolution: Unresolved
-
1.9
-
None
-
None
Description
Consider the following pseudo-code:
IgniteTransactions transactions = ignite1.transactions();
Transaction tx = startTransaction(transactions);
cache.put("key1", 1);
tx.stop();
And in another thread:
transactions.txStart(tx); cache.put("key3", 3); cache.remove("key2"); tx.commit();
The Api should be implemented , that let you continue transaction in another thread.
method suspend() should mark the transaction as unavailable for further commit.
method resume should resume the transaction.
reason behind the proposal :
Consider the next scenario:
we begin transaction, doing some changes and start async future that will be able to introduce futher changes into transaction and commit it in the end.
Attachments
Attachments
Issue Links
- blocks
-
IGNITE-5831 .NET: Support TransactionScopeAsyncFlowOption.Enabled in TransactionScope
- Open
- links to
1.
|
Context switching for optimistic transactions | Resolved | Nikolay Izhikov | |||||||||
2.
|
Implementation of suspend/resume for pessimistic transactions | Resolved | Aleksey Plekhanov |
|
||||||||
3.
|
Thread safety for transaction operations | Resolved | Nikolay Izhikov | |||||||||
4.
|
.NET: Support transaction continuation in another thread | Open | Unassigned |