Share the Love and the Jobs

Version: Deadline 8 and later

Introduction

There are many reasons why a studio might have more than one Deadline Repository. Maybe you've got more than one location and run two separate farms or maybe you divide resources based on production and keep each production's Repository separate. Whatever your reasons may be, there are certain situations where you might want to move a job from one Repository to another. Deadline gives you the option to do just that. In this post we are going to explore the Job Transferring plugin: what it is, how it works, and how you can use it to save time by putting the work where the resources are.

Why Transfer a Job?

There is likely a reason why you've chosen to have separate Repositories, so why would you need to transfer a job between them? Well, let's say I have one Repository backed up with jobs and another Repository sitting almost idle, it would be beneficial to be able to utilize those idle resources. Or I have a particular group of Deadline Slaves with a long queue of jobs in one Repository but in another that group is free. Or maybe you originally submitted the job to the wrong Repository. There are plenty of reasons you may want to transfer a job to another Repository!

Requirements to Transfer a Job

Before you can start transferring jobs there are some prerequisites that must be fulfilled.

  1. Both Repositories need to be the same Deadline version.
  2. The Repository you are transferring the job to must be accessible from the Deadline Slave doing the transfer (we will look at what this means a little bit later).
  3. If you need the transfer to be completed quickly, a Deadline Slave must be available in the job's current Repository. This may mean adding your machine to the Repository to do the transfer (check out the Job Dequeuing Mode in the Local Slave Controls), or setting a higher priority so this quick transfer job can be completed before a larger job is picked up. If completing the transfer in a timely manner isn't important you can disregard the third point.

How to Transfer a Job

In the Monitor, right click the job you want to transfer and go to Scripts -> Transfer Job.

transferring_job.gif

You'll probably recognize the dialog that pops up as a job submission dialog. That's because transferring a job to another Repository is itself a job. Continue with the normal submission process and under the Transfer Options set the New Repository field to the Repository you would like to send the job to. The files included with the job will automatically be transferred along with the job.

Additional Options

You'll notice a few extra options in the Transfer Options section. While their names are intentionally informative, here's how each will behave.

transfer_options.png

Compress Files During Transfer - If the files needed for a job are large, this option can save time by automatically compressing them before transit and decompressing them afterwards.

Email Results After Transfer - This option requires a bit of extra set up. You can do this by entering Super User mode and selecting Tools -> Configure Plugins and selecting JobTransfer. Enter the email at which you wish to receive notifications in the Notification Email(s) field. After completing that set up, enabling this option will allow you to be notified by email when a job transfer was completed. You can read more about Setting up Email Notifications for other areas of Deadline.

Suspend Remote Job After Transfer - This option ensures the job won't immediately render after being transferred and instead leaves it in a suspended state.

Remove Local Job After Transfer - This option is very useful if you accidentally submitted the job to the wrong Repository and want to fix that mistake by transferring it to the correct Repository. It will remove the job from the original Repository once the transfer has been completed.

Things to Keep in Mind

If you are submitting a job to your normal Repository and want to transfer it later, make sure to select Submit Job As Suspended. This way, you can ensure the job won't get picked up by accident.

Conclusion

Transferring jobs between Repositories probably isn't something you have thought about doing until now. Hopefully after reading this, it's a feature of Deadline that you'll keep in mind and add to your list of tricks for improving your efficiency!