[rules-users] Problem using KnowledgeAgent

Mark Proctor mproctor at codehaus.org
Fri Feb 20 20:12:04 EST 2009


I've isolated the problem to an MVEL regression, I've added a unit test 
and the MVEL author will fix it ASAP.

    public void testInfiniteLoop() {
        String str = "";
        str += "int insuranceAmt = caseRate + (charges * pctDiscount / 
100); \n";
        str += "update (estimate); \n";

        Map<String, Macro> macros = new HashMap<String, Macro>();
        macros.put( "update",
                    new Macro() {
                        public String doMacro() {
                            return "drools.update";
                        }
                    } );
       
        String result = parseMacros( str, macros);  
       
        str = "";
        str += "int insuranceAmt = caseRate + (charges * pctDiscount / 
100); \n";
        str += "drools.update (estimate); \n";  

        assertEquals( str, result );
    }

Mark
Seaver, Daniel (GE Healthcare) wrote:
> Thanks for the clarification, Mark.
>  
> I followed your links to get the latest of the greatest. Happy to see 
> all those blue circles in the build history. I downloaded:
>  
> drools-5.0.0.SNAPSHOT-eclipse-all.zip
> drools-5.0.0.SNAPSHOT-guvnor.zip
>  
> Then I updated eclipse with the contents of ...eclips-all.zip, Started 
> eclipse and created a new runtime (which I put in my 
> jboss/server/default/lib folder and verified that the ones I had 
> installed there before were changed). I replaced the M5 version of 
> guvnor with the new one, and restarted everything.
>  
> That should be all I need to do, right? Been at this for a while, so I 
> may be having a mental lapse.
>  
> Anyways, several projects that I could build before the upgrade don't 
> build anymore. The build process hangs in Guvnor, as well as in Eclipse.
>  
> This is the last output I get in the server's log when trying to 
> compile the package I'm using for our test:
>
> 21:27:25,132 INFO [STDOUT] DEBUG 19-02 21:27:25,132 
> (_SelectorManager.java:<init>:27_) Loading selectors
>
> 21:27:25,195 INFO [STDOUT] DEBUG 19-02 21:27:25,195 
> (_ContentManager.java:<init>:45_) Loading content properties
>
> The last thing I see in Eclipse when I try a complete clean on our 
> primary application is:
>  
>     Building Workspace - Building all...: Invoking "Drools Builder' on 
> '/cbo-ejb'.
>  
> The status shows 46% complete and just hangs there.
>  
> I think it's time for a cocktail and a nice long sleep. I'll check in 
> tomorrow before rolling back to M5.
>  
> Dan
>
> ------------------------------------------------------------------------
> *From:* Mark Proctor [mailto:mproctor at codehaus.org]
> *Sent:* Thursday, February 19, 2009 3:25 PM
> *To:* Rules Users List
> *Subject:* Re: [rules-users] Problem using KnowledgeAgent
>
> On the left side you see a list of red and blue circles, red indicates 
> that build was a failure and blue a success:
> https://hudson.jboss.org/hudson/job/drools/
>
> The last successful build has it's artifacts at:
> https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/
>
> As you can see the last build was successful so now you can get all 
> the binaries from above.
>
> Mark
> Edson Tirelli wrote:
>>
>>    The tests are fixed and committed to revision #25353.
>>
>>    []s
>>    Edson
>>
>> 2009/2/19 Mark Proctor <mproctor at codehaus.org 
>> <mailto:mproctor at codehaus.org>>
>>
>>     Dan Seaver wrote:
>>>     Yes, the exception occurs on both the filesystem and Guvnor, and it happens
>>>     whether I set the value to true or false.
>>>       
>>     I found the issue and reviewed the agent code and this has been
>>     fixed in trunk. Edson si just fixing two failing tests, but as
>>     soon as the build turns blue again grab the latest artifact
>>     builds and give it a try:
>>     https://hudson.jboss.org/hudson/job/drools/
>>
>>     Mark
>>
>>>     Michael Neale wrote:
>>>       
>>>>     So from the filesystem it won't pick up changes? (does it throw the
>>>>     same exception).
>>>>
>>>>
>>>>     On Thu, Feb 19, 2009 at 5:34 AM, Dan Seaver <dan.seaver at ge.com> <mailto:dan.seaver at ge.com> wrote:
>>>>         
>>>>>     Mark,
>>>>>     I have some more information for you. The exception occurs when I issue:
>>>>>
>>>>>     agent.monitorResourceChangeEvents(true|false)
>>>>>
>>>>>     If I comment out that code, I don't get the exception, but I don't get
>>>>>     changes either. I tried it with both the Guvnor repository and with a
>>>>>     deployed package on the file system.
>>>>>
>>>>>     I won't have time to create the test you requested until the weekend. Let
>>>>>     me
>>>>>     know if you still want it.
>>>>>
>>>>>     Dan
>>>>>
>>>>>
>>>>>     Mark Proctor wrote:
>>>>>           
>>>>>>     Dan Seaver wrote:
>>>>>>             
>>>>>>>     I setup a KnowledgeAgent using the example code in the JavaDoc for
>>>>>>>     KnowledgeAgentFactory to access a compiled package in Guvnor. The
>>>>>>>     package
>>>>>>>     runs fine, but changes to the package are not picked up. I believe this
>>>>>>>     is
>>>>>>>     due to the ChangeSet notification thread being interrupted. But why?
>>>>>>>
>>>>>>>               
>>>>>>     Hmm that's not good. I have the following unit test:
>>>>>>     http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/agent/KnowledgeAgentTest.java
>>>>>>
>>>>>>     Could you provide an update for new tests for detecting url changes?
>>>>>>     When making the test you might find it easier to look at the previous
>>>>>>     ruleagent tests:
>>>>>>     http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-core/src/test/java/org/drools/agent/URLScannerTest.java
>>>>>>
>>>>>>     Mark
>>>>>>             
>>>>>>>     Also, I'm getting some messages about failing to read schema document.
>>>>>>>     I
>>>>>>>     think it is caused by the xml for the ChangeSet, but I'm using the
>>>>>>>     example
>>>>>>>     from the JavaDocs.
>>>>>>>
>>>>>>>               
>>>>>>     We haven't provided an XSD yet, so it'll provide schema validation
>>>>>>     issues, those can be ignored.
>>>>>>             
>>>>>>>     Here's a snippet from the log:
>>>>>>>
>>>>>>>     [2009:02:48 23:02:905:info] KnowledegAgent has started listening for
>>>>>>>     ChangeSet notifications
>>>>>>>     [2009:02:48 23:02:905:info] KnowledgAgent created, with configuration:
>>>>>>>     monitorChangeSetEvents=true scanResources=true scanDirectories=true
>>>>>>>     [2009:02:48 23:02:905:exception
>>>>>>>     java.lang.RuntimeException: KnowledgeAgent ChangeSet notification
>>>>>>>     thread
>>>>>>>     has
>>>>>>>     been interrupted
>>>>>>>          at
>>>>>>>     org.drools.agent.impl.KnowledgeAgentImpl$ChangeSetNotificationDetector.run(KnowledgeAgentImpl.java:465)
>>>>>>>          at java.lang.Thread.run(Unknown Source)
>>>>>>>     Caused by: java.lang.InterruptedException
>>>>>>>          at
>>>>>>>     java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(Unknown
>>>>>>>     Source)
>>>>>>>          at
>>>>>>>     java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown
>>>>>>>     Source)
>>>>>>>          at java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
>>>>>>>          at
>>>>>>>     org.drools.agent.impl.KnowledgeAgentImpl$ChangeSetNotificationDetector.run(KnowledgeAgentImpl.java:463)
>>>>>>>          ... 1 more
>>>>>>>     [2009:02:48 23:02:937:info] KnowledegAgent has stopped listening for
>>>>>>>     ChangeSet notifications
>>>>>>>     (null: 1, 207): schema_reference.4: Failed to read schema document
>>>>>>>     'drools-change-set-5.0.xsd', because 1) could not find the document; 2)
>>>>>>>     the
>>>>>>>     document could not be read; 3) the root element of the document is not
>>>>>>>     <xsd:schema>.
>>>>>>>     (null: 1, 207): cvc-elt.1: Cannot find the declaration of element
>>>>>>>     'change-set'.
>>>>>>>     (null: 1, 216): schema_reference.4: Failed to read schema document
>>>>>>>     'drools-change-set-5.0.xsd', because 1) could not find the document; 2)
>>>>>>>     the
>>>>>>>     document could not be read; 3) the root element of the document is not
>>>>>>>     <xsd:schema>.
>>>>>>>     (null: 1, 343): schema_reference.4: Failed to read schema document
>>>>>>>     'drools-change-set-5.0.xsd', because 1) could not find the document; 2)
>>>>>>>     the
>>>>>>>     document could not be read; 3) the root element of the document is not
>>>>>>>     <xsd:schema>.
>>>>>>>     [2009:02:48 23:02:390:info] KnowledgAgent applying ChangeSet
>>>>>>>
>>>>>>>
>>>>>>>               
>>>>>>     _______________________________________________
>>>>>>     rules-users mailing list
>>>>>>     rules-users at lists.jboss.org <mailto:rules-users at lists.jboss.org>
>>>>>>     https://lists.jboss.org/mailman/listinfo/rules-users
>>>>>>
>>>>>>
>>>>>>             
>>>>>     --
>>>>>     View this message in context:
>>>>>     http://www.nabble.com/Problem-using-KnowledgeAgent-tp22073944p22085204.html
>>>>>     Sent from the drools - user mailing list archive at Nabble.com.
>>>>>
>>>>>     _______________________________________________
>>>>>     rules-users mailing list
>>>>>     rules-users at lists.jboss.org <mailto:rules-users at lists.jboss.org>
>>>>>     https://lists.jboss.org/mailman/listinfo/rules-users
>>>>>
>>>>>           
>>>>     -- 
>>>>     Michael D Neale
>>>>     home: www.michaelneale.net <http://www.michaelneale.net>
>>>>     blog: michaelneale.blogspot.com <http://michaelneale.blogspot.com>
>>>>     _______________________________________________
>>>>     rules-users mailing list
>>>>     rules-users at lists.jboss.org <mailto:rules-users at lists.jboss.org>
>>>>     https://lists.jboss.org/mailman/listinfo/rules-users
>>>>
>>>>
>>>>         
>>>       
>>
>>
>>     _______________________________________________
>>     rules-users mailing list
>>     rules-users at lists.jboss.org <mailto:rules-users at lists.jboss.org>
>>     https://lists.jboss.org/mailman/listinfo/rules-users
>>
>>
>>
>>
>> -- 
>>  Edson Tirelli
>>  JBoss Drools Core Development
>>  JBoss, a division of Red Hat @ www.jboss.com <http://www.jboss.com>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>>   
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20090221/634e5ab7/attachment.html 


More information about the rules-users mailing list