Tdarr - Distributed transcode automation using FFmpeg/HandBrake + Audio/Video library analytics + video health checking (Windows, macOS, Linux & Docker)
Other
3.06k
stars
96
forks
source link
Files shouldn’t have colons: CIFS limitation #1119
Describe the bug
When a worker accesses the temp directory over CIFS, it cannot see files with colons in the filennames. This is a known limitation of CIFS. The result is a File Not Found error when the worker attempts to process a temp file with a colon in the name.
To Reproduce
Run Tdarr server on a worker with a filesystem that allows colons in the name (e.g., ext4)
Configure a worker which mounts that filesystem using CIFS
Include in a library a file with a colon in the name (e.g., Pirates of the Caribbean: At World's End.mkv)
When the file is processed, this gets logged:
2024-11-11T14:53:42.038Z g1GHC1L38:Node[tdarr-01]:Worker[every-egg]:[Step W02] [C1] Running pre-process file
2024-11-11T14:53:42.039Z g1GHC1L38:Node[tdarr-01]:Worker[every-egg]:Checking files can be accessed
2024-11-11T14:53:43.044Z g1GHC1L38:Node[tdarr-01]:Worker[every-egg]:[1/2] R/W [-error-]:/media/movies/Pirates of the Caribbean: At World's End/Pirates of the Caribbean: At World's End.mkv:Error: ENOENT: no such file or directory, access '/media/movies/Pirates of the Caribbean: At World's End/Pirates of the Caribbean: At World's End.mkv'
2024-11-11T14:53:43.052Z g1GHC1L38:Node[tdarr-01]:Worker[every-egg]:[2/2] The following source file cannot be accessed on Tdarr_Node zSA_RN_l4:
2024-11-11T14:53:43.052Z
2024-11-11T14:53:43.052Z "/media/movies/Pirates of the Caribbean: At World's End/Pirates of the Caribbean: At World's End.mkv"
2024-11-11T14:53:43.052Z
2024-11-11T14:53:43.052Z
2024-11-11T14:53:43.052Z To resolve this, make sure the Server and Node can access the same library and transcode cache paths.
When processed on a server that mounts the same directory over NFS instead of CIFS, it processes correctly. The worker mounted using CIFS can process files without colons in the name correctly, so it’s not a path mapping issue.
Expected behavior
The file should be processed correctly.
CIFS renders the file with a - instead of a colon (e.g., Pirates of the Caribbean - At World's End.mkv). If the worker cannot find the file with a normal name, it could try the substitution. There are probably other substitutions that CIFS does as well as for colons.
Describe the bug When a worker accesses the temp directory over CIFS, it cannot see files with colons in the filennames. This is a known limitation of CIFS. The result is a File Not Found error when the worker attempts to process a temp file with a colon in the name.
To Reproduce
Pirates of the Caribbean: At World's End.mkv
)When processed on a server that mounts the same directory over NFS instead of CIFS, it processes correctly. The worker mounted using CIFS can process files without colons in the name correctly, so it’s not a path mapping issue.
Expected behavior The file should be processed correctly.
CIFS renders the file with a
-
instead of a colon (e.g.,Pirates of the Caribbean - At World's End.mkv
). If the worker cannot find the file with a normal name, it could try the substitution. There are probably other substitutions that CIFS does as well as for colons.