[teiid-issues] [JBoss JIRA] (TEIIDSB-155) Infinispan configuration should support a transactional cache

Steven Hawkins (Jira) issues at jboss.org
Fri Jan 10 11:39:25 EST 2020


    [ https://issues.redhat.com/browse/TEIIDSB-155?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13945781#comment-13945781 ] 

Steven Hawkins edited comment on TEIIDSB-155 at 1/10/20 11:38 AM:
------------------------------------------------------------------

The take-aways:

1. The underlying exception is misleading.  It's not an authorization issue, it's that if the cache would be created using the default template it would not support transactions.
2. You have to use an xml configuration (or install a cache template) that specifies a transactional cache.  It also must specify locking PESSIMISTIC as the default OPTIMISTIC requires versioning.  I do not see any built-in cache templates that are transactional.  This means that our connection code is effectively responsible for fully defining the cache - which does not seem ideal.  That probably needs externalized in some way.  Also this only seems to work against standalone.  With the developer account against an instance in openshift we still are failing.
3. getCache will throw an exception in the transactional case rather than returning a null cache.  The connection code needs to be updated accordingly.


was (Author: shawkins):
The take-aways:

1. The underlying exception is misleading.  It's not an authorization issue, it's that if the cache would be created using the default template it would not support transactions.
2. You have to use an xml configuration (or install a cache template) that specifies a transactional cache.  It also must specify locking PESSIMISTIC as the default OPTIMISTIC requires versioning.  I do not see any built-in cache templates that are transactional.  This means that our connection code is effectively responsible for fully defining the cache - which does not seem ideal.  That probably needs externalized in some way.
3. getCache will throw an exception in the transactional case rather than returning a null cache.  The connection code needs to be updated accordingly.

> Infinispan configuration should support a transactional cache
> -------------------------------------------------------------
>
>                 Key: TEIIDSB-155
>                 URL: https://issues.redhat.com/browse/TEIIDSB-155
>             Project: Teiid Spring Boot
>          Issue Type: Enhancement
>          Components: datasource
>            Reporter: Steven Hawkins
>            Priority: Major
>             Fix For: 1.3.1
>
>
> The configuration should allow for single phase commit and non-recoverable xa.  This will need to change the transaction support on the translator, set the transaction config, and register a transactionManager lookup that can find the configured transaction manager.
> The infinispan operator does not provide a way to configure the transaction support of the cache, so this may not fully work yet - I'll test to see what happens both with the default cache and with trying to create one on demand.



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the teiid-issues mailing list