Corrupt data in Log reports?

Once again, I have no idea why I’m getting this Log report on a successfully finished job:

[code]=======================================================
Log Message

Corrupt Data In Report - See Below

<?xml version="1.0"?> 2011-08-31T21:40:13.529673+02:00 Winxp-pro-01 0 <_SlaveVersionString>v5.0.0.44528 R WinRAR Job loocas Winxp-pro-01 2011-08-31T21:39:54 WinRAR 0-0 0 -1 -1 -1 -1 -1 -1 -1

=======================================================
Log Details

Log Date/Time = Aug 31/11 21:40:13
Frames =

Slave Machine =
Slave Version =

Plugin Name =
[/code]

I’m writing my own Plugin for Deadline, everything works just fine, except for these logs. I get the mess in those, no idea why.

The issue is that there are invalid characters being written to stdout by WinRAR. We wrap everything in CDATA tags to try and avoid this, but there are still characters out there that screw it up (After Effects still does this on occassion too). If I copy and paste the entire log into a text editor, there are 4 ‘BS’ (backspace) characters in front of “99%” and 5 ‘BS’ characters after it. These are the culprits.

I’m not sure if you can do anything about the way WinRAR writes it’s progress, but it’s not affecting the actual jobs. It just means that we can’t show the logs for the job properly because of the invalid data in them.

Cheers,

  • Ryan

Yeah, I thought it was because of the special chars. The problem is, WinRAR updates its progress on one line throughout the packing/unpacking.

Is there any way to disable the STDOUT writing to the Log? Or any way to handle this?

I suppose AdvancedPlugins can catch STDOUT and run it through a regex, right? Not that I want to make this an advanced plugin, just curious. :slight_smile:

Regular plugins can process stdout too. The Blender plugin can be used as an example. It enables stdout handling and adds a few handlers in InitializeProcess.

I’m sure you could write a handler to handle this progress line, and then call this function from your handler function:

self.SuppressThisLine()

That will prevent it from making it into the final log. The Blender plugin also has an example of this.

Hope this helps!

  • Ryan

Awesome! Thanks, I’ll dig into it. :slight_smile:

By the way, this is a Plugin for WinRAR. It supports compressing/unpacking files on the farm and collecting the packages to a specific directory. Would you be interested in this plugin for future Deadline versions? :slight_smile:

I needed it because when I work offsite, I pack my files and upload them via VPN (internet) to my studio’s render farm where I need them to get unpacked and submitted.

We would definitely be interested in this plugin for future releases! I wonder if we could combine it with RAR support on Linux and OSX so that it’s a cross platform plugin. It’s unlikely we’ll have time to do this before 5.1 is released, so definitely post it in the Uploads section when you’re ready to share. We could even use that as a “beta” thread for the plugin, and once it’s been put through its paces, we can start shipping it with Deadline out of the box.

Thanks!

  • Ryan

Sounds like a plan! :slight_smile:

Unfortunately, though, I don’t have access to any OSX machines and very, very limited access/knowledge of Linux, so, in this regard, it’s gonna have to be up to anyone else.

However, I imagine it would be trivial to implement a Linux/OSX version.