Opened 11 years ago

Closed 11 years ago

#1401 closed defect (fixed)

One-to-one associations should not be synchronized in the data layer classes

Reported by: Nicklas Nordborg Owned by: Nicklas Nordborg
Priority: minor Milestone: BASE 2.14
Component: core Version:
Keywords: Cc:

Description (last modified by Nicklas Nordborg)

See source:/tags/2.13/src/core/net/sf/basedb/core/data/MeasuredBioMaterialData.java@HEAD#L163

The line calling bioWell.setBioMaterial() is made to make sure the one-to-one link is synchonized. The problem is that it effectively disables lazy loading of bio-wells since it initializes the proxy. The synchronization should be made at a higher level, eg. MeasuredBioMaterial.setBioWell().

This is slightly related to #1374, since a lot of annotations/experimental factors are probably associated with biomaterial items, and there is no need to initialize a lot of other things in this case.

Change History (4)

comment:1 Changed 11 years ago by Nicklas Nordborg

Owner: changed from everyone to Nicklas Nordborg
Status: newassigned

comment:2 Changed 11 years ago by Nicklas Nordborg

There is an exect copy of the same problem in HybridizationData.setArraySlide().

comment:3 Changed 11 years ago by Nicklas Nordborg

Description: modified (diff)
Summary: MeasuredBioMaterialData.setBioWell() should not call BioWellData.setBioMaterial()One-to-one associations should not be synchronized in the data layer classes

comment:4 Changed 11 years ago by Nicklas Nordborg

Resolution: fixed
Status: assignedclosed

(In [5119]) Fixes #1401: One-to-one associations should not be synchronized in the data layer classes

Note: See TracTickets for help on using tickets.