public interface IgniteTransactions
PARTITIONED or
REPLICATED, can also participate in the same transaction.
Transactions are AutoCloseable, so they will automatically rollback unless
explicitly committed.
Here is an example of a transaction:
try (Transaction tx = Ignition.ignite().transactions().txStart()) {
Account acct = cache.get(acctId);
// Current balance.
double balance = acct.getBalance();
// Deposit $100 into account.
acct.setBalance(balance + 100);
// Store updated account in cache.
cache.put(acctId, acct);
tx.commit();
}
| Modifier and Type | Method and Description |
|---|---|
TransactionMetrics |
metrics() |
void |
resetMetrics()
Resets transaction metrics.
|
Transaction |
tx()
Gets transaction started by this thread or
null if this thread does
not have a transaction. |
Transaction |
txStart()
Starts transaction with default isolation, concurrency, timeout, and invalidation policy.
|
Transaction |
txStart(TransactionConcurrency concurrency,
TransactionIsolation isolation)
Starts new transaction with the specified concurrency and isolation.
|
Transaction |
txStart(TransactionConcurrency concurrency,
TransactionIsolation isolation,
long timeout,
int txSize)
Starts transaction with specified isolation, concurrency, timeout, invalidation flag,
and number of participating entries.
|
Transaction txStart() throws IllegalStateException
CacheConfiguration at startup.IllegalStateException - If transaction is already started by this thread.Transaction txStart(TransactionConcurrency concurrency, TransactionIsolation isolation)
concurrency - Concurrency.isolation - Isolation.IllegalStateException - If transaction is already started by this thread.Transaction txStart(TransactionConcurrency concurrency, TransactionIsolation isolation, long timeout, int txSize)
concurrency - Concurrency.isolation - Isolation.timeout - Timeout.txSize - Number of entries participating in transaction (may be approximate).IllegalStateException - If transaction is already started by this thread.Transaction tx()
null if this thread does
not have a transaction.null if this thread
does not have a transaction.TransactionMetrics metrics()
void resetMetrics()
Follow @ApacheIgnite
Ignite Fabric : ver. 1.5.11 Release Date : April 8 2016