So I successfully managed to debug the issue and the fallowing patch resolves the issue:
commit d12a6f566ee24b49b2de314f30187ae0a7002bd1
Author: Rovanion Luckey <rovanion.luckey@gmail.com>
Date: Sun Sep 30 13:30:34 2012 +0200
Added a probably overly simple exception handling for loading podcasts
diff --git a/supersonic-main/src/main/java/net/sourceforge/subsonic/service/PodcastService.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/service/PodcastService.java
index c93e809..80429ce 100644
--- a/subsonic-main/src/main/java/net/sourceforge/subsonic/service/PodcastService.java
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/service/PodcastService.java
@@ -208,12 +208,19 @@ public class PodcastService {
}
private void addMediaFileIdToEpisodes(List<PodcastEpisode> episodes) {
- for (PodcastEpisode episode : episodes) {
- if (episode.getPath() != null) {
- MediaFile mediaFile = mediaFileService.getMediaFile(episode.getPath());
- if (mediaFile != null) {
- episode.setMediaFileId(mediaFile.getId());
- }
- }
- }
+ for (PodcastEpisode episode : episodes) {
+ try {
+ if (episode.getPath() != null) {
+ MediaFile mediaFile = mediaFileService.getMediaFile(episode.getPath());
+ if (mediaFile != null) {
+ episode.setMediaFileId(mediaFile.getId());
+ }
+ }
+ }
+ // If there was an error loading an episode, remove it.
+ catch (Exception e) {
+ podcastDao.deleteEpisode(episode.getId());
+ LOG.info("Deleted Podcast episode '" + episode.getTitle() + "' because:" e.getMessage());
+ }
+ }
}
You can get the full source with this patch from my git repo if you're having the same issue but don't know how to apply patches:
https://github.com/Rovanion/supersonic/ ... no-license