[
https://issues.redhat.com/browse/TEIID-5887?page=com.atlassian.jira.plugi...
]
Steven Hawkins moved TEIIDSB-164 to TEIID-5887:
-----------------------------------------------
Project: Teiid (was: Teiid Spring Boot)
Key: TEIID-5887 (was: TEIIDSB-164)
Component/s: Infinispan
(was: datasource)
Fix Version/s: 13.1
(was: 1.4.0)
(was: 1.3.1)
Issues with marhaller registration
----------------------------------
Key: TEIID-5887
URL:
https://issues.redhat.com/browse/TEIID-5887
Project: Teiid
Issue Type: Bug
Components: Infinispan
Reporter: Steven Hawkins
Priority: Major
Fix For: 13.1
Original Estimate: 6 hours
Remaining Estimate: 6 hours
Adding transactional logic to infinispan highlights several problems with marshaller
registration. The first is that all connections are working off of a shared context and
each registering a marshaller for the same class type - this is not thread safe.
The other issue specific to transactions is that some operations are delayed or redone at
commit time - which is called after the connection is closed potentially in a different
thread and thus the marshaller provider has been removed. Given the interplay of threads
using a thread local won't work.
Potentially a transaction aware thread pool or the use of something like our execution
context keep alive may be needed.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)