Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

Task #258 (closed)

Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

Newly set quantum strategy fails on flush.

Reported by: jburel Owned by: jamoore
Priority: critical Milestone: 3.0-M3
Component: Services Version: 3.0-M3
Keywords: sessions,flushing,hibernate,stateful,iteration2 Cc: cxallan
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: n.a.
Sprint: n.a.

Description

Crash when setting the new quantum strategy i.e. a new bit resolution.
Below the error message:Caused by:
ome.conditions.InternalException?: Wrapped Exception: (org.springframework.orm.hibernate3.HibernateSystemException?):
not-null property references a null or transient value: ome.model.display.QuantumDef?.details.owner; nested exception is org.hibernate.PropertyValueException?: not-null property references a null or transient value: ome.model.display.QuantumDef?.details.owner

at org.springframework.orm.hibernate3.SessionFactoryUtils?.convertHibernateAccessException(SessionFactoryUtils?.java:654)

Change History (4)

comment:1 Changed 14 years ago by jburel

Oops forgot to log in before entering ticket ;-)

comment:2 Changed 14 years ago by jmoore

  • Keywords sessions flushing hibernate stateful iteration2 added
  • Milestone changed from Unscheduled to 3.0-M3
  • Status changed from new to assigned
  • Summary changed from RE: Quantum strategy to Newly set quantum strategy fails on flush.
  • Version changed from 3.0-M1 to 3.0-M3

This is being caused by furtive flushings of the stateful bean. It shouldn't happen. Period. Will fix.

comment:3 Changed 14 years ago by jmoore

  • Cc callan added
  • Reporter changed from anonymous to jburel
  • Resolution set to fixed
  • Status changed from assigned to closed

r837 fixes. Some of this comes from not being able to test the rendering bean from trunk (#218). In general, the stateful session handling needs work, and only time and testing will test.

What this fix does is changes the use of FlushMode.NEVER (which Hibernate kindly deprecated from under us) to FlushMode.COMMIT, and added a check in EventHandler to not call flush if the interceptor joinpoint is a StatefulServiceInterface implementation. (Having that logic in the handlers is typically valid. Written up as #262)

comment:4 Changed 14 years ago by jmoore

r1039 updates the FlushMode? to MANUAL (NEVER is deprecated) and makes fixes for Spring 2.0 (#238), which handle the FlushMode?'s differently (especially now with JTA -- #427)

Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.199938 sec.)

We're Hiring!