hibernate/hibernate-orm · error · IllegalStateException
called MergeContext#setOperatedOn() for mergeEntity not foun
Error message
called MergeContext#setOperatedOn() for mergeEntity not found in MergeContext
What it means
Error "called MergeContext#setOperatedOn() for mergeEntity not found in MergeContext" thrown in hibernate/hibernate-orm.
Source
Thrown at hibernate-core/src/main/java/org/hibernate/event/spi/MergeContext.java:342
}
final Boolean isOperatedOn = mergeEntityToOperatedOnFlagMap.get( mergeEntity );
return isOperatedOn != null && isOperatedOn;
}
/**
* Set flag to indicate if the listener is performing the merge operation on the specified merge entity.
* @param mergeEntity must be non-null and this MergeContext must contain a cross-reference for mergeEntity
* to a managed entity
* @throws NullPointerException if mergeEntity is null
* @throws IllegalStateException if this MergeContext does not contain a a cross-reference for mergeEntity
*/
public void setOperatedOn(@Nonnull Object mergeEntity, boolean isOperatedOn) {
if ( mergeEntity == null ) {
throw new NullPointerException( "null entities are not supported by " + getClass().getName() );
}
if ( ! mergeEntityToOperatedOnFlagMap.containsKey( mergeEntity ) ||
! mergeToManagedEntityXref.containsKey( mergeEntity ) ) {
throw new IllegalStateException( "called MergeContext#setOperatedOn() for mergeEntity not found in MergeContext" );
}
mergeEntityToOperatedOnFlagMap.put( mergeEntity, isOperatedOn );
}
/**
* Returns an unmodifiable map view of the managed-to-merge entity
* cross-references.
*
* The returned Map will contain a cross-reference from each managed entity
* to the most recently associated merge entity that was most recently put in the MergeContext.
*
* @return an unmodifiable map view of the managed-to-merge entity cross-references.
*
* @see Collections#unmodifiableMap(Map)
*/
public @Nonnull Map<Object,Object> invertMap() {
return Collections.unmodifiableMap( managedToMergeEntityXref );
}View on GitHub (pinned to fad1729dce)
Solutions
- This indicates an internal Hibernate state inconsistency; upgrade Hibernate to a version where the issue is fixed or report it with a reproducer.
- Avoid custom MergeEvent listeners that manipulate the MergeContext directly.
When it happens
Trigger: Thrown when setOperatedOn() is called for a merge entity that was never registered in the MergeContext.
Common situations: Typical situations: custom merge listeners operating on entities outside the current merge cycle; incorrect MergeContext lifecycle usage.
AI-assisted analysis of hibernate/hibernate-orm@fad1729dce (2026-08-22).
Data as JSON: /api/errors/070bbe281eb71508.
Report an issue: GitHub.