| Summary: | Use JBoss Cache in the cluster configurations for jBPM | |||
|---|---|---|---|---|
| Product: | [JBoss] JBoss Enterprise SOA Platform 4 | Reporter: | Martin Weiler <mweiler> | |
| Component: | JBPM - within SOA | Assignee: | Alejandro Guizar <alex.guizar> | |
| Status: | CLOSED NEXTRELEASE | QA Contact: | ||
| Severity: | urgent | Docs Contact: | ||
| Priority: | urgent | |||
| Version: | 4.3 CP01, 4.2 CP04 | CC: | tbf | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| URL: | http://jira.jboss.org/jira/browse/SOA-1406 | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | Bug Fix | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 778980 (view as bug list) | Environment: |
'all' or 'production' configuration of the SOA-P
|
|
| Last Closed: | 2010-08-18 10:11:53 UTC | Type: | Task | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
|
Description
Martin Weiler
2009-07-08 11:16:28 UTC
TSS article describing how to switch to JBoss Cache. http://www.theserverside.com/tt/articles/article.tss?l=WorkflowEngineJBossCluster Just thought I'd put Trev's answer in. "That depends on the 4.3 schedule. However it's a customer request so it stands a pretty good chance. " Link: Added: This issue incorporates JBPM-2916 === The result of grep "CacheProvider" in jars shipped with EAP -------------- ./deploy/ejb3.deployer/jboss-ejb3.jar org/jboss/ejb3/entity/OptimisticTreeCacheProviderHook.class org/jboss/ejb3/entity/TreeCacheProviderHook.class ./lib/hibernate3.jar org/hibernate/cache/AbstractJndiBoundCacheProvider.class org/hibernate/cache/CacheProvider.class org/hibernate/cache/EhCacheProvider.class org/hibernate/cache/HashtableCacheProvider.class org/hibernate/cache/JndiBoundTreeCacheProvider.class org/hibernate/cache/NoCacheProvider.class org/hibernate/cache/OSCacheProvider.class org/hibernate/cache/OptimisticTreeCacheProvider$TransactionManagerLookupAdaptor.class org/hibernate/cache/OptimisticTreeCacheProvider.class org/hibernate/cache/SwarmCacheProvider.class org/hibernate/cache/TreeCacheProvider$TransactionManagerLookupAdaptor.class org/hibernate/cache/TreeCacheProvider.class ./lib/jboss-hibernate.jar org/jboss/hibernate/cache/DeployedTreeCacheProvider.class --------------- === The result of grep "CacheProvider" in hibernate-jbc-cacheprovider-1.0.1.GA.jar --------------- ./hibernate-jbc-cacheprovider-1.0.1.GA.jar org/jboss/hibernate/jbc/cacheprovider/JndiBoundTreeCacheProvider.class org/jboss/hibernate/jbc/cacheprovider/JmxBoundTreeCacheProvider.class org/jboss/hibernate/jbc/cacheprovider/TreeCacheProvider.class org/jboss/hibernate/jbc/cacheprovider/TreeCacheProvider$TransactionManagerLookupAdaptor.class org/jboss/hibernate/jbc/cacheprovider/OptimisticJmxBoundTreeCacheProvider.class org/jboss/hibernate/jbc/cacheprovider/OptimisticJndiBoundTreeCacheProvider.class org/jboss/hibernate/jbc/cacheprovider/OptimisticTreeCacheProvider.class --------------- http://community.jboss.org/wiki/JBossCacheHibernate http://community.jboss.org/wiki/NewJBossCache14xBasedHibernate32CacheProvider The new CacheProviders have performance improvement and (Optimistic)JmxBoundTreeCacheProvider is easier to configure. Of course, if we support them, SOA-P should include hibernate-jbc-cacheprovider-1.0.1.GA.jar. One consideration in http://www.theserverside.com/tt/articles/article.tss?l=WorkflowEngineJBossCluster is <attribute name="CacheMode">REPL_ASYNC</attribute> REPL_ASYNC may lose data integrity --- INVALIDATION_SYNC is the best option for entity cache, isn't it? How about configuring JBossCache with <attribute name="CacheMode">LOCAL</attribute> for 'default' configuration of the SOA-P (not only for 'all' and 'production')? EhCache may be ok. HashtableCacheProvider would cause problem even in non-cluster environment as its cache entries don't expire. I've made good progress in the project issue JBPM-2916. The JBoss Cache configuration I checked into the jBPM codebase is based on the recommendation from the hibernate-jbc-cacheprovider project. http://anonsvn.jboss.org/repos/jbossas/projects/cluster/hibernate-jbc-cacheprovider/trunk/src/test/java/org/jboss/hibernate/jbc/cacheprovider/functional/optimistic-treecache.xml This configuration has an eviction policy; it should remedy the OOMEs. It is set for LOCAL cache mode as well. Oddly enough the comments state that INVALIDATION_ASYNC is recommended for use with clustered caches. Makes me wonder whether the data integrity issues have been resolved. http://anonsvn.jboss.org/repos/jbpm/jbpm3/branches/jbpm-3.2-soa/modules/distribution/src/main/resources/service/jboss-service.xml The selected cache provider is JmxBoundTreeCacheProvider. The plain TreeCacheProvider (from package org.jboss.hibernate.jbc.cacheprovider) is for standalone cache instances, whereas JndiBoundTreeCacheProvider is for JNDI-bound caches. Subclasses named like Optimistic*TreeCacheProvider are deprecated. http://anonsvn.jboss.org/repos/jbpm/jbpm3/branches/jbpm-3.2-soa/modules/core/src/main/resources/hibernate.common.xml The jBPM 3 distribution script uncomments the "Data source", "JTA transaction" and "Clustered cache" sections of the above configuration and comments out the "JDBC connection" and "Memory cache" sections. The "nonstrict-read-write" cache usage is replaced with "transactional". Additionally the installer bundles the hibernate-jbc-cacheprovider library. These changes to the standalone codebase need to be incorporated into the platform as part of SOA-1406. Configured jBPM to employ JBoss Cache 1.4 with Hibernate 3.2 on JBoss AS 4.x and JBoss Cache 2 with Hibernate 3.3 on JBoss AS 5.x. The IzPack installer writes one configuration or the other depending on the selected JBoss AS version. Project issue JBPM-2916 resolved. Link: Added: This issue is related to SOA-2365 Writer: Added: dlesage Release Notes Docs Status: Added: Documented as Resolved Issue Release Notes Docs Status: Removed: Documented as Resolved Issue Added: Not Yet Documented Labels: Removed: rn-dlesage rn-done-resolved Added: rn-dlesage Writer: Removed: dlesage Added: Darrin Release Notes Text: Added: JBoss Cache is now used in the cluster configuration of jBPM. Release Notes Docs Status: Removed: Not Yet Documented Added: Documented as Resolved Issue Link: Added: This issue Cloned to SOA-3640 |