[
https://issues.jboss.org/browse/JBTM-852?page=com.atlassian.jira.plugin.s...
]
Jonathan Halliday commented on JBTM-852:
----------------------------------------
It's actually three stores rather than four, since the recovery store is not a
separately configurable entity, it's just an internal api alias for obtaining the
action store.
The problems here stem from trying to retrofit a 'multiple instances of any given
environment bean type' model onto a config system that previously assumed each was a
singleton. The current semantic of the unnamed getters xPropertyManager.getFooBean() is
'get the instance called 'default', NOT 'get an abstract instance that
contains the defaults for all other instances'. Indeed such defaults are not globally
configurable at all - they are hardcoded. Thus it's not currently possible to e.g.
change the store dir for all three stores with a single config option. Rather, you have to
set it explicitly for each of the three store instances. This is by design and is not a
bug.
Ultimately the problems stem from not wanting to depend on a full DI framework, which
limits the ability to inject named bean instances cleanly. The wider issue will need to be
rethought as part of the 'removing statics / allowing dynamic reconfig / multiple
cohabiting TMs' work. Meanwhile I'd favour more clearly documenting the current
semantic over changing it, as the latter approach risks causing confusion and breaking
existing configs.
Setting SettingVolatile store still creates an ObjectStore directory
on the disk
---------------------------------------------------------------------------------
Key: JBTM-852
URL:
https://issues.jboss.org/browse/JBTM-852
Project: JBoss Transaction Manager
Issue Type: Feature Request
Security Level: Public(Everyone can see)
Affects Versions: 4.15.0
Reporter: Mircea Markus
Priority: Minor
Even when configuring {code:java}
arjPropertyManager.getObjectStoreEnvironmentBean().setObjectStoreType(VolatileStore.class.getName())
{code} an "ObjectStore" directory is created on the disk. After discussing with
JTM team this doesn't cause any real problem in the sense that nothing is written to
the disk, but this is annoying and might create confusion between the users.
A workaround would be to add the following configuration together with the previously
mentioned one:
{code:java} BeanPopulator.getNamedInstance(ObjectStoreEnvironmentBean.class,
"communicationStore").setObjectStoreType(VolatileStore.class.getName()) {code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira