This feature has to do with Ignite transactions automatically merging with JTA /XA transactions. I think we should document existing behavior first, before we start improving the design or deprecating methods.
Can someone who originally worked on the JTA/XA integration respond to Valentin's questions? Thanks, D. On Tue, Jul 28, 2015 at 6:03 PM, Valentin Kulichenko < [email protected]> wrote: > Igniters, > > Today I noticed that there is no documentation on JTA integration we > provide and wanted to add it, but got really confused by configuration we > currently have. > > Essentially, the only configuration property we have is > TransactionConfiguration.setTxManagerLookupClassName(String > tmLookupClsName), where tmLookupClsName is a class name of CacheTmLookup > interface implementation. I've got two questions here: > > - Why do we provide the class name instead of CacheTmLookup instance? > - Why do we need special interface and don't use JCache's Factory > instead? > > We also have two implementations out-of-the-box: CacheJndiTmLookup and > CacheReflectionTmLookup. Both of them have required parameters (e.g., JDNI > names for JNDI lookup) and there is no way to provide them. So they are > useless now. > > I think we should: > > - Deprecate current configuration. > - Add > TransactionConfiguration.setTxManagerFactory(Factory<TransactionManager> > factory) method instead. > - (optional) Deprecate CacheReflectionTmLookup. It seems confusing and > not very useful to me (I may be wrong). > > Thoughts? > > -Val >
