When creating a derivate, the corresponding mycore object will be updated too. If an event handler exception occur while this update, the mycore object will be restored and the derivate is not stored. BUT, the restore() method uses MCRMetadataManager#update again and the same error can occur again. This leads to an illegal state of the mycore object. The not existing derivate will still be linked.