-
Notifications
You must be signed in to change notification settings - Fork 12
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
Bug: LongPathsEnabled on Windows seems to be ignored, and results in read/write failure when paths > 256 chars. #84
Comments
Hmm, I believe there was a fix explicitly to notify customers when long paths are not enabled in https://github.com/aws-deadline/deadline-cloud/pull/403/files. @AlexTranAmz do you have any ideas why this could happen even if an instance is configured properly? |
Discussed with @AlexTranAmz, looks like we need to enable the long paths in the registry as well as add UNC paths (add \?\ to the start of the path instead of C:\ or D:). |
I did an initial investigation of this issue. To my understanding, Cinema 4D itself does not support long paths. I have submitted a ticket to Maxon about this. That said, our Deadline Cloud integration code exacerbates the problem in a couple ways:
The sticky settings file adds 27 characters.
This can add 40 or more characters to the file path, depending on the name of your monitor profile and the original file structure.
is mapped to
This adds up to 109 characters to the file path (for mapped drives). In my example, it added ~70 characters. Given all of this, we can take the following actions:
|
Added two fixes:
I'm in communication with Maxon about adding support for long paths. |
Here is the public Maxon forum post about long paths: https://developers.maxon.net/forum/topic/15966/cinema-4d-python-on-windows-long-path-errors/2 |
As described in point 2, shortening the session directory on workers is one way to help alleviate the long path issue. A PR has just been merged to make the session directory configurable, after which it can be shortened. For this to be used:
Note that while this will reduce the path length, it still won't fully solve the issue - the assets directory will still prefix |
Expected Behaviour
By enabling LongPathsEnabled on Windows you can utilise assets, and render outputs, that have >256 chars.
But renders via Deadline Cloud seem to throw errors regard file lengths exceeding 256 chars.
Current Behaviour
Job attachments assets will result in an error when syncing:
"your file path is longer than what Windows allow."
Output images fail to write in job attachments:
"Found 0 files (Output directory C:\ProgramData\Amazon\OpenJD\session-0fac1829f3cf4e848c2c18f474f8987e8oe..."
Reproduction Steps
Ensure Windows is configured correctly:
https://www.autodesk.com/support/technical/article/caas/sfdcarticles/sfdcarticles/The-Windows-10-default-path-length-limitation-MAX-PATH-is-256-characters.html
Use a texture that has a lot of characters - e.g. include
bobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbobbob
Set the output location to a folder which has >256 chars.
Render from the app - it works.
Render from Deadline - it fails.
Code Snippet
N/A
The text was updated successfully, but these errors were encountered: