NetBackup's inability to prioritise jobs properly - seeking workaround
I do NDMP backups of two NetApp filers using a shared tape library. All policies use the same tape pool and retention period. I want to be able to prioritise jobs so that more important ones run first. Unfortunately NetBackup is incapable of honouring job priorities for jobs that run via different NDMP devices (specifically this seems to be a limitation on storage units, i.e. job priority is ignored for jobs running across different storage units).
What happens is that when a job completes on a particular filer, if there are any other jobs queued against the same filer then these jobs will always take priority over any other job queued against a different filer regardless of job priority. So a job with a priority of 0 on the same filer will be picked over a job with a priority of 999999 on the other filer.
There is no good reason for this since all jobs have the same retention period and use the same media pool, so can share the same tapes. When switching from one filer to another the tape is not unloaded, so please don't offer this as a reason for the undesirable behaviour.
The reason I know Symantec doesn't support job prioritisation across storage units is because I had a call open with them for over a year trying to get this fixed. Eventually they decided it was easier to say the product was working as designed rather than to fix what I consider to be a major design flaw in what is apparently and enterprise backup solution. The only solution that Symantec could come up with was to buy a new tape drive and dedicate this to the filer that keeps loosing out. This is on NetBackup 7.1. Happy to upgrade to 7.5, but since I have no reason to believe the issue will ever be fixed by Symantec I don't see the point of upgrade now.
So what I'm looking for is a workaround to force jobs for filer A to run ahead of jobs queued against filer B when a job is already running against filer B. Currently the only way is to manually cancel all queued filer B jobs and then re-queue them after filer A gets hold of the tape drive. I was hoping to be able to programmatically remove a tape drive from filer B by downing the path, but this can't be done while a backup is running that uses that path.