On 18/04/2013, Davide Sottara <[email protected]> wrote: > Stefan, > 5.6 is coming out in a few days.. it will be a major fix release where a > number of bugs have been isolated > and corrected. The reason it's not out yet is because more edge case > errors are being found and > corrected. I hope that an upgrade to 5.6 will be recommended to all 5.5 > users
Curious, how that will be done, with anonymous download...? They don't lurk on this list, either... -W > Davide > > On 04/18/2013 09:41 AM, Stefan Schuster wrote: >> Thanks for all answers. >> >> Finally I found the ticket for this issue: >> https://issues.jboss.org/browse/DROOLS-15 >> >> Despite all the great functionality in Drools, this bug makes me >> really afraid. I can live with bugs that throw exceptions or even >> crash the application. But simply returning a wrong value is the worst >> case I can imagine for an algorithmic library. >> >> Is this such a special case that it has no effect in every days use? >> I mean, this error occurs when starting one of the examples that are >> part of the release, that doesn't sound like a special case to me, >> isn't it? >> >> Please don't misunderstand me, I have a deep respect for the developer >> of such complex systems like DROOLS, and I know from my own code that >> bugs simply happen. But I wonder why there is still this version >> without any warning the official release? >> >> Is it better to use an older version? >> >> best regards >> >> Stefan >> >> >> >> >> 2013/4/18 Mark Proctor <[email protected] >> <mailto:[email protected]>> >> >> There are a lot of fixes in the 5.x master. Anyone verified their >> bugs against this? I suspect this is fixed in that. >> >> >> Mark >> On 18 Apr 2013, at 16:21, Wolfgang Laun <[email protected] >> <mailto:[email protected]>> wrote: >> >> > Ah, my memory :-) >> > >> > http://lists.jboss.org/pipermail/rules-dev/2013-January/004338.html >> > >> > Mark has promised a fix for 3 months ago, but of course 5.5.0 >> remains broken. >> > >> > -W >> > >> > On 18/04/2013, Stefan Schuster <[email protected] >> <mailto:[email protected]>> wrote: >> >> Hi, thank you for your response. >> >> I'm using the latest stable release of Drools 5.5.0 final. >> >> Eclipse is Juno Service Release 2. >> >> >> >> Can you confirm, that the order 1,2,3 is the expected result? >> >> >> >> If this is a known bug, is there some kind of jira or bugzilla >> numer >> >> assigned to it? >> >> >> >> >> >> >> >> 2013/4/18 Wolfgang Laun <[email protected] >> <mailto:[email protected]>> >> >> >> >>> IIRC, this was a bug one or two minor versions ago. What >> version are you >> >>> using? >> >>> -W >> >>> >> >>> On 18/04/2013, Stefan Schuster <[email protected] >> <mailto:[email protected]>> wrote: >> >>>> For the sake of completeness, here is also the RuleRunner >> class used >> >>>> in >> >>>> this example: >> >>>> >> >>>> package org.drools.tutorials.banking; >> >>>> >> >>>> import java.util.Collection; >> >>>> >> >>>> import org.drools.KnowledgeBase; >> >>>> import org.drools.KnowledgeBaseFactory; >> >>>> import org.drools.builder.KnowledgeBuilder; >> >>>> import org.drools.builder.KnowledgeBuilderFactory; >> >>>> import org.drools.builder.ResourceType; >> >>>> import org.drools.definition.KnowledgePackage; >> >>>> import org.drools.io.ResourceFactory; >> >>>> import org.drools.runtime.StatefulKnowledgeSession; >> >>>> >> >>>> public class RuleRunner { >> >>>> >> >>>> public RuleRunner() { >> >>>> } >> >>>> >> >>>> public void runRules(String[] rules, >> >>>> Object[] facts) { >> >>>> >> >>>> KnowledgeBase kbase = >> KnowledgeBaseFactory.newKnowledgeBase(); >> >>>> KnowledgeBuilder kbuilder = >> >>>> KnowledgeBuilderFactory.newKnowledgeBuilder(); >> >>>> >> >>>> for ( int i = 0; i < rules.length; i++ ) { >> >>>> String ruleFile = rules[i]; >> >>>> System.out.println( "Loading file: " + ruleFile ); >> >>>> kbuilder.add( ResourceFactory.newClassPathResource( >> >>>> ruleFile, >> >>>> >> >>>> RuleRunner.class ), >> >>>> ResourceType.DRL ); >> >>>> } >> >>>> >> >>>> Collection<KnowledgePackage> pkgs = >> >>>> kbuilder.getKnowledgePackages(); >> >>>> kbase.addKnowledgePackages( pkgs ); >> >>>> StatefulKnowledgeSession ksession = >> >>>> kbase.newStatefulKnowledgeSession(); >> >>>> >> >>>> for ( int i = 0; i < facts.length; i++ ) { >> >>>> Object fact = facts[i]; >> >>>> System.out.println( "Inserting fact: " + fact ); >> >>>> ksession.insert( fact ); >> >>>> } >> >>>> >> >>>> ksession.fireAllRules(); >> >>>> } >> >>>> } >> >>>> >> >>>> >> >>>> 2013/4/18 Stefan Schuster <[email protected] >> <mailto:[email protected]>> >> >>>> >> >>>>> Hello, >> >>>>> >> >>>>> I have a problem with the banking tutorial number 3, which >> is part of >> >>> the >> >>>>> examples of drools expert. >> >>>>> It simply adds some Numbers as facts, and retracts them in an >> >>>>> increasing >> >>>>> order. >> >>>>> >> >>>>> It is very short, therefore I post the whole Code: >> >>>>> >> >>>>> >> >>>>> BankingExample3.java >> >>>>> _________________________________________________ >> >>>>> package org.drools.tutorials.banking; >> >>>>> >> >>>>> public class BankingExample3 { >> >>>>> public static void main(String[] args) { >> >>>>> Number[] numbers = new Number[] {wrap(3), wrap(1), >> wrap(4), >> >>>>> wrap(1), wrap(5)}; >> >>>>> new RuleRunner().runRules( new String[] { >> "Example3.drl" }, >> >>>>> numbers ); >> >>>>> } >> >>>>> >> >>>>> private static Integer wrap(int i) { >> >>>>> return new Integer(i); >> >>>>> } >> >>>>> } >> >>>>> _________________________________________________ >> >>>>> >> >>>>> >> >>>>> >> >>>>> Example3.drl: >> >>>>> _________________________________________________ >> >>>>> package org.drools.tutorials.banking >> >>>>> >> >>>>> rule "Rule 01" >> >>>>> when >> >>>>> $number : Number() >> >>>>> not Number( intValue < $number.intValue ) >> >>>>> then >> >>>>> System.out.println("Number found with value: " + >> >>>>> $number.intValue() ); >> >>>>> retract( $number ); >> >>>>> end >> >>>>> _________________________________________________ >> >>>>> >> >>>>> >> >>>>> Output: >> >>>>> _________________________________________________ >> >>>>> Loading file: Example3.drl >> >>>>> Inserting fact: 3 >> >>>>> Inserting fact: 1 >> >>>>> Inserting fact: 4 >> >>>>> Inserting fact: 1 >> >>>>> Inserting fact: 5 >> >>>>> Number found with value: 1 >> >>>>> Number found with value: 1 >> >>>>> Number found with value: 3 >> >>>>> Number found with value: 4 >> >>>>> Number found with value: 5 >> >>>>> _________________________________________________ >> >>>>> >> >>>>> >> >>>>> that seams absolute logically to me. >> >>>>> But now I alter the Numbers in the Java-Part: >> >>>>> Number[] numbers = new Number[] {wrap(3), wrap(1), wrap(2)}; >> >>>>> >> >>>>> and the output destroys everything I thought I understood: >> >>>>> Loading file: Example3.drl >> >>>>> Inserting fact: 3 >> >>>>> Inserting fact: 1 >> >>>>> Inserting fact: 2 >> >>>>> Number found with value: 1 >> >>>>> Number found with value: 3 >> >>>>> Number found with value: 2 >> >>>>> >> >>>>> >> >>>>> Can someone reproduce this behavior?? It seams absolutely >> strange to >> >>> me. >> >>>>> I would have expected the order 1,2,3. Any explanations? >> >>>>> >> >>>>> Thanks in advance for helping me! >> >>>>> >> >>>>> >> >>>>> >> >>>> >> >>> _______________________________________________ >> >>> rules-users mailing list >> >>> [email protected] <mailto:[email protected]> >> >>> https://lists.jboss.org/mailman/listinfo/rules-users >> >>> >> >> >> > _______________________________________________ >> > rules-users mailing list >> > [email protected] <mailto:[email protected]> >> > https://lists.jboss.org/mailman/listinfo/rules-users >> >> >> _______________________________________________ >> rules-users mailing list >> [email protected] <mailto:[email protected]> >> https://lists.jboss.org/mailman/listinfo/rules-users >> >> >> >> >> _______________________________________________ >> rules-users mailing list >> [email protected] >> https://lists.jboss.org/mailman/listinfo/rules-users > > _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
