Revision: 28453 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28453 Author: theeth Date: 2010-04-27 05:14:40 +0200 (Tue, 27 Apr 2010)
Log Message: ----------- NetRender tweaks by Brecht * Client connection is made from panel poll functions even if netrender is disabled * Network render slave should print when it has connected to server, now it says "node initiation", I initially thought this meant it was not connected yet. * Web interface should auto-refresh, I got confused if job and slaves were actually found or not. Modified Paths: -------------- trunk/blender/release/scripts/io/netrender/master.py trunk/blender/release/scripts/io/netrender/master_html.py trunk/blender/release/scripts/io/netrender/slave.py trunk/blender/release/scripts/io/netrender/ui.py Modified: trunk/blender/release/scripts/io/netrender/master.py =================================================================== --- trunk/blender/release/scripts/io/netrender/master.py 2010-04-27 02:30:41 UTC (rev 28452) +++ trunk/blender/release/scripts/io/netrender/master.py 2010-04-27 03:14:40 UTC (rev 28453) @@ -190,6 +190,11 @@ edit_pattern = re.compile("/edit_([a-zA-Z0-9]+)") class RenderHandler(http.server.BaseHTTPRequestHandler): + def log_message(self, format, *args): + # override because the original calls self.address_string(), which + # is extremely slow due to some timeout.. + sys.stderr.write("[%s] %s\n" % (self.log_date_time_string(), format%args)) + def send_head(self, code = http.client.OK, headers = {}, content = "application/octet-stream"): self.send_response(code) self.send_header("Content-type", content) @@ -1010,7 +1015,7 @@ s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) - start_time = time.time() + start_time = time.time() - 2 while not test_break(): try: @@ -1018,7 +1023,7 @@ except select.error: pass - if time.time() - start_time >= 10: # need constant here + if time.time() - start_time >= 2: # need constant here httpd.timeoutSlaves() httpd.updateUsage() @@ -1031,3 +1036,4 @@ httpd.server_close() if clear: clearMaster(httpd.path) + Modified: trunk/blender/release/scripts/io/netrender/master_html.py =================================================================== --- trunk/blender/release/scripts/io/netrender/master_html.py 2010-04-27 02:30:41 UTC (rev 28452) +++ trunk/blender/release/scripts/io/netrender/master_html.py 2010-04-27 03:14:40 UTC (rev 28453) @@ -29,6 +29,7 @@ def head(title): output("<html><head>") + output("<meta http-equiv='refresh' content=5>") output("<script src='/html/netrender.js' type='text/javascript'></script>") # output("<script src='/html/json2.js' type='text/javascript'></script>") output("<title>") Modified: trunk/blender/release/scripts/io/netrender/slave.py =================================================================== --- trunk/blender/release/scripts/io/netrender/slave.py 2010-04-27 02:30:41 UTC (rev 28452) +++ trunk/blender/release/scripts/io/netrender/slave.py 2010-04-27 03:14:40 UTC (rev 28453) @@ -105,6 +105,8 @@ if not os.path.exists(NODE_PREFIX): os.mkdir(NODE_PREFIX) + engine.update_stats("", "Network render connected to master, waiting for jobs") + while not engine.test_break(): conn.request("GET", "/job", headers={"slave-id":slave_id}) response = conn.getresponse() @@ -113,6 +115,7 @@ timeout = 1 # reset timeout on new job job = netrender.model.RenderJob.materialize(eval(str(response.read(), encoding='utf8'))) + engine.update_stats("", "Network render processing job from master") JOB_PREFIX = NODE_PREFIX + "job_" + job.id + os.sep if not os.path.exists(JOB_PREFIX): @@ -245,6 +248,8 @@ conn.request("PUT", "/render", headers=headers) if conn.getresponse().status == http.client.NO_CONTENT: continue + + engine.update_stats("", "Network render connected to master, waiting for jobs") else: if timeout < MAX_TIMEOUT: timeout += INCREMENT_TIMEOUT Modified: trunk/blender/release/scripts/io/netrender/ui.py =================================================================== --- trunk/blender/release/scripts/io/netrender/ui.py 2010-04-27 02:30:41 UTC (rev 28452) +++ trunk/blender/release/scripts/io/netrender/ui.py 2010-04-27 03:14:40 UTC (rev 28453) @@ -213,9 +213,10 @@ def poll(self, context): scene = context.scene netsettings = scene.network_render + if netsettings.mode != "RENDER_CLIENT": + return False verify_address(netsettings) return (super().poll(context) - and netsettings.mode == "RENDER_CLIENT" and netsettings.server_address != "[default]") def draw(self, context): @@ -251,9 +252,10 @@ def poll(self, context): scene = context.scene netsettings = scene.network_render + if netsettings.mode != "RENDER_CLIENT": + return False verify_address(netsettings) return (super().poll(context) - and netsettings.mode == "RENDER_CLIENT" and netsettings.server_address != "[default]") def draw(self, context): @@ -288,9 +290,10 @@ def poll(self, context): scene = context.scene netsettings = scene.network_render + if netsettings.mode != "RENDER_CLIENT": + return False verify_address(netsettings) return (super().poll(context) - and netsettings.mode == "RENDER_CLIENT" and netsettings.server_address != "[default]") def draw(self, context): _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs