diff --git a/openvidu-server/src/main/java/io/openvidu/server/recording/service/SingleStreamRecordingService.java b/openvidu-server/src/main/java/io/openvidu/server/recording/service/SingleStreamRecordingService.java index 4600ac0d..673209be 100644 --- a/openvidu-server/src/main/java/io/openvidu/server/recording/service/SingleStreamRecordingService.java +++ b/openvidu-server/src/main/java/io/openvidu/server/recording/service/SingleStreamRecordingService.java @@ -184,7 +184,7 @@ public class SingleStreamRecordingService extends RecordingService { cdr.recordRecordingStatusChanged(finalRecordingArray[0], reason, timestamp, finalRecordingArray[0].getStatus()); - storedRecorders.remove(finalRecordingArray[0].getSessionId()); + cleanRecordingWrappers(finalRecordingArray[0].getSessionId()); // Decrement active recordings once it is downloaded ((KurentoSession) session).getKms().getActiveRecordings().decrementAndGet(); @@ -195,7 +195,7 @@ public class SingleStreamRecordingService extends RecordingService { }); } catch (IOException e) { log.error("Error while downloading recording {}", finalRecordingArray[0].getName()); - storedRecorders.remove(finalRecordingArray[0].getSessionId()); + cleanRecordingWrappers(finalRecordingArray[0].getSessionId()); } if (reason != null && session != null) { @@ -504,4 +504,9 @@ public class SingleStreamRecordingService extends RecordingService { } } + private void cleanRecordingWrappers(String sessionId) { + this.storedRecorders.remove(sessionId); + this.activeRecorders.remove(sessionId); + } + }