Unknown execution error: jitting
by David R Robison
I have a rule that runs fine when I execute it inside Guvnor in a Test
Scenario but when I run it in production I get the following error.
Exception in thread "Thread-24" java.lang.RuntimeException: Exception
jitting: $incidentRoutingIncreasing.isIncreasing &&
$sign.routeMileMarker > routeMileMarker ||
!$incidentRoutingIncreasing.isIncreasing && $sign.routeMileMarker <
routeMileMarker
at
org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:219)
at
org.drools.rule.constraint.MvelConstraint.access$000(MvelConstraint.java:41)
at
org.drools.rule.constraint.MvelConstraint$1.run(MvelConstraint.java:201)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.VerifyError: (class:
ConditionEvaluatorebdfa6ebae044e95bc706dfcd6f5654a, method: evaluate
signature:
(Ljava/lang/Object;Lorg/drools/common/InternalWorkingMemory;Lorg/drools/reteoo/LeftTuple;)Z)
Expecting to find integer on stack
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
at java.lang.Class.getConstructor0(Class.java:2714)
at java.lang.Class.getConstructor(Class.java:1674)
at
org.drools.rule.builder.dialect.asm.ClassGenerator.newInstance(ClassGenerator.java:173)
at
org.drools.rule.constraint.ASMConditionEvaluatorJitter.jitEvaluator(ASMConditionEvaluatorJitter.java:53)
at
org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:217)
... 5 more
The rule does seem to fire. Any idea what it is trying to tell me or any
hints on how to debug this?
TNX David
--
David R Robison
Open Roads Consulting, Inc.
103 Watson Road, Chesapeake, VA 23320
phone: (757) 546-3401
e-mail: drrobison(a)openroadsconsulting.com
web: http://openroadsconsulting.com
blog: http://therobe.blogspot.com
book: http://www.xulonpress.com/bookstore/bookdetail.php?PB_ISBN=9781597816526
This email communication (including any attachments) may contain confidential and/or privileged material intended solely for the individual or entity to which it is addressed.
If you are not the intended recipient, please delete this email immediately.
13 years, 4 months
drools-expert: Log atomic assertions !?
by bholzer
Is wonder how to log atomic assertions (i.e. the results of the Rete-Nodes -
visits ) ?
I tried the three Debug*EventListeners, but they're too coarse-grained.
As a workaround, I patched org.drools.reteoo.AlphaNode.assertObject(...) as
follows:
public void assertObject(...) {
final AlphaMemory memory = (AlphaMemory)
workingMemory.getNodeMemory( this );
boolean allowed = this.constraint.isAllowed(factHandle,
workingMemory, memory.context );
*log("Eval of " + this.constraint + " on " + factHandle.getObject()
+ ":" + allowed);*
if ( allowed ) {
this.sink.propagateAssertObject(factHandle, context,
workingMemory);
}
}
Is there a better way to archieve my goal ?
--
View this message in context: http://drools.46999.n3.nabble.com/drools-expert-Log-atomic-assertions-tp4...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 4 months
Drools Planner - split and join parallelism
by Willem van Asperen
Hi All,
I have an idea that I would like to bounce of the list.
As far as I understand, Drools Planner does not do any parallel
searching. It uses a single solver thread that does all the work.
What if I would forage not only the best solution so far, but a couple
of "promising" solutions and split these off to run on a separate
thread. I would split these itteratively down to a given level of iteration.
When these threads return I would then pick the best solution from the
returned values.
Using a multi-core box or even a server farm I could massively increase
the searched problem space and do it without loosing too much time (some
parallel management overhead).
Has anyone thought of such scheme before? Any luck in implementing?
Do you see any flaws?
Just a thought.
Regards,
Willem
13 years, 4 months
Rules with variable timers
by Shannon Hastings
Is there a way to write a rule in DRL that uses a timer or something that is dynamic. I.E. I want the time that rule waits to fire to be dependent on a variable such as below:
rule "CheckDoseMissed"
no-loop
timer(int: $eventA.sleepTime)
when
$eventA : MyEvent()
………..
----------
Shannon Hastings
Inventrio
shannon.hastings(a)inventrio.com
(614) 389-2795 ext: 101
http://www.inventrio.com
13 years, 4 months
help with designing / implementing a way for users to write their own rules
by kurrent93
Dear drools experts
Can I get some ideas on how best to do the following.
I would like users of my app to be able to write their own rule(s). For
example, if Joe User buys an item that is more that $200 then he uses XYZ
shipping. If he does not select shipping the he uses ABC shipping.
More precisely, how can I offer the ability, using Guvnor, for the end user
to write a rule, that does not give him the ability to modify a rule
condition regaring user id. The example above, of coures, has a condition
that if user is 'Joe User'.
There are very many places in the app where users should be able to write
rules, so it would be nice to use (embed) guvnor, rather than writing a
special UI for each situation.
Any suggestions welcome.
Br
Anton
--
View this message in context: http://drools.46999.n3.nabble.com/help-with-designing-implementing-a-way-...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 4 months