[JBoss JIRA] (DROOLS-320) Drools plugin Rete Tree viewer does not work with timer and || operator.
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/DROOLS-320?page=com.atlassian.jira.plugin... ]
RH Bugzilla Integration commented on DROOLS-320:
------------------------------------------------
Rajesh Rajasekaran <rrajasek(a)redhat.com> changed the Status of [bug 1027120|https://bugzilla.redhat.com/show_bug.cgi?id=1027120] from VERIFIED to CLOSED
> Drools plugin Rete Tree viewer does not work with timer and || operator.
> ------------------------------------------------------------------------
>
> Key: DROOLS-320
> URL: https://issues.jboss.org/browse/DROOLS-320
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 6.0.0.CR5
> Environment: Mac OS-X 10.9, JBoss Developer Studio 7, Oracle Hotspot 1.7.0_45, Drools-jBPM Eclipse plugin 6.0.0.CR5
> Reporter: Duncan Doyle
> Assignee: Mario Fusco
> Labels: drools, eclipse, plugin, rete, tree, view
> Fix For: 6.1.0.Beta1
>
>
> See this example project: https://github.com/DuncanDoyle/DroolsReteViewer , which is based on the Drools Eclipse sample project.
> The 'src/main/resources/rules/Sample.drl' is a valid DRL file, but it cannot be opened in the Rete Tree because of:
> - the 'timer (int: 10s)' definition in rule "GoodBye-Timer". This gives the error:
> Rete Tree Build Error!
> Reason:
> org.drools.core.RuntimeDroolsException:
> java.lang.reflect.InvocationTargetException: [Rete(0)]
> - the '||' operator in the rule "Hello World-Or". This gives the error:
> Rete Tree Build Error!
> Reason:
> java.lang.NullPointerException: null
> This forces us to change our rule definition files to be able to inspect the Rete Tree (which we require to analyse the tree for possible optimizations).
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
11 years, 3 months
[JBoss JIRA] (DROOLS-339) Rules will only fire in the first session created from a knowledgebase - Segment Memory restore from Prototype conflict
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/DROOLS-339?page=com.atlassian.jira.plugin... ]
RH Bugzilla Integration commented on DROOLS-339:
------------------------------------------------
Rajesh Rajasekaran <rrajasek(a)redhat.com> changed the Status of [bug 1030251|https://bugzilla.redhat.com/show_bug.cgi?id=1030251] from VERIFIED to CLOSED
> Rules will only fire in the first session created from a knowledgebase - Segment Memory restore from Prototype conflict
> -----------------------------------------------------------------------------------------------------------------------
>
> Key: DROOLS-339
> URL: https://issues.jboss.org/browse/DROOLS-339
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 6.0.0.CR5
> Reporter: Davide Sottara
> Assignee: Mario Fusco
> Priority: Blocker
> Fix For: 6.0.1.Final
>
>
> Given a KB with the two rules below:
> {code}
> rule "Insert Info "
> when
> then
> insert( "aaa " );
> insert( new Integer( 12 ) );
> insert( new Double( 4.0 ) );
> end
>
> rule "React "
> when
> Integer()
> accumulate (
> $n : Double( ) and
> Double( ),
> $x : count( $n )
> )
> String( )
> then
> System.out.println( "Rule fires" );
> end
> {code}
> The rules work normally in the first session created from the KB.
> When any additional session is created and used, the SegmentMemories are restored from the SM Prototypes.
> Unfortunately, the AccumulateNode -> RuleTerminalNode segment is restored twice, once when the "aaa"
> triggers the appropriate Beta Node, and once when the subnetwork updates the RIA node.
> The latter overwrites the already existing segment, overriding the partial link bits.
> See SegmentUtilities line 421, where this tentative patch shows the problem:
> {code}
> if ( NodeTypeEnums.isLeftTupleSource(node) && wm.getNodeMemory((MemoryFactory) node).getSegmentMemory() == null )
> {code}
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
11 years, 3 months
[JBoss JIRA] (DROOLS-320) Drools plugin Rete Tree viewer does not work with timer and || operator.
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/DROOLS-320?page=com.atlassian.jira.plugin... ]
RH Bugzilla Integration commented on DROOLS-320:
------------------------------------------------
Rajesh Rajasekaran <rrajasek(a)redhat.com> changed the Status of [bug 1027118|https://bugzilla.redhat.com/show_bug.cgi?id=1027118] from VERIFIED to CLOSED
> Drools plugin Rete Tree viewer does not work with timer and || operator.
> ------------------------------------------------------------------------
>
> Key: DROOLS-320
> URL: https://issues.jboss.org/browse/DROOLS-320
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 6.0.0.CR5
> Environment: Mac OS-X 10.9, JBoss Developer Studio 7, Oracle Hotspot 1.7.0_45, Drools-jBPM Eclipse plugin 6.0.0.CR5
> Reporter: Duncan Doyle
> Assignee: Mario Fusco
> Labels: drools, eclipse, plugin, rete, tree, view
> Fix For: 6.1.0.Beta1
>
>
> See this example project: https://github.com/DuncanDoyle/DroolsReteViewer , which is based on the Drools Eclipse sample project.
> The 'src/main/resources/rules/Sample.drl' is a valid DRL file, but it cannot be opened in the Rete Tree because of:
> - the 'timer (int: 10s)' definition in rule "GoodBye-Timer". This gives the error:
> Rete Tree Build Error!
> Reason:
> org.drools.core.RuntimeDroolsException:
> java.lang.reflect.InvocationTargetException: [Rete(0)]
> - the '||' operator in the rule "Hello World-Or". This gives the error:
> Rete Tree Build Error!
> Reason:
> java.lang.NullPointerException: null
> This forces us to change our rule definition files to be able to inspect the Rete Tree (which we require to analyse the tree for possible optimizations).
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
11 years, 3 months
[JBoss JIRA] (DROOLS-145) CCE during fact insertion when two instances of a KieSession are obtained for the same KieModule
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/DROOLS-145?page=com.atlassian.jira.plugin... ]
RH Bugzilla Integration commented on DROOLS-145:
------------------------------------------------
Rajesh Rajasekaran <rrajasek(a)redhat.com> changed the Status of [bug 965611|https://bugzilla.redhat.com/show_bug.cgi?id=965611] from VERIFIED to CLOSED
> CCE during fact insertion when two instances of a KieSession are obtained for the same KieModule
> ------------------------------------------------------------------------------------------------
>
> Key: DROOLS-145
> URL: https://issues.jboss.org/browse/DROOLS-145
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Reporter: Mario Fusco
> Assignee: Mario Fusco
> Fix For: 6.0.0.CR1
>
>
> Description of problem:
> When creating two instances of the same KieSession from KieContainer instances obtained for the same ReleaseId, a CCE occurs during insertion of the facts into the second KieSession instance.
> If you swap the KieSessions used in the test, the problem arises every time in the second KieSession evaluating the rules. The problem shows up also when using KieModule defining two KieSessions for one KieBase.
> When constructing the KieModule every time from scratch, the problem does not occur. The problem also does not occur when using the same instance of KieContainer for creating both KieSessions.
> The ClassCastException refers to classes generated for facts defined in DRL.
> Version-Release number of selected component (if applicable):
> BRMS 6.0.0.DR4
> Drools 6.0.0-SNAPSHOT
> How reproducible:
> I will attach a reference to PR with reproducer.
> The test scenario is as follows:
> 1. create a KieModule with ReleaseId id defining one KieBase with one KieSession
> 2. get a KieContainer from KieServices.newKieContainer(id) and obtain a KieSession from this KieContainer; insert test facts into this session, no problem occurs
> 3. get another KieContainer from KieServices.newKieContainer(id) and obtain another KieSession from this KieContainer; try to insert test facts into this session, a ClassCastException occurs (see attachment for the full stacktrace):
> java.lang.ClassCastException: org.drools.compiler.integrationtests.Parent cannot be cast to org.drools.compiler.integrationtests.Parent
> at ConditionEvaluator1113e873a5ac4b8a98ffd475b0b5df68.evaluate(Unknown Source)
> at org.drools.core.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:212)
> at org.drools.core.rule.constraint.MvelConstraint.isAllowedCachedLeft(MvelConstraint.java:181)
> at org.drools.core.common.DoubleNonIndexSkipBetaConstraints.isAllowedCachedLeft(DoubleNonIndexSkipBetaConstraints.java:134)
> at org.drools.core.reteoo.JoinNode.propagateFromLeft(JoinNode.java:135)
> ....
> Please note that Parent is a class for fact defined in DRL. The exception happens during the insert operation (NamedEntryPoint.insert).
> Actual results:
> Inserting facts into the second KieSession throws a CCE.
> Expected results:
> Inserting facts works for both KieSessions.
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
11 years, 3 months