Great! I’m pleased the issue is now resolved for you!
I will update our 3dsMax docs to explain this situation. Thanks.
Great! I’m pleased the issue is now resolved for you!
I will update our 3dsMax docs to explain this situation. Thanks.
I just read through this post since we are suddenly getting this error also.
Was the “Kill ADSK Comms Center Process” the answer to this problem?
I’m getting this error now as well on an EC2 instance, a locl machine seems to render fine.
When I change max.exe’s thread prio from BelowNormal to Normal it is happening less but it’s not a reliably fix.
I’ve tried the com center kill option and spent a few hours trying to hunt it down without luck.
The error print out happens at the line marked ‘<— here’ so something in that try block is erroring out.
[code]def PollUntilComplete( self, timeoutEnabled, timeoutOverride=-1 ):
startTime = DateTime.Now
progressTimeout = (self.ProgressUpdateTimeout if timeoutOverride < 0 else timeoutOverride)
while( self.MaxSocket.IsConnected and not self.Plugin.IsCanceled() ):
try:
# Verify that Max is still running.
self.Plugin.VerifyMonitoredManagedProcess( self.ProgramName )
self.Plugin.FlushMonitoredManagedProcessStdout( self.ProgramName )
# Check for any popup dialogs.
blockingDialogMessage = self.Plugin.CheckForMonitoredManagedProcessPopups( self.ProgramName )
if( blockingDialogMessage != "" ):
self.Plugin.FailRender( blockingDialogMessage )
start = DateTime.Now.Ticks
while( TimeSpan.FromTicks( DateTime.Now.Ticks - start ).Milliseconds < 500 ):
request = self.MaxSocket.Receive( 500 )
# We received a request, so reset the progress update timeout.
startTime = DateTime.Now
match = self.FunctionRegex.Match( request )
if( match.Success ):
# Call the lightning function handler method to see if we should reply or if the render is finished.
reply = ""
try:
reply = self.LightingFunctionHandler( match.Groups[ 1 ].Value )
if( reply != "" ):
self.MaxSocket.Send( reply )
except Exception, e:
self.Plugin.FailRender( e.Message )
continue
match = self.SuccessMessageRegex.Match( request )
if( match.Success ): # Render finished successfully
return match.Groups[ 1 ].Value
if( self.SuccessNoMessageRegex.IsMatch( request ) ): # Render finished successfully
return ""
if( self.CanceledRegex.IsMatch( request ) ): # Render was canceled
self.Plugin.FailRender( "Render was canceled" )
continue
match = self.ErrorRegex.Match( request )
if( match.Success ): # There was an error
self.Plugin.FailRender( "%s\n%s" % (match.Groups[ 1 ].Value, self.NetworkLogGet()) )
continue
except Exception, e:
if( isinstance( e, SimpleSocketTimeoutException ) ):
if timeoutEnabled and DateTime.Now.Subtract( startTime ).TotalSeconds >= progressTimeout:
if timeoutOverride < 0:
self.Plugin.FailRender( "Timed out waiting for the next progress update. The ProgressUpdateTimeout setting can be modified in the 3dsmax plugin configuration (current value is %d seconds).\n%s" % (self.ProgressUpdateTimeout, self.NetworkLogGet()) )
else:
self.Plugin.FailRender( "Timed out waiting for the next progress update.\n%s" % self.NetworkLogGet() ) ## <------------------------ here
elif( isinstance( e, SimpleSocketException ) ):
self.Plugin.FailRender( "RenderTask: 3dsmax may have crashed (%s)" % e.Message )
else:
self.Plugin.FailRender( "RenderTask: Unexpected exception (%s)" % e.Message )
if( self.Plugin.IsCanceled() ):
self.Plugin.FailRender( "Render was canceled" )
if( not self.MaxSocket.IsConnected ):
self.Plugin.FailRender( "Socket disconnected unexpectedly" )
return "undefined"[/code]
I think I’ve solved it for my situation… on the EC2 instance I sort or disabled the comm center long before I started using deadline by putting a dummy exe in place there (a simple ‘rename’ stopped working when AD decided to put a check on this and replace the exe when it was missing… what are they thikning?)
Anyways, now I’ve put back the original exe and let DL nuke it form orbit and all seems fine now.
Glad you got it Jonathan. It’d have taken me awhile to hunt that one down
@ruffstuff, how are things on your end?