[JBoss JIRA] Created: (JBAS-4455) LoadBalancePolicy that tries to pin all requests associated with a tx to one server
by Brian Stansberry (JIRA)
LoadBalancePolicy that tries to pin all requests associated with a tx to one server
-----------------------------------------------------------------------------------
Key: JBAS-4455
URL: http://jira.jboss.com/jira/browse/JBAS-4455
Project: JBoss Application Server
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: Clustering
Reporter: Brian Stansberry
Assigned To: Galder Zamarreno
Priority: Minor
The HA proxies don't allow failover once a tx has reached a server. This can lead to this kind of situation:
EJB A deployed on nodes 1 and 2.
EJB B deployed on nodes 1 and 2.
1) Start tx, invoke on A.1.
2) Lookup B.
3) Invoke on B. LB policy picks B.2
4) Node 2 is dead for some reason so call fails.
5) Can't fail over because tx context won't allow a failover after a call has reached a server.
But, B.1 is fine and is running on the only node the tx has invoked on. :(
Approach to improving this. This is based on JRMPInovkerProxyHA methods, but the idea is generic:
In invocationHasReachedAServer, instead of storing null as the value, you store the target (key is the tx).
In invoke, if there's a tx, you add that target (if there is one) to the invocation as transient metadata
The LB policy gets passed the invocation as an arg when it chooses a target (this is already in the API)
LB policy checks for the metadata. If there, and that target is in its target list, return that target
--
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, 4 months
[JBoss JIRA] Created: (JBCACHE-1215) NullEvictionPolicy
by Brian Stansberry (JIRA)
NullEvictionPolicy
------------------
Key: JBCACHE-1215
URL: http://jira.jboss.com/jira/browse/JBCACHE-1215
Project: JBoss Cache
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Reporter: Brian Stansberry
Assigned To: Brian Stansberry
Priority: Minor
An eviction policy that allows returns 'true' to EvictionPolicy.canIgnoreEvent(). Other methods are no-ops or equivalent defaults.
Use case is situations where there are multiple eviction regions in a cache, some of which should never evict anything. You could use an LRUPolicy with maxAge=0, maxNodes=0 to accomplish a similar thing, but then you incur wasted overhead of generating, queuing up and processing node events. NullEvictionPolicy just bypasses everything.
Some usages:
Hibernate timestamp caching. The timestamp region should never be evicted.
HttpSession caching with FIELD. I'll probably need to use JBC eviction for the JBossInternal_ area to passivate pojos. But passivating the sessions themselves should not be managed by JBC. So I could use NullEvictionPolicy for the session storage area.
Could also be inserted as a global default if JBC detects that the _default_ region wasn't configured while a subregion was.
I coded this up one night a while ago and forgot about it. Could be added to 2.1.0.GA if not too late; otherwise later.
--
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, 4 months
[JBoss JIRA] Created: (JBRULES-1354) Duplicate parameter while trying to use pattern bound variables or globals in accumulate function
by Eric Miles (JIRA)
Duplicate parameter while trying to use pattern bound variables or globals in accumulate function
-------------------------------------------------------------------------------------------------
Key: JBRULES-1354
URL: http://jira.jboss.com/jira/browse/JBRULES-1354
Project: JBoss Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 4.0.3
Environment: JDK 1.5.0_13, Ubuntu 7.10
Reporter: Eric Miles
Whenever I attempt to reference a pattern bound variable (declared outside of accumulate) or a global from within an accumulate function, I get a "Duplicate parameter" error.
Example of pattern bound variable:
rule "Test"
when
$obj: SomeObject()
Integer() from accumulate( AnotherObject() , init (int total = 0 ), action ( total += $obj.getValue(); ), reverse ( total -= $obj.getValue(); ), result ( total) )
then
System.out.println("HI!");
end
The same happens when if I attempt to use a global. Here is an exact stacktrace of the error:
org.drools.rule.InvalidRulePackage: Rule Compilation error : [Rule
name=Daily Core Hours, agendaGroup=MAIN, salience=0, no-loop=false]
com/kronos/webta/service/smarttime/rules/Rule_Daily_Core_Hours_0.java
(32:1301) : Duplicate parameter $schedOut
com/kronos/webta/service/smarttime/rules/Rule_Daily_Core_Hours_0.java
(32:1330) : Duplicate parameter $schedIn
com/kronos/webta/service/smarttime/rules/Rule_Daily_Core_Hours_0.java
(41:1735) : Duplicate parameter $schedOut
com/kronos/webta/service/smarttime/rules/Rule_Daily_Core_Hours_0.java
(41:1764) : Duplicate parameter $schedIn
com/kronos/webta/service/smarttime/rules/Rule_Daily_Core_Hours_0.java
(51:2330) : Duplicate parameter $schedOut
com/kronos/webta/service/smarttime/rules/Rule_Daily_Core_Hours_0.java
(51:2359) : Duplicate parameter $schedIn
com/kronos/webta/service/smarttime/rules/Rule_Daily_Core_Hours_0.java
(58:2738) : Duplicate parameter $schedOut
com/kronos/webta/service/smarttime/rules/Rule_Daily_Core_Hours_0.java
(58:2767) : Duplicate parameter $schedIn
at org.drools.rule.Package.checkValidity(Package.java:424)
at
org.drools.common.AbstractRuleBase.addPackage(AbstractRuleBase.java:364)
at
com.kronos.webta.service.smarttime.rules.maxiflex.FlowTest.setUpBeforeClass(FlowTest.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.junit.internal.runners.ClassRoadie.runBefores(ClassRoadie.java:49)
at
org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:36)
at
org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
at
org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)
at
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
--
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, 4 months
[JBoss JIRA] Created: (JBBUILD-324) Build.xml in testsuite directory doesn't support multiple JVM argument
by Sunny Chan (JIRA)
Build.xml in testsuite directory doesn't support multiple JVM argument
----------------------------------------------------------------------
Key: JBBUILD-324
URL: http://jira.jboss.com/jira/browse/JBBUILD-324
Project: JBoss Build System
Issue Type: Feature Request
Components: Targets and Tasks
Affects Versions: Repository Build head, Repsository Build Branch_4_0
Environment: Any
Reporter: Sunny Chan
Priority: Minor
We are using the JBoss unit test as part of our JVM verification testsuite. We wanted to be able to invoke tests with multiple JVM options, but it didn't work. If you set parameters via build.sh -Djunit.vm.options with multiple paramters (e.g. -Djunit.vm.options="-d64 -verbose:gc"), it will fail with unrecongized option error.
The problem is that in testsuite/build.xml, the junit.vm.options is passed onto junit ant task via <jvmarg value> tag rather then <jvmarg line> tag. The jvmarg line allows multiple JVM options exist in one line. Once I replace all instance of <jvmarg value="${junit.jvm.options}"/> with <jvmarg line="${junit.jvm.options}"/> then the problem goes away.
I can provide a patch for this if you want - but I don't know the rules on patches (whether I need to be cleared for contribution) so let me know if you want that.
--
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, 4 months
[JBoss JIRA] Created: (JBRULES-1336) Typo in RuleBaseConfiguration(ClassLoader classLoder, Properties properties) -- the ClassLoader specified in the constructor args is not used
by James Sparrow (JIRA)
Typo in RuleBaseConfiguration(ClassLoader classLoder, Properties properties) -- the ClassLoader specified in the constructor args is not used
---------------------------------------------------------------------------------------------------------------------------------------------
Key: JBRULES-1336
URL: http://jira.jboss.com/jira/browse/JBRULES-1336
Project: JBoss Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 4.0.3
Reporter: James Sparrow
The RuleBaseConfiguration constructor:
{code}
public RuleBaseConfiguration(ClassLoader classLoder,
Properties properties) {
init( classLoader,
properties );
}
{code}
contains a typo--the call to init should pass the (mis-spelled) classLoder, not the member field classLoader. As it is, the null member field is passed instead, resulting in the given ClassLoader instance being unused. Trivial fix: Just correct the spelling of the constructor arg name:
{code}
public RuleBaseConfiguration(ClassLoader classLoader,
Properties properties) {
init( classLoader,
properties );
}
{code}
--
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, 4 months
[JBoss JIRA] Created: (JBRULES-1325) OutOfMemry with the use of WorkingMemoryFileLogger
by Delbart Vincent (JIRA)
OutOfMemry with the use of WorkingMemoryFileLogger
--------------------------------------------------
Key: JBRULES-1325
URL: http://jira.jboss.com/jira/browse/JBRULES-1325
Project: JBoss Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 4.0.3
Reporter: Delbart Vincent
Priority: Critical
Hello,
In my tests of the 4.0.3, I have some : java.lang.OutOfMemoryError.
So, I try a simple test with 10.000 sequential execution of 1 rule with no context and just a workingmemorylogger and I have the error : java.lang.OutOfMemoryError: Java heap space
My code is :
public class ExecReglesMemotyTest
{
private static final Reader DRL = new InputStreamReader(ExecReglesMemotyTest.class
.getResourceAsStream("/rules/exemple.drl"));
private static final String FICHIER_LOG = "session";
/**
* @param args
*/
public static void main(String[] args)
{
try
{
PackageBuilder builder = new PackageBuilder();
builder.addPackageFromDrl(DRL);
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
ruleBase.addPackage(builder.getPackage());
for (int i = 0; i < 10000; i++)
{
StatefulSession session = ruleBase.newStatefulSession();
WorkingMemoryFileLogger logger = new WorkingMemoryFileLogger(session);
logger.setFileName(FICHIER_LOG);
session.fireAllRules();
logger.writeToDisk();
session.dispose();
}
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
with this rule (doesn't matter):
#created on: Fri Nov 09 15:48:45 CET 2007
package initPackage
#list any import classes here.
rule "ERG9"
when
then
end
I try this in 4.0.1, and it's working (no OutOfMemoryError)
What's the problem ?
thanks for any information,
V.
--
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, 4 months