ADSM-L

Re: by-hand reclamation question...

2005-02-24 16:05:39
Subject: Re: by-hand reclamation question...
From: "William F. Colwell" <bcolwell AT DRAPER DOT COM>
To: ADSM-L AT VM.MARIST DOT EDU
Date: Thu, 24 Feb 2005 16:05:23 -0500
The old query content command can provide information which could give the 
answer
if properly massaged.  I can get the information but I am weak on the massaging.

This macro will generate another macro to issue query content commands with 
count=1 and
count=-1 parameters which say to report on the first and last file on the tape.

set sqldisplaymode w
commit
select cast('q con '||volume_name||' count=1' as char(80)) as cmd -
 from volumes -
  where stgpool_name='TP1_COPY2' and status in ('FULL', 'FILLING') > qcon2
select cast('q con '||volume_name||' count=-1' as char(80)) as cmd -
 from volumes -
  where stgpool_name='TP1_COPY2' and status in ('FULL', 'FILLING') >> qcon2

then edit qcon2  to remove the headers and run it as a macro, redirecting to a 
3rd file -

tsm: LIBRARY_MANAGER>macro qcon2 > qcon3
Output of command redirected to file 'QCON3'

Massage qcon3 and sort it to find duplicate names which indicate a tape chain.
The thing that needs to be massaged is to put the volume name on the output 
line and
unwrap long filenames.

Hope this helps,

Bill Colwell

At 03:28 PM 2/23/2005, you wrote:
>On Wed, 23 Feb 2005 asr AT ufl DOT edu wrote:
>
>> In order to reclaim a given volume, you really need three different ones: The
>> target volume, and the volumes "adjacent" to the target: The one with the
>> other half of the aggregate which comes first on the target volume, and the
>> one with the other half of the aggregate that comes last.
>>
>> I don't think I've been able to find a way to find which volumes these are
>> without actually running the expiration or move data and failing the mount.
>> Is there a good way to find this information out?
>
>If I understand your scenario correctly, then I think I've run into this.
>
>My not-so-elegant solution was to start an 'audit volume' on the tape that
>I intend to run a 'move data' against.  If it's the only tape needed, then
>the audit will start up okay and can be cancelled; if there's at least one
>other tape needed, audit will complain that a required volume is offsite,
>specify the needed volume, then terminate.  Unfortunately, audit only
>specifies *one* required offsite volume, so you have to do another audit
>after the needed volume is marked onsite in order to see if a 2nd offsite
>volume is needed.
>
>I thought about trying to script this to the point where you could at
>least know all of the volumes needed before ever inserting any tapes; that
>way you could make only one 'offsite trip'.  I think that would involve
>marking a volume onsite before inserting it, attempting the audit,
>capturing the needed volume name if the audit fails, cancelling the audit
>if it doesn't (and maybe dealing with a failed mount?), etc.  I never
>actually spent any time coding/testing this, though.
>
>This is admittedly very ugly; I tried getting IBM to give me some SQL that
>could *quickly* determine the needed volumes, but was told it's not
>possible.  I'm not sure why...presumably it has to do with the "it's not
>really a relational db, and the SQL interface is only a convenience good
>for some things" business; all I know is that audit knows *immediately*
>which other volume is needed.
>
>Fortunately for me at least, I no longer have a need to do this sort of
>thing.
>
>Regards,
>Bill
>
>Bill Kelly
>Auburn University

----------
Bill Colwell
C. S. Draper Lab
Cambridge Ma.