[rules-users] Problem with JPA session persistence in Drools Flow (5.0.1)

SBalakrishnan Sanjay.Balakrishnan at fnis.com
Thu Aug 13 15:49:13 EDT 2009


Thanks Kris 

Will download from the below link and check.

Quick question, do you know when the official 5.1 release will be available
?






Kris Verlaenen wrote:
> 
> The fix for this issue has been added to trunk about a month ago already
> I think, have you already tried with the 5.1.0 SNAPSHOT release? Does
> this solve your issue?
> 
> You can get the snapshot at
> https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/
> 
> Kris
> 
> Quoting SBalakrishnan <Sanjay.Balakrishnan at fnis.com>:
> 
>> 
>> Looks like I am running into the same/similar issue while recreating
>> from a
>> session_id.
>> Exception pasted below.
>> 
>> Any idea whether it will be addressed in the coming release ?
>> 
>> 
>> Thanks in advance..
>> 
>> 
>> /*--------------------------------------------*/
>> 
>> Hibernate: select sessioninf0_.id as id0_0_, sessioninf0_.dirty as
>> dirty0_0_, sessioninf0_.lastModificationDate as lastModi3_0_0_,
>> sessioninf0_.rulesByteArray as rulesByt4_0_0_, sessioninf0_.startDate
>> as
>> startDate0_0_ from SessionInfo sessioninf0_ where sessioninf0_.id=?
>> java.lang.RuntimeException: Unable to load session snapshot
>> 	at
>>
> org.drools.persistence.session.JPASessionMarshallingHelper.loadSnapshot(JPASessionMarshallingHelper.java:112)
>> 	at
>>
> org.drools.persistence.session.JPASessionMarshallingHelper.<init>(JPASessionMarshallingHelper.java:46)
>> 	at
>>
> org.drools.persistence.session.SingleSessionCommandService.<init>(SingleSessionCommandService.java:171)
>> 	at
>>
> org.drools.persistence.jpa.impl.JPAKnowledgeServiceProviderImpl.loadStatefulKnowledgeSession(JPAKnowledgeServiceProviderImpl.java:75)
>> 	at
>>
> org.drools.persistence.jpa.JPAKnowledgeService.loadStatefulKnowledgeSession(JPAKnowledgeService.java:102)
>> 	at
>>
> org.drools.examples.process.order.OrderExample.createWorkingMemory(OrderExample.java:257)
>> 	at
>>
> org.drools.examples.process.order.OrderExample.<init>(OrderExample.java:99)
>> 	at
>> org.drools.examples.process.order.OrderExample.main(OrderExample.java:80)
>> Caused by: java.lang.NullPointerException
>> 	at
>>
> org.drools.marshalling.impl.InputMarshaller.readLeftTuple(InputMarshaller.java:496)
>> 	at
>>
> org.drools.marshalling.impl.InputMarshaller.readLeftTuples(InputMarshaller.java:426)
>> 	at
>>
> org.drools.marshalling.impl.InputMarshaller.readFactHandles(InputMarshaller.java:349)
>> 	at
>>
> org.drools.marshalling.impl.InputMarshaller.readSession(InputMarshaller.java:207)
>> 	at
>>
> org.drools.marshalling.impl.DefaultMarshaller.unmarshall(DefaultMarshaller.java:75)
>> 	at
>>
> org.drools.persistence.session.JPASessionMarshallingHelper.loadSnapshot(JPASessionMarshallingHelper.java:104)
>> /*--------------------------------------------*/
>> 
>> 
>> Mauricio Salatino wrote:
>> > 
>> > Ok, I will try to take a look at it.. this week..
>> > I will let you know if I can fix it
>> > 
>> > 2009/7/28 DroolsUser <rafiuddin.mk at gmail.com>:
>> >> Mark / salaboy, I am also facing same problem while recreate the
>> session
>> >> from database. Can you advice any alternative, so that I can go
>> forward
>> >> till
>> >> the next release. Moreover when is the new release is ....... Do
>> new
>> >> release
>> >> will targeting this kind problem? Please suggest any alternative
>> to
>> >> recreate
>> >> the session from db. Thanks in advance......
>> >>
>> >> gairey wrote:
>> >> Mark, Done: https://jira.jboss.org/jira/browse/JBRULES-2199 -
>> thanks for
>> >> the
>> >> quick response. Regards, Alan Mark Proctor Sent by:
>> >> rules-users-bounces at lists.jboss.org 08/07/2009 13:49 Please
>> respond to
>> >> Rules
>> >> Users List To Rules Users List cc Subject Re: [rules-users]
>> Problem with
>> >> JPA
>> >> session persistence in Drools Flow (5.0.1) Can you open a JIRA for
>> this,
>> >> and
>> >> we'll make sure it's done in the next few weeks:
>> >> https://jira.jboss.org/jira/browse/JBRULES thanks Mark
>> >> Alan.Gairey at tessella.com wrote: I'm currently using Drools Flow
>> with JPA
>> >> session persistence enabled as described in section 5.1 of the
>> User
>> >> Guide.
>> >> As a process executes, session information is saved to the H2
>> database
>> >> correctly. The problem comes if a process only executes part way
>> through,
>> >> and I then try to finish the process by recreating a session using
>> the
>> >> code:
>> >> // recreate the session from database using the sessionId ksession
>> =
>> >> JPAKnowledgeService.loadStatefulKnowledgeSession( sessionId,
>> kbase, null,
>> >> env ); This gives me a NullPointerException. Having looked into
>> the
>> >> Drools
>> >> Flow source code, I think the problem is in the class
>> >>
>>
> drools-persistence-jpa\src\main\java\org\drools\persistence\session\SingleSessionCommandService.java.
>> >> The 4th constructor of this class is called as part of the loading
>> of a
>> >> knowledge session from the H2 database; this in turn leads to the
>> >> afterCompletion method of the inner class SynchronizationImpl
>> being
>> >> called.
>> >> The final two lines of this method are:
>> ((JPAProcessInstanceManager)
>> >> ((ReteooWorkingMemory)
>> >> session).getProcessInstanceManager()).clearProcessInstances();
>> >> ((JPAWorkItemManager) ((ReteooWorkingMemory)
>> >> session).getWorkItemManager()).clearWorkItems(); However, when
>> called via
>> >> the route described above, the session member variable of
>> >> SingleSessionCommandService has not been set, thus causing the
>> >> NullPointerException. (Interestingly, running the unit tests for
>> >> drools-persistence-jpa does result in the NullPointerException
>> being
>> >> thrown
>> >> multiple times, although the tests are still listed as having
>> passed.) I
>> >> believe enclosing the above two lines as follows will fix the
>> problem: if
>> >> (session != null) { ((JPAProcessInstanceManager)
>> ((ReteooWorkingMemory)
>> >> session).getProcessInstanceManager()).clearProcessInstances();
>> >> ((JPAWorkItemManager) ((ReteooWorkingMemory)
>> >> session).getWorkItemManager()).clearWorkItems(); } Also, in the
>> 4th
>> >> constructor of SingleSessionCommandService, after the session has
>> been
>> >> set,
>> >> the following line needs to be added to ensure the session id is
>> the same
>> >> as
>> >> the session info id: ((ReteooStatefulSession)
>> this.session).setId(
>> >> this.sessionInfo.getId() ); (This line is present at the end of
>> the 3rd
>> >> constructor.) It would be great if this fix could make it into the
>> Drools
>> >> 5.1 release. Thanks.
>> _______________________________________________
>> >> 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
>> >> _______________________________________________ rules-users
>> mailing list
>> >> rules-users at lists.jboss.org
>> >> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>
>> >> ________________________________
>> >> View this message in context: Re: Problem with JPA session
>> persistence in
>> >> Drools Flow (5.0.1)
>> >> Sent from the drools - user mailing list archive at Nabble.com.
>> >>
>> >> _______________________________________________
>> >> rules-users mailing list
>> >> rules-users at lists.jboss.org
>> >> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>
>> >>
>> > 
>> > 
>> > 
>> > -- 
>> >  - http://salaboy.wordpress.com
>> >  - http://www.jbug.com.ar
>> >  - Salatino "Salaboy" Mauricio -
>> > _______________________________________________
>> > rules-users mailing list
>> > rules-users at lists.jboss.org
>> > https://lists.jboss.org/mailman/listinfo/rules-users
>> > 
>> > 
>> 
>> -- 
>> View this message in context:
>>
> http://www.nabble.com/Problem-with-JPA-session-persistence-in-Drools-Flow-%285.0.1%29-tp24377236p24909794.html
>> Sent from the drools - user mailing list archive at Nabble.com.
>> 
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>> 
> 
> 
> 
> 
> Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
> 
> 

-- 
View this message in context: http://www.nabble.com/Problem-with-JPA-session-persistence-in-Drools-Flow-%285.0.1%29-tp24377236p24957542.html
Sent from the drools - user mailing list archive at Nabble.com.




More information about the rules-users mailing list