It seems odd to me that there are no @Transactional annotations in either HibernateLogicPersonDAO or PersonDataSource.
That doesn't seem related though. -Darius On Thu, Oct 20, 2011 at 8:20 AM, Tammy Dugan <[email protected]> wrote: > You are correct that the logic caching code was never merged. Ashley, our > tester, is changing the birthdate in the webapp and then generating a PSF > form that calls the birthdate rule. When I trace through, it goes down into > the PersonDatasource and calls criteria.list but does NOT get the updated > birthdate. The birthdate change and rule execution should definitely be in > separate transactions as far as I can tell. > > Thanks, > > Tammy > > > On 10/20/2011 11:07 AM, Darius Jazayeri wrote: > > I don't know why hibernate would be caching this of all things. > > Also, I thought that the logic caching code was never merged in. > > Tammy, is all of this happening in a single transaction and/or rule > execution? Or are you changing the birthdate and *then* executing a rule? > > -Darius > > On Thu, Oct 20, 2011 at 3:58 AM, Ben Wolfe <[email protected]> wrote: > >> How long is your hibernate cache set to? I think it can be changed with >> the ehcache.xml file. >> >> My concern is why the logic cache is /not/ being hit. Or is the edit >> clearing that cache key properly and thats why its hitting the db again? >> >> Other than that, I'm out of ideas. Any other hibernate know-it-alls >> listening in? >> >> Ben >> >> >> On Wed, Oct 19, 2011 at 5:28 PM, Tammy Dugan <[email protected]> wrote: >> >>> Yes. The point is that I DON'T want it to cache the birthdate. I want it >>> to pull the new one. >>> >>> Thanks, >>> >>> Tammy >>> >>> >>> On 10/19/2011 10:08 AM, Ben Wolfe wrote: >>> >>> Are you using this patch on the logic module? >>> https://tickets.openmrs.org/browse/LOGIC-94 >>> >>> Apparently the token service wasn't really using the cache... >>> >>> Ben >>> >>> On Wed, Oct 19, 2011 at 4:26 PM, Tammy Dugan <[email protected]> wrote: >>> >>>> If we update a person's birthdate in the webapp and run the following: >>>> >>>> context.read(patient.getPatientId(), >>>> context.getLogicDataSource("person"), "BIRTHDATE").toDatetime(); >>>> >>>> We get the old birthdate instead of the new one. I drilled down into the >>>> logic code and the criteria.list is actually getting executed so the issue >>>> is not that the rule result is cached. The issue seems to be that hibernate >>>> is caching the birthdate and not updating it with the new value when >>>> criteria.list is called. Here is the criteria getting executed: >>>> >>>> CriteriaImpl(org.openmrs.Person:this[Subcriteria(names:name)][personId >>>> in (28039)]) >>>> >>>> It is line 108 of HibernateLogicPersonDAO. >>>> >>>> Any ideas? >>>> >>>> Thanks, >>>> >>>> Tammy Dugan >>>> >>>> -- >>>> Tammy Dugan >>>> CHIRDL Technical Lead >>>> Children's Health Services Research >>>> IU School of Medicine >>>> >>>> _________________________________________ >>>> >>>> To unsubscribe from OpenMRS Developers' mailing list, send an e-mail to >>>> [email protected] with "SIGNOFF openmrs-devel-l" in the body >>>> (not the subject) of your e-mail. >>>> >>>> [mailto:[email protected]?body=SIGNOFF%20openmrs-devel-l] >>>> >>> >>> ------------------------------ >>> Click here to >>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>> OpenMRS Developers' mailing list >>> >>> >>> -- >>> Tammy Dugan >>> CHIRDL Technical Lead >>> Children's Health Services Research >>> IU School of Medicine >>> >>> ------------------------------ >>> Click here to >>> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >>> OpenMRS Developers' mailing list >> >> >> ------------------------------ >> Click here to >> unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from >> OpenMRS Developers' mailing list >> > > ------------------------------ > Click here to > unsubscribe<[email protected]?body=SIGNOFF%20openmrs-devel-l>from > OpenMRS Developers' mailing list > > > -- > Tammy Dugan > CHIRDL Technical Lead > Children's Health Services Research > IU School of Medicine > > _________________________________________ To unsubscribe from OpenMRS Developers' mailing list, send an e-mail to [email protected] with "SIGNOFF openmrs-devel-l" in the body (not the subject) of your e-mail. [mailto:[email protected]?body=SIGNOFF%20openmrs-devel-l]

