I’m constantly getting this error message since the last update.
This is in the logs:
“Request Failed: The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters.”
System.IO.PathTooLongException: The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters.
at System.IO.PathHelper.GetFullPathName()
at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
at System.IO.Path.GetFullPathInternal(String path)
at System.IO.Directory.GetParent(String path)
at NzbDrone.Core.Download.Clients.Sabnzbd.Sabnzbd.GetHistory() in m:\BuildAgent2\work\328d72309b633a8\src\zbDrone.Core\Download\Clients\Sabnzbd\Sabnzbd.cs:line 159
at NzbDrone.Core.Download.Clients.Sabnzbd.Sabnzbd.d__1.MoveNext() in m:\BuildAgent2\work\328d72309b633a8\src\zbDrone.Core\Download\Clients\Sabnzbd\Sabnzbd.cs:line 183
at System.Collections.Generic.List1..ctor(IEnumerable1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at NzbDrone.Core.Download.DownloadTrackingService.UpdateTrackedDownloads() in m:\\BuildAgent2\\work\\328d72309b633a8\\src\zbDrone.Core\\Download\\DownloadTrackingService.cs:line 114 at NzbDrone.Core.Download.DownloadTrackingService.<GetQueuedDownloads>b__4() in m:\\BuildAgent2\\work\\328d72309b633a8\\src\zbDrone.Core\\Download\\DownloadTrackingService.cs:line 74 at NzbDrone.Common.Cache.Cached1.Get(String key, Func1 function, Nullable1 lifeTime) in m:\BuildAgent2\work\328d72309b633a8\src\zbDrone.Common\Cache\Cached.cs:line 87
at NzbDrone.Core.Download.DownloadTrackingService.GetQueuedDownloads() in m:\BuildAgent2\work\328d72309b633a8\src\zbDrone.Core\Download\DownloadTrackingService.cs:line 72
at NzbDrone.Core.Queue.QueueService.GetQueue() in m:\BuildAgent2\work\328d72309b633a8\src\zbDrone.Core\Queue\QueueService.cs:line 27
at NzbDrone.Api.NzbDroneRestModule1.ToListResource[TModel](Func1 function) in m:\BuildAgent2\work\328d72309b633a8\src\zbDrone.Api\zbDroneRestModule.cs:line 36
at NzbDrone.Api.Queue.QueueModule.GetQueue() in m:\BuildAgent2\work\328d72309b633a8\src\zbDrone.Api\Queue\QueueModule.cs:line 23
at NzbDrone.Api.REST.RestModule1.<set_GetResourceAll>b__c(Object options) in m:\\BuildAgent2\\work\\328d72309b633a8\\src\zbDrone.Api\\REST\\RestModule.cs:line 111 at CallSite.Target(Closure , CallSite , Func2 , Object )
at Nancy.Routing.Route.<>c__DisplayClass4.b__3(Object parameters, CancellationToken context)
@pellinore
Can you tell us the output path of sabnzbd? The path is likely too long.
To support Completed Download Handling (whether it’s enabled or not) we now fetch additional information from the sab api.
Drone is on windows so while .net is checking the path it uses the windows path length limitations instead those of linux.
I don’t have a workaround for you. Other than reducing the length of the path, with a symlink for example.
But we did add a setting to the Sabnzbd download client settings that allows you to specify what local path is used to mount the category output path. (“Category Local Path”).
Which might allow you to enable Completed Download Handling in multi-computer setups, or just get rid of the error.
It hasn’t been tested on a live setup and it’s currently in develop, not master, but I’d be interested to know if it works reliably.
Changed to the development branch and the error message went away without me changing any settings. I have enabled Completed Download Handling, will see if works.