-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cache copy Fails as File Does Not Exist #333
Comments
This was also detailed in #318 (here) The problem is that the coding for moving files is contained within Tdarr_Server and not Tdarr_Node. The server is attempting to move files from the local cache on another machine, but Tdarr_Server as no access or ability to do so. Only the node and its Tdarr_Node binary can see or access the local cache directory. My workaround was to make the transcode cache on a network accessible share so that both machines, ie the server and node, could access the transcode cache directory. This likely isn't the intended behavior, but a carryover from v1 when things weren't distributed. This also isn't preferable since it keeps all IOPS on the network location as opposed to the local cache which is presumably SSD, NVMe, or even a RAM disk. |
Are the files larger than 2GB? |
I would need to change my transcode directory back to check, but highly doubtful. I encode to x265, so my files are typically under 1gb for a 40min TV episode. Feature length BluRay varies and would exceed 2gb. I can say everything failed when I used a transcode cache directory (regardless of any size that I noticed) which was local to my node. Everything has worked subsequent to change the transcode cache to a location visible to all nodes (it isn't actually SMB or NFS since I am running CephFS...). |
Ahh, thank you for the explanation, it helps a lot. I think I see my issue, I have the cache folder specified in the server container but not the node container so I believe the node is doing the logical equivalent of sending the file to /dev/null . I have a lot to learn about v2. This file is 1.6GB, and it's all local to the node/server, I don't have a 2nd machine setup yet. The transcode is running now I'll close once it completes. |
I am not an expert on Docker (not my personal preference but it is popular), but I would map to a persistent storage outside the containers. It appears that would be within your |
Yeah, basically i needed to add the ${ROOT}/tdarr/cache:/temp to the node. I think the node was writing to it's /temp, but because it wasn't mapped in the node container what it was writing was basically invisible to everything else that wasn't that node container (including the server container). So, it finished up and said something like "hey server, file transcoded you can find it in /temp" but it was the node's local /temp not a shared folder that the server could see so the server got pissed and said "hey there's no file in /temp..." and threw an error. Anyway, I see the file in the cache folder now (after mapping and recreating the container) so I think it should be good to go. Next thing to verify is that i have it setup correctly so that it's able to do HW encoding using QSV. The odd thing for this file is it says it's doing a GPU transcode which makes me think it's doing software transcoding but that's for another potential issue. |
Closing as the transcode worked. Make sure you map /temp, /media, and /configs in both the server and node containers of docker. |
Hi, I have this issue in latest version 2.00.18 [19th April 2022]
Both server and node have access to media, cache and temp This is my docker-compose file.
|
Describe the bug
Two video files completed the transcode process then ended up saying the copy failed. If I hit info it says:
Error: ENOENT: no such file or directory, stat
Then points to the cache folder. This uses the CPU transcoding.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
Desktop (please complete the following information):
Additional context
Add any other context about the problem here.
The text was updated successfully, but these errors were encountered: