[JBoss JIRA] Created: (JBCACHE-927) Repeated remove and put under optimistic locking produces exception
by Ben Wang (JIRA)
Repeated remove and put under optimistic locking produces exception
-------------------------------------------------------------------
Key: JBCACHE-927
URL: http://jira.jboss.com/jira/browse/JBCACHE-927
Project: JBoss Cache
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 2.0.0.ALPHA1
Reporter: Ben Wang
Assigned To: Manik Surtani
Manik, I am not assigning this Jira to any release. It is your call to fix it either in ALPHA2 or BETA1. Basically, my o.jo.c.pojo.optimistic.CachedListTest failure can be attributed to this test case:
public void testFailure1() throws Exception
{
log.info("testFailure1() ....");
UserTransaction tx = getTransaction();
org.jboss.cache.Fqn f = new org.jboss.cache.Fqn("/person/test2");
tx.begin();
cache.getCache().put(f, "test", "test");
tx.commit();
tx.begin();
cache.getCache().removeNode(f);
cache.getCache().put(f, "test", "test");
tx.commit();
}
For optimistic locking and it produces the following error:
org.jboss.cache.CacheException: Unable to set node version for //person/test2, node is null.
at org.jboss.cache.interceptors.OptimisticNodeInterceptor.invoke(OptimisticNodeInterceptor.java:129)
at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:75)
at org.jboss.cache.interceptors.OptimisticCreateIfNotExistsInterceptor.invoke(OptimisticCreateIfNotExistsInterceptor.java:64)
at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:75)
at org.jboss.cache.interceptors.OptimisticValidatorInterceptor.invoke(OptimisticValidatorInterceptor.java:74)
at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:75)
at org.jboss.cache.interceptors.OptimisticLockingInterceptor.invoke(OptimisticLockingInterceptor.java:124)
at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:75)
at org.jboss.cache.interceptors.NotificationInterceptor.invoke(NotificationInterceptor.java:22)
at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:75)
at org.jboss.cache.interceptors.TxInterceptor.handleNonTxMethod(TxInterceptor.java:288)
at org.jboss.cache.interceptors.TxInterceptor.invoke(TxInterceptor.java:126)
at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:75)
at org.jboss.cache.interceptors.CacheMgmtInterceptor.invoke(CacheMgmtInterceptor.java:141)
at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:75)
at org.jboss.cache.interceptors.InvocationContextInterceptor.invoke(InvocationContextInterceptor.java:66)
at org.jboss.cache.CacheImpl.invokeMethod(CacheImpl.java:3758)
at org.jboss.cache.CacheImpl.put(CacheImpl.java:1558)
at org.jboss.cache.pojo.optimistic.LocalTxTest.testFailure1(LocalTxTest.java:151)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
If you don't fix it in Alpha2, we will need to exclude my test case temporarily in CC then.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 10 months
[JBoss JIRA] Created: (JBCACHE-701) PojoCache to revisit usage of get with gravitation
by Ben Wang (JIRA)
PojoCache to revisit usage of get with gravitation
--------------------------------------------------
Key: JBCACHE-701
URL: http://jira.jboss.com/jira/browse/JBCACHE-701
Project: JBoss Cache
Issue Type: Task
Security Level: Public (Everyone can see)
Components: PojoCache
Reporter: Ben Wang
Assigned To: Ben Wang
Fix For: POJOCache
Currently we have in couple places to trigger data gravitation (for buddy replication) in PojoCache. But this is still prone to error (and may be inefficient as well) becuase of the possibility of recursive call. Is it possible that we do this from the user code instead? That is, before we go to PojoCache, can we do get(region, dataGravitation) to gravitate all data to this node first?
Let's check this with Brian.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 10 months
[JBoss JIRA] Created: (JBRULES-593) Rule names must be globally unique, even if they come from different packages
by Jeff Lansing (JIRA)
Rule names must be globally unique, even if they come from different packages
-----------------------------------------------------------------------------
Key: JBRULES-593
URL: http://jira.jboss.com/jira/browse/JBRULES-593
Project: JBoss Rules
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Drl Parser/Builder
Affects Versions: 3.0.5
Environment: NA
Reporter: Jeff Lansing
Assigned To: Mark Proctor
When 2 DRL rule files with different package names (the name following the 'package' keyword) each have a rule with the same name (the name being the quoted string that follows the 'rule' keyword), then the following exception occurs:
org.drools.rule.InvalidRulePackage: Rule Compilation error The type Rule_Incident__Vehicle_0 is already defined
at org.drools.rule.Package.checkValidity(Unknown Source)
at org.drools.common.AbstractRuleBase.addPackage(Unknown Source)
at driver.RulesTest.readRule(RulesTest.java:256)
This occurs when using a single org.drools.rule.Package object, as in:
private void test(Reader source1, Reader source2) throws Exception {
PackageBuilder builder = new PackageBuilder();
builder.addPackageFromDrl( source1 );
builder.addPackageFromDrl( source2 );
Package pkg = builder.getPackage();
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
ruleBase.addPackage( pkg );
}
If, on the other hand two org.drools.rule.Package objects are used, as in:
private void test2(Reader source1, Reader source2) throws Exception {
PackageBuilder builder1 = new PackageBuilder();
PackageBuilder builder2 = new PackageBuilder();
builder1.addPackageFromDrl( source1 );
builder2.addPackageFromDrl( source2 );
Package pkg1 = builder1.getPackage();
Package pkg2 = builder2.getPackage();
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
ruleBase.addPackage( pkg1 );
ruleBase.addPackage( pkg2 );
}
then one of the identically named rules is simply ignored.
In either case, rule names must be globally unique.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 10 months