diff --git a/src/main/java/org/olat/modules/fo/manager/ForumManager.java b/src/main/java/org/olat/modules/fo/manager/ForumManager.java
index 9feeb02040cecb09e23b06e8de94234af3bc23bf..5a4700263bbc64a96c87f34e7f15e47c98aaa899 100644
--- a/src/main/java/org/olat/modules/fo/manager/ForumManager.java
+++ b/src/main/java/org/olat/modules/fo/manager/ForumManager.java
@@ -772,7 +772,12 @@ public class ForumManager {
 					.getResultList();
 		for(Message threadToDelete:threadsToDelete) {
 			deleteMessageTree(forumKey, threadToDelete);
-			dbInstance.getCurrentEntityManager().remove(threadToDelete);
+			
+			Message reloadedMessage = dbInstance.getCurrentEntityManager()
+					.find(MessageImpl.class, threadToDelete.getKey());
+			if(reloadedMessage != null) {
+				dbInstance.getCurrentEntityManager().remove(threadToDelete);
+			}
 		}
 		dbInstance.commit();