[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-3179?page=c...
]
Heinz Huber updated HHH-3179:
-----------------------------
Attachment: association-formula-2008-04-04.zip
Had a problem with one-to-one.
settable has length 0 in this case.
Incorrect SQL using formula in component or as key with
optimistic-lock="dirty"
-------------------------------------------------------------------------------
Key: HHH-3179
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-3179
Project: Hibernate3
Issue Type: Bug
Affects Versions: 3.2.6
Environment: Hibernate 3.2.6ga
Oracle 10i (should not matter)
Reporter: Heinz Huber
Attachments: association-formula-2008-04-04.zip, association-formula.zip
Don't generate null as column name for formulas on dirty optimisic locking.
Effect: If a component (or an association) used for the generation of the where clause
for optimistic locking by dirty properties contained a formula, null would have been
inserted as column name. Now these values are skipped.
Example:
<class name="Verfueger" table="ELVFGR"
dynamic-insert="true" dynamic-update="true"
select-before-update="true" optimistic-lock="dirty"
rowid="rowid">
<composite-id name="nummer">
<key-many-to-one name="mandant" column="vfMand" />
<key-property name="anlagekennzeichen" column="vfAkzV" />
<key-property name="nummer" column="vfVfNr"
length="6" />
</composite-id>
<many-to-one name="kunde" cascade="evict"
fetch="select" not-null="true" lazy="false"
not-found="keep">
<formula>vfMand</formula>
<column name="vfAkzD" />
<column name="vfKdNr" />
</many-to-one>
</class>
If property kunde was changed and the entity is being updated, the where clause would
have been:
vfMand = ? and vfAkzV = ? and vfVfNr = ? and null = ? and vfAkzD = ? and vfKdNr = ?
Clearly, the null is wrong!
Extent:
src/org/hibernate/persister/entity/AbstractEntityPersister.java
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira