]
Steve Ebersole closed HHH-6744.
-------------------------------
Closing for 4.1 release
TransientObjectException thrown on dirty check during flush with
CHECK_NULLABILITY set to false
-----------------------------------------------------------------------------------------------
Key: HHH-6744
URL:
https://hibernate.onjira.com/browse/HHH-6744
Project: Hibernate ORM
Issue Type: Bug
Components: core
Affects Versions: 4.0.0.CR4
Reporter: Gail Badner
Assignee: Gail Badner
Fix For: 4.1.0
TransientObjectException thrown on dirty check of a many-to-one association during flush
with CHECK_NULLABILITY set to false when the entity being dirty-checked:
- has a "delayed-insert" ID generator (e.g., sequence, increment),
- has been saved, but not flushed
This may also happen on an update.
I believe JDBCException should be thrown instead.
This is reproduced by testMergeEntityWithNonNullableTransientEntity() in:
- MultiPathCircleCascadeTest for Oracle10gDialect and PostgreSQLDialect
(because these dialects use sequences for the native ID generator and the default for
CHECK_NULLABILITY is false)
- MultiPathCircleCascadeCheckNullibilityFalseTest for Oracle10gDialect and
PostgreSQLDialect
(because these dialects use sequences for the native ID generator and CHECK_NULLABILITY
is explicitly set to false)
- MultiPathCircleCascadeDelayedInsertTest for all dialects
(because the test uses an "increment" generator and the default for
CHECK_NULLABILITY is false)
- MultiPathCircleCascadeCheckNullFalseDelayedInsertTest
(because the test uses an "increment" generator and CHECK_NULLABILITY is
explicitly set to false)
The failure is masked in MultiPathCircleCascadeDelayedInsertTest and
MultiPathCircleCascadeCheckNullFalseDelayedInsertTest because they incorrectly allow
TransientObjectException as valid behavior.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: