after upgrading from Deadline 10.2 to 10.3 I have a problem when launching the Monitor.
I get an error in the Launcher log (attachment) that says it cannot import name ‘DataController’ from ‘Deadline.Controllers’.
We successfully upgraded 50 workstations with a silent installation), but on 2 workstations, mine and another one, we get this error.
2024-01-23 12:20:46: WARNING: PythonSync (Python 3) upgrade failed with the following error:
2024-01-23 12:20:46: Access to the path 'C:\Program Files\Thinkbox\Deadline10\bin\pythonsync3\appdirs.py' is denied.
And since the full error is this:
2024-01-23 12:20:47: Exception on Startup: An Unexpected Error Occurred: cannot import name 'DataController' from 'Deadline.Controllers' (unknown location)
I think it’s just the upgrade failure is causing trouble with the import.
Grant the user running the launcher access to that directory and see how it does again.
thank you for the feedback. With the support from our IT department we tried different solutions but none of them worked:
Granting the user full access/full control to the entire “Deadline10\bin” folder
Uninstalling and installing again Deadline (not silently)
Granting the “artist” user admin privileges, then starting the Launcher
Interestingly, if we start the Launcher with an admin user it starts without problems. Because of our security policies the “artist” user cannot have admin privileges.
It’s strange that on all of the other workstations the upgrade was successful.
Interesting, the cannot import name 'DataController' from 'Deadline.Controllers' (unknown location) could be getting caused by something in the user’s environment and running the installer as administrator isn’t inheriting the environment.
On one of the problem machines, if you dump the set environment and compare the result to one of the machines that successfully upgraded how does it compare? I’m expecting to see something set in the PYTHONPATH key.
On Windows you can do that by running set in a command prompt.
Thanks for reporting this! Yeah, there was this forum thread from a year ago:
I just a quick Google for “cannot import name ‘DataController’” and got lucky!
So… I do think we’re loading things in the wrong order. I’ve had a little back burner project where I’m trying to understand why Deadline after Python 3 ends up getting confused by libraries that aren’t our own. So far my theory is that we load up Python.netbefore we override the default search paths and before we may have been doing the opposite. I’m going to add both forum threads as data points on that ticket for when I can revisit it.