Class TransactionConfiguration
- java.lang.Object
- 
- org.apache.ignite.configuration.TransactionConfiguration
 
- 
- All Implemented Interfaces:
- Serializable
 
 public class TransactionConfiguration extends Object implements Serializable Transactions configuration.- See Also:
- Serialized Form
 
- 
- 
Field SummaryFields Modifier and Type Field Description static intDFLT_PESSIMISTIC_TX_LOG_LINGERDeprecated.Pessimistic tx log linger property has no effect.static longDFLT_TRANSACTION_TIMEOUTDefault transaction timeout.static TransactionConcurrencyDFLT_TX_CONCURRENCYDefault concurrency mode.static TransactionIsolationDFLT_TX_ISOLATIONDefault transaction isolation level.static booleanDFLT_TX_SERIALIZABLE_ENABLEDDefault value for 'txSerializableEnabled' flag.static Set<TransactionIsolation>TX_AWARE_QUERIES_SUPPORTED_MODESSupported levels of transaction isolation for SQL queries.static longTX_TIMEOUT_ON_PARTITION_MAP_EXCHANGETransaction timeout on partition map synchronization.
 - 
Constructor SummaryConstructors Constructor Description TransactionConfiguration()Empty constructor.TransactionConfiguration(TransactionConfiguration cfg)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description TransactionConcurrencygetDefaultTxConcurrency()Default cache transaction concurrency to use when one is not explicitly specified.TransactionIsolationgetDefaultTxIsolation()Default cache transaction isolation to use when one is not explicitly specified.longgetDefaultTxTimeout()Gets default transaction timeout.intgetPessimisticTxLogLinger()Deprecated.Pessimistic tx log linger property has no effect.intgetPessimisticTxLogSize()Deprecated.Pessimistic tx log size property has no effect.<T> javax.cache.configuration.Factory<T>getTxManagerFactory()Gets transaction manager factory for integration with JEE app servers.StringgetTxManagerLookupClassName()Deprecated.UsegetTxManagerFactory()instead.longgetTxTimeoutOnPartitionMapExchange()Some Ignite operations provoke partition map exchange process within Ignite to ensure the partitions distribution state is synchronized cluster-wide.booleanisTxAwareQueriesEnabled()booleanisTxSerializableEnabled()Deprecated.booleanisUseJtaSynchronization()TransactionConfigurationsetDefaultTxConcurrency(TransactionConcurrency dfltConcurrency)Sets default transaction concurrency.TransactionConfigurationsetDefaultTxIsolation(TransactionIsolation dfltIsolation)Sets default transaction isolation.TransactionConfigurationsetDefaultTxTimeout(long dfltTxTimeout)Sets default transaction timeout in milliseconds.TransactionConfigurationsetPessimisticTxLogLinger(int pessimisticTxLogLinger)Deprecated.Pessimistic tx log linger property has no effect.TransactionConfigurationsetPessimisticTxLogSize(int pessimisticTxLogSize)Deprecated.Pessimistic tx log size property has no effect.TransactionConfigurationsetTxAwareQueriesEnabled(boolean txAwareQueriesEnabled)<T> TransactionConfigurationsetTxManagerFactory(javax.cache.configuration.Factory<T> factory)Sets transaction manager factory for availablejavax.transaction.TransactionManagerimplementation, if any.TransactionConfigurationsetTxManagerLookupClassName(String tmLookupClsName)Deprecated.UsesetTxManagerFactory(Factory)instead.TransactionConfigurationsetTxSerializableEnabled(boolean txSerEnabled)Deprecated.This method has no effect,TransactionIsolation.SERIALIZABLEisolation is always enabled.TransactionConfigurationsetTxTimeoutOnPartitionMapExchange(long txTimeoutOnPartitionMapExchange)Sets the transaction timeout that will be enforced if the partition map exchange process starts.TransactionConfigurationsetUseJtaSynchronization(boolean useJtaSync)Sets the flag that defines whether to use lightweight JTA synchronization callback to enlist into JTA transaction instead of creating a separate XA resource.StringtoString()
 
- 
- 
- 
Field Detail- 
TX_AWARE_QUERIES_SUPPORTED_MODESpublic static final Set<TransactionIsolation> TX_AWARE_QUERIES_SUPPORTED_MODES Supported levels of transaction isolation for SQL queries.- See Also:
- setTxAwareQueriesEnabled(boolean)
 
 - 
DFLT_TX_SERIALIZABLE_ENABLEDpublic static final boolean DFLT_TX_SERIALIZABLE_ENABLED Default value for 'txSerializableEnabled' flag.- See Also:
- Constant Field Values
 
 - 
DFLT_TX_CONCURRENCYpublic static final TransactionConcurrency DFLT_TX_CONCURRENCY Default concurrency mode.
 - 
DFLT_TX_ISOLATIONpublic static final TransactionIsolation DFLT_TX_ISOLATION Default transaction isolation level.
 - 
DFLT_TRANSACTION_TIMEOUTpublic static final long DFLT_TRANSACTION_TIMEOUT Default transaction timeout.- See Also:
- Constant Field Values
 
 - 
TX_TIMEOUT_ON_PARTITION_MAP_EXCHANGEpublic static final long TX_TIMEOUT_ON_PARTITION_MAP_EXCHANGE Transaction timeout on partition map synchronization.- See Also:
- Constant Field Values
 
 - 
DFLT_PESSIMISTIC_TX_LOG_LINGERpublic static final int DFLT_PESSIMISTIC_TX_LOG_LINGER Deprecated.Pessimistic tx log linger property has no effect.Default size of pessimistic transactions log.- See Also:
- Constant Field Values
 
 
- 
 - 
Constructor Detail- 
TransactionConfigurationpublic TransactionConfiguration() Empty constructor.
 - 
TransactionConfigurationpublic TransactionConfiguration(TransactionConfiguration cfg) - Parameters:
- cfg- Configuration to copy.
 
 
- 
 - 
Method Detail- 
isTxSerializableEnabled@Deprecated public boolean isTxSerializableEnabled() Deprecated.Gets flag to enable/disableTransactionIsolation.SERIALIZABLEisolation level for cache transactions. Serializable level does carry certain overhead and if not used, should be disabled. Default value isfalse.- Returns:
- Trueif serializable transactions are enabled,- falseotherwise.
 
 - 
setTxSerializableEnabled@Deprecated public TransactionConfiguration setTxSerializableEnabled(boolean txSerEnabled) Deprecated.This method has no effect,TransactionIsolation.SERIALIZABLEisolation is always enabled.- Parameters:
- txSerEnabled- Flag to enable/disable serializable cache transactions.
- Returns:
- thisfor chaining.
 
 - 
getDefaultTxConcurrencypublic TransactionConcurrency getDefaultTxConcurrency() Default cache transaction concurrency to use when one is not explicitly specified. Default value is defined byDFLT_TX_CONCURRENCY.- Returns:
- Default cache transaction concurrency.
- See Also:
- Transaction
 
 - 
setDefaultTxConcurrencypublic TransactionConfiguration setDefaultTxConcurrency(TransactionConcurrency dfltConcurrency) Sets default transaction concurrency.- Parameters:
- dfltConcurrency- Default cache transaction concurrency.
- Returns:
- thisfor chaining.
 
 - 
getDefaultTxIsolationpublic TransactionIsolation getDefaultTxIsolation() Default cache transaction isolation to use when one is not explicitly specified. Default value is defined byDFLT_TX_ISOLATION.- Returns:
- Default cache transaction isolation.
- See Also:
- Transaction
 
 - 
setDefaultTxIsolationpublic TransactionConfiguration setDefaultTxIsolation(TransactionIsolation dfltIsolation) Sets default transaction isolation.- Parameters:
- dfltIsolation- Default cache transaction isolation.
- Returns:
- thisfor chaining.
 
 - 
getDefaultTxTimeoutpublic long getDefaultTxTimeout() Gets default transaction timeout. Default value is defined byDFLT_TRANSACTION_TIMEOUTwhich is0and means that transactions will never time out.- Returns:
- Default transaction timeout.
 
 - 
setDefaultTxTimeoutpublic TransactionConfiguration setDefaultTxTimeout(long dfltTxTimeout) Sets default transaction timeout in milliseconds. By default this value is defined byDFLT_TRANSACTION_TIMEOUT.- Parameters:
- dfltTxTimeout- Default transaction timeout.
- Returns:
- thisfor chaining.
 
 - 
getTxTimeoutOnPartitionMapExchangepublic long getTxTimeoutOnPartitionMapExchange() Some Ignite operations provoke partition map exchange process within Ignite to ensure the partitions distribution state is synchronized cluster-wide. Topology update events and a start of a new distributed cache are examples of those operations.When the partition map exchange starts, Ignite acquires a global lock at a particular stage. The lock can't be obtained until pending transactions are running in parallel. If there is a transaction that runs for a while, then it will prevent the partition map exchange process from the start freezing some operations such as a new node join process. This property allows to rollback such long transactions to let Ignite acquire the lock faster and initiate the partition map exchange process. The timeout is enforced only at the time of the partition map exchange process. If not set, default value is TX_TIMEOUT_ON_PARTITION_MAP_EXCHANGEwhich means transactions will never be rolled back on partition map exchange.- Returns:
- Transaction timeout for partition map synchronization in milliseconds.
 
 - 
setTxTimeoutOnPartitionMapExchangepublic TransactionConfiguration setTxTimeoutOnPartitionMapExchange(long txTimeoutOnPartitionMapExchange) Sets the transaction timeout that will be enforced if the partition map exchange process starts.- Parameters:
- txTimeoutOnPartitionMapExchange- Transaction timeout value in milliseconds.
- Returns:
- thisfor chaining.
 
 - 
getPessimisticTxLogSize@Deprecated public int getPessimisticTxLogSize() Deprecated.Pessimistic tx log size property has no effect.Gets size of pessimistic transactions log stored on node in order to recover transaction commit if originating node has left grid before it has sent all messages to transaction nodes.If not set, default value is 0which means unlimited log size.- Returns:
- Pessimistic transaction log size.
 
 - 
setPessimisticTxLogSize@Deprecated public TransactionConfiguration setPessimisticTxLogSize(int pessimisticTxLogSize) Deprecated.Pessimistic tx log size property has no effect.Sets pessimistic transactions log size.- Parameters:
- pessimisticTxLogSize- Pessimistic transactions log size.
- Returns:
- thisfor chaining.
- See Also:
- getPessimisticTxLogSize()
 
 - 
getPessimisticTxLogLinger@Deprecated public int getPessimisticTxLogLinger() Deprecated.Pessimistic tx log linger property has no effect.Gets delay, in milliseconds, after which pessimistic recovery entries will be cleaned up for failed node.If not set, default value is DFLT_PESSIMISTIC_TX_LOG_LINGER.- Returns:
- Pessimistic log cleanup delay in milliseconds.
 
 - 
setPessimisticTxLogLinger@Deprecated public TransactionConfiguration setPessimisticTxLogLinger(int pessimisticTxLogLinger) Deprecated.Pessimistic tx log linger property has no effect.Sets cleanup delay for pessimistic transaction recovery log for failed node, in milliseconds.- Parameters:
- pessimisticTxLogLinger- Pessimistic log cleanup delay.
- Returns:
- thisfor chaining.
- See Also:
- getPessimisticTxLogLinger()
 
 - 
getTxManagerLookupClassName@Deprecated public String getTxManagerLookupClassName() Deprecated.UsegetTxManagerFactory()instead.Gets class name of transaction manager finder for integration for JEE app servers.- Returns:
- Transaction manager finder.
 
 - 
setTxManagerLookupClassName@Deprecated public TransactionConfiguration setTxManagerLookupClassName(String tmLookupClsName) Deprecated.UsesetTxManagerFactory(Factory)instead.Sets look up mechanism for availableTransactionManagerimplementation, if any.- Parameters:
- tmLookupClsName- Name of class implementing GridCacheTmLookup interface that is used to receive JTA transaction manager.
- Returns:
- thisfor chaining.
 
 - 
getTxManagerFactorypublic <T> javax.cache.configuration.Factory<T> getTxManagerFactory() Gets transaction manager factory for integration with JEE app servers.- Type Parameters:
- T- Instance of- javax.transaction.TransactionManager.
- Returns:
- Transaction manager factory.
- See Also:
- isUseJtaSynchronization()
 
 - 
setTxManagerFactorypublic <T> TransactionConfiguration setTxManagerFactory(javax.cache.configuration.Factory<T> factory) Sets transaction manager factory for availablejavax.transaction.TransactionManagerimplementation, if any.It allows to use different transactional systems. Implement factory that produce native javax.transaction.TransactionManagerwithin your environment.The following implementations are provided out of the box (jta module must be enabled): - 
  org.apache.ignite.cache.jta.jndi.CacheJndiTmFactoryutilizes configured JNDI names to look up a transaction manager.
- 
  org.apache.ignite.cache.jta.websphere.WebSphereTmFactoryan implementation of Transaction Manager factory to be used within WebSphere Application Server.
- 
  org.apache.ignite.cache.jta.websphere.WebSphereLibertyTmFactoryan implementation of Transaction Manager factory to be used within WebSphere Liberty.
 Factory.create()method throws any exception, returnsnull-value or returns non-TransactionManagerinstance.- Type Parameters:
- T- Instance of- javax.transaction.TransactionManager.
- Parameters:
- factory- Transaction manager factory.
- Returns:
- thisfor chaining.
- See Also:
- setUseJtaSynchronization(boolean)
 
- 
  
 - 
isUseJtaSynchronizationpublic boolean isUseJtaSynchronization() - Returns:
- Whether to use JTA javax.transaction.Synchronizationinstead ofjavax.transaction.xa.XAResource.
- See Also:
- getTxManagerFactory()
 
 - 
setUseJtaSynchronizationpublic TransactionConfiguration setUseJtaSynchronization(boolean useJtaSync) Sets the flag that defines whether to use lightweight JTA synchronization callback to enlist into JTA transaction instead of creating a separate XA resource. In some cases this can give performance improvement, but keep in mind that most of the transaction managers do not allow to add more that one callback to a single transaction.- Parameters:
- useJtaSync- Whether to use JTA- javax.transaction.Synchronizationinstead of- javax.transaction.xa.XAResource.
- Returns:
- thisfor chaining.
- See Also:
- setTxManagerFactory(Factory)
 
 - 
isTxAwareQueriesEnabledpublic boolean isTxAwareQueriesEnabled() - Returns:
- Whether to execute SQL and scan queries in transaction aware mode.
 
 - 
setTxAwareQueriesEnabledpublic TransactionConfiguration setTxAwareQueriesEnabled(boolean txAwareQueriesEnabled) - Parameters:
- txAwareQueriesEnabled- Whether to execute SQL and scan queries in transaction aware mode.
- Returns:
- thisfor chaining.
 
 
- 
 
-