{"record":{"id":"070bbe281eb71508","repo":"hibernate/hibernate-orm","slug":"called-mergecontext-setoperatedon-for-mergeentit","errorCode":null,"errorMessage":"called MergeContext#setOperatedOn() for mergeEntity not found in MergeContext","messagePattern":"called MergeContext#setOperatedOn\\(\\) for mergeEntity not found in MergeContext","errorType":"exception","errorClass":"IllegalStateException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/event/spi/MergeContext.java","lineNumber":342,"sourceCode":"\t\t}\n\t\tfinal Boolean isOperatedOn = mergeEntityToOperatedOnFlagMap.get( mergeEntity );\n\t\treturn isOperatedOn != null && isOperatedOn;\n\t}\n\n\t/**\n\t * Set flag to indicate if the listener is performing the merge operation on the specified merge entity.\n\t * @param mergeEntity must be non-null and this MergeContext must contain a cross-reference for mergeEntity\n\t *                       to a managed entity\n\t * @throws NullPointerException if mergeEntity is null\n\t * @throws IllegalStateException if this MergeContext does not contain a a cross-reference for mergeEntity\n\t */\n\tpublic void setOperatedOn(@Nonnull Object mergeEntity, boolean isOperatedOn) {\n\t\tif ( mergeEntity == null ) {\n\t\t\tthrow new NullPointerException( \"null entities are not supported by \" + getClass().getName() );\n\t\t}\n\t\tif ( ! mergeEntityToOperatedOnFlagMap.containsKey( mergeEntity ) ||\n\t\t\t! mergeToManagedEntityXref.containsKey( mergeEntity ) ) {\n\t\t\tthrow new IllegalStateException( \"called MergeContext#setOperatedOn() for mergeEntity not found in MergeContext\" );\n\t\t}\n\t\tmergeEntityToOperatedOnFlagMap.put( mergeEntity, isOperatedOn );\n\t}\n\n\t/**\n\t * Returns an unmodifiable map view of the managed-to-merge entity\n\t * cross-references.\n\t *\n\t * The returned Map will contain a cross-reference from each managed entity\n\t * to the most recently associated merge entity that was most recently put in the MergeContext.\n\t *\n\t * @return an unmodifiable map view of the managed-to-merge entity cross-references.\n\t *\n\t * @see Collections#unmodifiableMap(Map)\n\t */\n\tpublic @Nonnull Map<Object,Object> invertMap() {\n\t\treturn Collections.unmodifiableMap( managedToMergeEntityXref );\n\t}","sourceCodeStart":324,"sourceCodeEnd":360,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/event/spi/MergeContext.java#L324-L360","documentation":"Error \"called MergeContext#setOperatedOn() for mergeEntity not found in MergeContext\" thrown in hibernate/hibernate-orm.","triggerScenarios":"Thrown when setOperatedOn() is called for a merge entity that was never registered in the MergeContext.","commonSituations":"Typical situations: custom merge listeners operating on entities outside the current merge cycle; incorrect MergeContext lifecycle usage.","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."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fad1729dce015f908198d57a8d80274a30f905a5","analyzedAt":"2026-08-22T04:13:57.527Z","schemaVersion":2},"datasetVersion":"2026-08-22T09:17:25.309Z"}