From: Dan L. <da...@la...> - 2010-11-26 03:53:47
|
Background: A copy/migrate job has at least two Volumes: * the Volume[s] for the original Job (at least one) * the Volume[s] for the new Job (i.e. Copy/Migrate) (at least one) My problem: When a copy/migrate job includes a RunAfterScript, the %v parameter passed into the script is *always* the source Volume; the destination Volume cannot be passed in. This means the script cannot know the destination volume, which is something I want.[1] Proposal: add a %V (capital V) option to edit_job_codes in lib/util.c Issue: The volume name we need is contained in mig_jcr, which is created within migration_cleanup(). I know this based upon the job output (see below)[2][3] My initial attempt failed. See the attached patches. The problem I encountered may not be related to the patch. The tape was having a seek problem (which has since gone away after switching to a new tape and restarting the tape library). If the feedback here indicates I should try again, I will. I first want to ensure I'm not taking the wrong approach. The changes are: jcr.h - move mig_jcr from within the '#ifdef DIRECTOR_DAEMON' to the 'Global part of JCR common to all daemons'. util.c - add a %V parameter and supply the value found in jcr->mig_jcr->VolumeName -- Dan Langille - http://langille.org/ |