diff --git a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
index c18e03133b4d470a17eabf0a4b491ff3f25c3aab..1996ea4e0684bec880008fc9b9b0437692d376bb 100644
--- a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
+++ b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
@@ -1676,6 +1676,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
 	@Caching(evict = { @CacheEvict("sessions"), @CacheEvict(cacheNames="sessions", key="#p0.keyword") })
 	public void deleteSession(final Session session) {
 		try {
+			deleteAllQuestionsWithAnswers(session);
 			deleteDocument(session.get_id());
 			LOGGER.debug("Deleted session document {} and related data.", session.get_id());
 		} catch (final IOException e) {
@@ -1693,7 +1694,6 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
 			Session s = new Session();
 			s.set_id(oldDoc.getId());
 			s.set_rev(oldDoc.getJSONObject("value").getString("_rev"));
-			deleteAllQuestionsWithAnswers(s);
 			deleteSession(s);
 		}
 
diff --git a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
index a7372b085f4883efca0df69ee15d3e4746994f00..4b49f1348ff065717d5c2877358e02ae1c2f8d65 100644
--- a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
+++ b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
@@ -144,6 +144,11 @@ public interface IDatabaseDao {
 
 	Session changeSessionCreator(Session session, String newCreator);
 
+	/**
+	 * Deletes a session and related data.
+	 *
+	 * @param session the session for deletion
+	 */
 	void deleteSession(Session session);
 
 	boolean deleteInactiveGuestSessions(long lastActivityBefore);
diff --git a/src/main/java/de/thm/arsnova/services/SessionService.java b/src/main/java/de/thm/arsnova/services/SessionService.java
index 8ac0aa34702e610b509f910e7ea663e1c7f9dded..a155514505557b145b495f732099ec9788b90253 100644
--- a/src/main/java/de/thm/arsnova/services/SessionService.java
+++ b/src/main/java/de/thm/arsnova/services/SessionService.java
@@ -405,7 +405,6 @@ public class SessionService implements ISessionService, ApplicationEventPublishe
 			prepSubjects.add("");
 		}
 
-		databaseDao.deleteAllQuestionsWithAnswers(session);
 		databaseDao.deleteSession(session);
 
 		this.publisher.publishEvent(new DeleteSessionEvent(this, session));
diff --git a/src/test/java/de/thm/arsnova/services/SessionServiceTest.java b/src/test/java/de/thm/arsnova/services/SessionServiceTest.java
index 8a3bb77f7a27e0259e4524466114a2fec2eff9c1..87a3f5da12938dbd6c6ac41beb6a376eed89f7c9 100644
--- a/src/test/java/de/thm/arsnova/services/SessionServiceTest.java
+++ b/src/test/java/de/thm/arsnova/services/SessionServiceTest.java
@@ -173,7 +173,6 @@ public class SessionServiceTest {
 
 			sessionService.deleteSession(session.getKeyword());
 
-			verify(mockDatabase).deleteAllQuestionsWithAnswers(session);
 			verify(mockDatabase).deleteSession(session);
 		} finally {
 			ReflectionTestUtils.setField(getTargetObject(sessionService), "databaseDao", tempDatabase);