[rules-users] no visitor implementation for : class org.drools.rule.TypeDeclaration
Tina Vießmann
tviessmann at stud.hs-bremen.de
Sun Oct 24 18:48:35 EDT 2010
Hi Esteban,
#2 is still a problem for me. Have you found something out?
Thank you.
Tina
> Hi,
>
> #1 I'm not sure if I've understood it correct. Is the message
> displayed every time a resource containing declares is modified or
> does is it displayed if the declare statements are changed?
> The message will appear every time a resource containing a type
> definition is modified.
>
> #2 The following extract of my original log extract says that the LHS
> of two rules has been changed. But I haven't modified anything on
> them. I've just deleted a rule. So what does it mean? Or am I
> missunderstanding the messages? Because for the the first rule no
> changes have been detected (and that is what I would expect for all
> rules except the deleted on.)
> This is strange. This message should only appear if the LHS of a rule
> has changed. I will take a look to see if this is a bug.
>
>
> Best,
>
> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>
> Esteban Aliverti
> - Developer @ http://www.plugtree.com <http://www.plugtree.com>
> - Blog @ http://ilesteban.wordpress.com
>
>
> 2010/8/24 Tina Vießmann <tviessmann at stud.hs-bremen.de
> <mailto:tviessmann at stud.hs-bremen.de>>
>
> Thank you for the explanation, Esteban. :)
> I'm sorry, but I have still some uncertainties about it.
>
> #1 I'm not sure if I've understood it correct. Is the message
> displayed every time a resource containing declares is modified or
> does is it displayed if the declare statements are changed?
>
> #2 The following extract of my original log extract says that the
> LHS of two rules has been changed. But I haven't modified anything
> on them. I've just deleted a rule. So what does it mean? Or am I
> missunderstanding the messages? Because for the the first rule no
> changes have been detected (and that is what I would expect for
> all rules except the deleted on.)
>
> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
> [Rule name=/Warning threshold exceeded to many times/,
> agendaGroup=MAIN, salience=0, no-loop=false] didn't change.
> Removing from diff package and adding it to unmodified list.
> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
> Comparing [Rule name=/_I_nsert Watcher Into Knowledge Base/,
> agendaGroup=MAIN, salience=0, no-loop=false] against [Rule
> name=Insert Watcher Into Knowledge Base, agendaGroup=MAIN,
> salience=0, no-loop=false]
> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
> *The rules have different LHS*
> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
> Comparing [Rule name=/Add Event to Watcher Set/,
> agendaGroup=MAIN, salience=0, no-loop=false] against [Rule
> name=Add Event to Watcher Set, agendaGroup=MAIN, salience=0,
> no-loop=false]
> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
> *The rules have different LHS*
>
> Thanks :)
> Tina
>
>
>
> Am 23.08.2010 23:33, schrieb Esteban Aliverti:
>> When working on incremental change-set processing mode, Knowledge
>> Agent performs a diff between the original and the modified
>> resources. Modified resources are compiled, and a visitor pattern
>> is used to loop over knowledge definitions (such as rules,
>> functions, queries, etc.).
>> So if rule1 was modified in the new resource, it is removed from
>> the original kbase and replaced with the new implementation. The
>> thing is that kagent doesn't implement a visitor for
>> TypeDeclaration (when you use *declare* in your DRL to define
>> your model) so it doesn't know how to handle them.
>> I have recently fix a typo in the visitor implementation that
>> prevented you to receive a better message:
>>
>> "BinaryResourceDiffProducerImpl: Couldn't handle
>> "+yourDefinitionName+". We must leave it in the new Package."
>>
>> This means that kagent doesn't support modifications on declared
>> types yet.
>>
>> Best,
>>
>>
>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>>
>> Esteban Aliverti
>> - Developer @ http://www.plugtree.com <http://www.plugtree.com>
>> - Blog @ http://ilesteban.wordpress.com
>>
>>
>> 2010/8/23 Tina Vießmann <tviessmann at stud.hs-bremen.de
>> <mailto:tviessmann at stud.hs-bremen.de>>
>>
>> Hi,
>>
>> I'm getting a two red highlighted outputs in eclipse if I
>> modify my rules file during run time. Besides that the
>> modifications seem to work.
>> What does it mean?
>>
>> The full output I get when the resource change is detected is
>> listed below. The bold lines are the concerned ones.
>>
>> Thanks for any help! :)
>> Tina
>>
>>
>> [2010:08:235 21:08:296:debug] ResourceChangeScanner attempt
>> to scan 1 resources
>> [2010:08:235 21:08:296:debug] ResourceChangeScanner modified
>> resource=[ClassPathResource path='testRule.drl'] :
>> 1282559206875 : 1282591705000
>> [2010:08:235 21:08:296:debug] ResourceChangeNotification
>> received ChangeSet notification
>> [2010:08:235 21:08:296:debug] ResourceChangeScanner thread is
>> waiting for 10 seconds.
>> [2010:08:235 21:08:296:debug] ResourceChangeNotification
>> processing ChangeSet
>> [2010:08:235 21:08:296:debug] ResourceChangeNotification
>> ChangeSet modified resource=[ClassPathResource
>> path='testRule.drl'] for
>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4
>> [2010:08:235 21:08:296:debug] KnowledgeAgent received
>> ChangeSet changed notification
>> [2010:08:235 21:08:296:info] KnowledgeAgent applying ChangeSet
>> [2010:08:235 21:08:296:debug] KnowledgeAgent removing
>> mappings for resource=[ClassPathResource path='testRule.drl']
>> with unsubscribe=true
>> [2010:08:235 21:08:296:debug] KnowledgeAgent notifier
>> unsubscribing to resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:296:debug] ResourceChangeNotification
>> unsubscribing
>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:296:debug] ResourceChangeScanner
>> unsubcribing
>> notifier=org.drools.io.impl.ResourceChangeNotifierImpl at 13576a2 to
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:296:debug] ResourceChangeScanner
>> resource=[ClassPathResource path='testRule.drl'] now has no
>> subscribers
>> [2010:08:235 21:08:296:debug] KnowledgeAgent rebuilding
>> KnowledgeBase using ChangeSet
>> [2010:08:235 21:08:296:info] KnowledgeAgent performing an
>> incremental build of the ChangeSet
>> [2010:08:235 21:08:296:debug] ResourceChangeNotification
>> thread is waiting for queue update
>> [INFO ] 21:30:10,375 [main] "Event retracted." (DRL Logger)
>> [2010:08:235 21:08:453:debug] KnowledgeAgent: Diffing:
>> [ClassPathResource path='testRule.drl']
>> [INFO ] 21:30:10,453 [main] "Event retracted." (DRL Logger)
>> [2010:08:235 21:08:500:debug] BinaryResourceDiffProducerImpl:
>> [Rule name=delete parameter values, agendaGroup=MAIN,
>> salience=0, no-loop=false] is not present anymore. Adding to
>> removed list.
>> [2010:08:235 21:08:500:debug] BinaryResourceDiffProducerImpl:
>> org.drools.rule.Function at 67fe80 did change. Marking as
>> removed so it new version could be added later.
>> [2010:08:235 21:08:500:debug] BinaryResourceDiffProducerImpl:
>> Comparing [Rule name=Warning threshold exceeded to many
>> times, agendaGroup=MAIN, salience=0, no-loop=false] against
>> [Rule name=Warning threshold exceeded to many times,
>> agendaGroup=MAIN, salience=0, no-loop=false]
>> *no visitor implementation for : class
>> org.drools.rule.TypeDeclaration :
>> org.drools.rule.TypeDeclaration at 95f290
>> no visitor implementation for : class
>> org.drools.rule.TypeDeclaration :
>> org.drools.rule.TypeDeclaration at bfd66a*
>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
>> [Rule name=Warning threshold exceeded to many times,
>> agendaGroup=MAIN, salience=0, no-loop=false] didn't change.
>> Removing from diff package and adding it to unmodified list.
>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
>> Comparing [Rule name=Insert Watcher Into Knowledge Base,
>> agendaGroup=MAIN, salience=0, no-loop=false] against [Rule
>> name=Insert Watcher Into Knowledge Base, agendaGroup=MAIN,
>> salience=0, no-loop=false]
>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
>> The rules have different LHS
>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
>> Comparing [Rule name=Add Event to Watcher Set,
>> agendaGroup=MAIN, salience=0, no-loop=false] against [Rule
>> name=Add Event to Watcher Set, agendaGroup=MAIN, salience=0,
>> no-loop=false]
>> [2010:08:235 21:08:546:debug] BinaryResourceDiffProducerImpl:
>> The rules have different LHS
>> [2010:08:235 21:08:546:debug] KnowledgeAgent: Removing: [Rule
>> name=delete parameter values, agendaGroup=MAIN, salience=0,
>> no-loop=false]
>> [2010:08:235 21:08:546:debug] KnowledgeAgent removing
>> Rule=[Rule name=delete parameter values, agendaGroup=MAIN,
>> salience=0, no-loop=false] from
>> package=net.eads.astrium.aits.cep.rules
>> [2010:08:235 21:08:546:debug] KnowledgeAgent: Removing:
>> org.drools.rule.Function at 67fe80
>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>> resource=[ClassPathResource path='testRule.drl'] to
>> KnowledgeDefinition=[Rule name=Warning threshold exceeded to
>> many times, agendaGroup=MAIN, salience=0, no-loop=false]
>> [2010:08:235 21:08:562:debug] KnowledgeAgent obtaining pkg
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>> resource=[ClassPathResource path='testRule.drl'] to
>> KnowledgeDefinition=[Rule name=Insert Watcher Into Knowledge
>> Base, agendaGroup=MAIN, salience=0, no-loop=false]
>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier
>> subscribing to resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] ResourceChangeNotification
>> subscribing
>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] ResourceChangeScanner
>> subcribing
>> notifier=org.drools.io.impl.ResourceChangeNotifierImpl at 13576a2 to
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>> resource=[ClassPathResource path='testRule.drl'] to
>> KnowledgeDefinition=[Rule name=Add Event to Watcher Set,
>> agendaGroup=MAIN, salience=0, no-loop=false]
>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier
>> subscribing to resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] ResourceChangeNotification
>> subscribing
>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>> resource=[ClassPathResource path='testRule.drl'] to
>> KnowledgeDefinition=org.drools.rule.TypeDeclaration at 17dff15
>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier
>> subscribing to resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] ResourceChangeNotification
>> subscribing
>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>> resource=[ClassPathResource path='testRule.drl'] to
>> KnowledgeDefinition=org.drools.rule.TypeDeclaration at f5cbda
>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier
>> subscribing to resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] ResourceChangeNotification
>> subscribing
>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] KnowledgeAgent mapping
>> resource=[ClassPathResource path='testRule.drl'] to
>> KnowledgeDefinition=org.drools.rule.Function at 11a59ce
>> [2010:08:235 21:08:562:debug] KnowledgeAgent notifier
>> subscribing to resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] ResourceChangeNotification
>> subscribing
>> listener=org.drools.agent.impl.KnowledgeAgentImpl at b40ec4 to
>> resource=[ClassPathResource path='testRule.drl']
>> [2010:08:235 21:08:562:debug] KnowledgeAgent adding
>> KnowledgeDefinitionsPackage net.eads.astrium.aits.cep.rules
>> [2010:08:235 21:08:578:info] KnowledgeAgent incremental build
>> of KnowledgeBase finished and in use
>> [2010:08:235 21:08:578:debug] KnowledgeAgent finished
>> rebuilding KnowledgeBase using 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
>>
>>
>>
>> _______________________________________________
>> 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
>
>
>
> _______________________________________________
> 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/20101025/63824865/attachment.html
More information about the rules-users
mailing list