Unnecessary version update on inverse-side of a 1-m relationship
----------------------------------------------------------------
Key: OPENJPA-843
URL: https://issues.apache.org/jira/browse/OPENJPA-843
Project: OpenJPA
Issue Type: Bug
Components: jdbc
Affects Versions: 2.0.0
Reporter: Dinkar Rao
Priority: Minor
A Customer has 1-m relationship to Inventory:
@Entity
Customer {
....
@OneToMany(mappedBy="customer")
private Collection<Inventory> inventories = new ArrayList<Inventory>();
....
}
@Entity
Inventory {
...
@ManyToOne
private Customer customer;
...
}
When an Inventory instance is modified, its version is bumped as expected.
However, when an Inventory is added or deleted from the Inventory list in
Customer, the Customer instance version is unnecessarily bumped up. According
to section 3.4.2 of the 1.0 spec,
"The version attribute is updated by the persistence provider runtime when the
object is
written to the database. All non-relationship fields and properties and all
relationships
owned by the entity are included in version checks."
When additions or deletions are made to the Inventory list of Customer, the
version of the Customer instance should remain unchanged. As the inverse-side,
Customer does not own the Inventory that is added/deleted.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.