Maintenance script fails

zoetaite44

ADSM.ORG Member
Joined
May 20, 2008
Messages
16
Reaction score
0
Points
0
Hello,

Just having some issues with my maintenance script the last few days. After the nightly backups complete (which copy to diskpools) the script itself kicks off @ 5:00 AM. When scanning through the log it appears it is doing what it should, but is returning a "FAILED" message:

10/08/2008 07:40:58 ANR2753I (MAINTENANCE):running in the FOREGROUND processed
17953 (SESSION: 1273)
10/08/2008 07:40:58 ANR2753I (MAINTENANCE):items with a completion state of
more... (<ENTER> to continue, 'C' to cancel)

SUCCESS at (SESSION: 1273)
10/08/2008 07:40:58 ANR2753I (MAINTENANCE):07:40:58. (SESSION: 1273)
10/08/2008 07:40:59 ANR2753I (MAINTENANCE):ANR4923E RECLAIM STGPOOL:
Reclamation is (SESSION: 1273)
10/08/2008 07:40:59 ANR2753I (MAINTENANCE):currently running for the storage
pool (SESSION: 1273)
10/08/2008 07:40:59 ANR1463E RUN: Command script MAINTENANCE_PLAN completed in
error. (SESSION: 1273, PROCESS: 500)
10/08/2008 07:40:59 ANR2753I (MAINTENANCE):BACKUPPOOL. (SESSION: 1273)
10/08/2008 07:40:59 ANR2753I (MAINTENANCE):ANR4923E RECLAIM STGPOOL:
Reclamation is (SESSION: 1273)
10/08/2008 07:40:59 ANR2753I (MAINTENANCE):currently running for the storage
pool (SESSION: 1273)
10/08/2008 07:40:59 ANR2753I (MAINTENANCE):BACKUPPOOL_DRP. (SESSION: 1273)
10/08/2008 07:40:59 ANR2753I (MAINTENANCE):ANR1463E RUN: Command script
MAINTENANCE_PL- (SESSION: 1273)
10/08/2008 07:40:59 ANR2753I (MAINTENANCE):AN completed in error. (SESSION:
1273)
10/08/2008 07:40:59 ANR2752E Scheduled command MAINTENANCE failed. (SESSION:
1273, PROCESS: 500)
10/08/2008 14:42:41 ANR2017I Administrator CLELANDB issued command: QUERY
SCRIPT MAINTENANCE_PLAN (SESSION: 1635)
10/08/2008 16:41:25 ANR2017I Administrator CLELANDB issued command: QUERY
SCRIPT MAINTENANCE_PLAN (SESSION: 1650)
10/08/2008 16:41:25 ANR2017I Administrator CLELANDB issued command: UPDATE
SCRIPT MAINTENANCE_PLAN /*******************************-
************************/ line=1 (SESSION: 1650)

ZT
 
Steven,

I am a complete newbie to the world of Tivoli. Is there an easy way to export the script? I go in through the ISC to manage the environment, and I just see specific settings for modifiying or configured the script.

ZT
 
Here it is:

/*******************************************************/
/* ------- DO NOT EDIT THIS SCRIPT ------- */
/* */
/* This script was generated as the */
/* result of the maintenance plan wizard */
/* or properties notebook. Editing this */
/* script will cause those tools to fail. */
/* */
/* ------- DO NOT EDIT THIS SCRIPT ------- */
/*******************************************************/
/* BACKUP_STORAGE_START */
/* BA_STG:BACKUPPOOL=COPYPOOL_LTO; */
/* BA_STG:BACKUPPOOL_DRP=COPYPOOL_LTO_DRP; */
/* BA_STG:DIRSONLY_DISK=COPYPOOL_DIRS_LTO; */
/* BACKUP_STORAGE_END */
PARALLEL
backup stg BACKUPPOOL COPYPOOL_LTO wait=yes
backup stg BACKUPPOOL_DRP COPYPOOL_LTO_DRP wait=yes
backup stg DIRSONLY_DISK COPYPOOL_DIRS_LTO wait=yes
SERIAL
/* BACKUP_DB_START */
/* BA_DB:DEVCLASS=LTO;BATYPE=batype_full; */
/* BACKUP_DB_END */
backup db devclass=LTO type=full wait=yes
/* EXP_INV_START */
/* EXP_INV:SKIPDIRS=YES;DURATION=130; */
/* EXP_INV_END */
expire inventory skipdirs=YES wait=yes duration=130
/* RECL_STG_START */
/* RECL_STG:STGPOOL=BACKUPPOOL;THRESHOLD=50; */
/* RECL_STG:STGPOOL=BACKUPPOOL_DRP;THRESHOLD=50; */
/* RECL_STG_END */
PARALLEL
reclaim stgpool BACKUPPOOL threshold=50 wait=yes
reclaim stgpool BACKUPPOOL_DRP threshold=50 wait=yes
SERIAL

ZT
 
Strange...I started having the same problem recently as well, my maintenance script failing with an ANR4923E.

Here's my script:

tsm: SERVER1>q script maintenance_plan f=r
/*******************************************************/
/* ------- DO NOT EDIT THIS SCRIPT ------- */
/* */
/* This script was generated as the */
/* result of the maintenance plan wizard */
/* or properties notebook. Editing this */
/* script will cause those tools to fail. */
/* */
/* ------- DO NOT EDIT THIS SCRIPT ------- */
/*******************************************************/
/* MIG_STG_START */
/* MIG_STG:STGPOOL=DISKPOOL1;LOWMIG=0; */
/* MIG_STG_END */
migrate stgpool DISKPOOL1 lowmig=0 wait=yes
/* BACKUP_STORAGE_START */
/* BA_STG:LTO3POOL1=LTO3CPPOOL1; */
/* BACKUP_STORAGE_END */
backup stg LTO3POOL1 LTO3CPPOOL1 wait=yes
/* BACKUP_DB_START */
/* BA_DB:DEVCLASS=LTO3;BATYPE=batype_full; */
/* BACKUP_DB_END */
backup db devclass=LTO3 type=full wait=yes
/* REM_VOLS_START */
/* REM_VOLS:VOLNAME=*;WHERESTATE=MOUNTABLE;TOSTATE=Vault;APPEND=NO;REMOVE=Bulk-
;SOURCE=dbbackup; */
/* REM_VOLS_END */
move drm '*' wheresta=MOUNTABLE tostate=Vault app=NO rem=Bulk source=dbbackup
wait=YES
/* CREATE_RPF_START */
/* RPF:SOURCE=dbbackup; */
/* CREATE_RPF_END */
prepare source=dbbackup wait=YES
/* EXP_INV_START */
/* EXP_INV:SKIPDIRS=NO; */
/* EXP_INV_END */
expire inventory skipdirs=NO wait=yes
/* RECL_STG_START */
/* RECL_STG:STGPOOL=LTO3POOL1;THRESHOLD=65; */
/* RECL_STG:STGPOOL=LTO3CPPOOL1;THRESHOLD=65; */
/* RECL_STG_END */
PARALLEL
reclaim stgpool LTO3POOL1 threshold=60 wait=yes
reclaim stgpool LTO3CPPOOL1 threshold=60 wait=yes
SERIAL




And here's my script output:

tsm: SERVER1>run maintenance_plan
ANR4924I MIGRATE STGPOOL: Migration is not needed for the storage pool
DISKPOOL1.
ANR2111W BACKUP STGPOOL: There is no data to process for LTO3POOL1.
ANR0984I Process 90 for DATABASE BACKUP started in the FOREGROUND at 08:50:33
AM.
ANR2280I Full database backup started as process 90.
ANR4554I Backed up 570560 of 4652023 database pages.
ANR4554I Backed up 1124480 of 4652023 database pages.
ANR4554I Backed up 1689088 of 4652023 database pages.
ANR4554I Backed up 2268032 of 4652023 database pages.
ANR4554I Backed up 2854208 of 4652023 database pages.
ANR4554I Backed up 3433088 of 4652023 database pages.
ANR4554I Backed up 4012928 of 4652023 database pages.
ANR4554I Backed up 4549696 of 4652023 database pages.
ANR4550I Full database backup (process 90) complete, 4652023 pages copied.
ANR0985I Process 90 for DATABASE BACKUP running in the FOREGROUND completed
with completion state SUCCESS at 08:55:37 AM.
ANR0984I Process 91 for MOVE DRMEDIA started in the FOREGROUND at 08:55:37 AM.
ANR0609I MOVE DRMEDIA started as process 91.
ANR0610I MOVE DRMEDIA started by TKYLE as process 91.
ANR6696I MOVE DRMEDIA: CHECKOUT LIBVOLUME for volume 000016L3 in library
STLCORPTL1 starting.
ANR6697I MOVE DRMEDIA: CHECKOUT LIBVOLUME for volume 000016L3 in library
STLCORPTL1 completed successfully.
ANR6683I MOVE DRMEDIA: Volume 000016L3 was moved from MOUNTABLE state to
VAULT.
ANR6696I MOVE DRMEDIA: CHECKOUT LIBVOLUME for volume 000009L3 in library
STLCORPTL1 starting.
ANR6697I MOVE DRMEDIA: CHECKOUT LIBVOLUME for volume 000009L3 in library
STLCORPTL1 completed successfully.
ANR6683I MOVE DRMEDIA: Volume 000009L3 was moved from MOUNTABLE state to
VAULT.
ANR6682I MOVE DRMEDIA command ended: 2 volumes processed.
ANR0611I MOVE DRMEDIA started by TKYLE as process 91 has ended.
ANR0987I Process 91 for MOVE DRMEDIA running in the FOREGROUND processed 2
items with a completion state of SUCCESS at 08:57:03 AM.
ANR0984I Process 92 for PREPARE started in the FOREGROUND at 08:57:03 AM.
ANR6918W PREPARE: Recovery instructions file
/opt/tivoli/tsm/server/bin/RECOVERY.INSTRUCTIONS.GENERAL not found.
ANR6918W PREPARE: Recovery instructions file
/opt/tivoli/tsm/server/bin/RECOVERY.INSTRUCTIONS.OFFSITE not found.
ANR6918W PREPARE: Recovery instructions file
/opt/tivoli/tsm/server/bin/RECOVERY.INSTRUCTIONS.INSTALL not found.
ANR6918W PREPARE: Recovery instructions file
/opt/tivoli/tsm/server/bin/RECOVERY.INSTRUCTIONS.DATABASE not found.
ANR6918W PREPARE: Recovery instructions file
more... (<ENTER> to continue, 'C' to cancel)

/opt/tivoli/tsm/server/bin/RECOVERY.INSTRUCTIONS.STGPOOL not found.
ANR6922W PREPARE: No machine information was defined for the machine that
contains server SERVER1.
ANR6900I PREPARE: The recovery plan file
/opt/tivoli/tsm/server/drm/20081106.085703 was created.
ANR0985I Process 92 for PREPARE running in the FOREGROUND completed with
completion state SUCCESS at 08:57:04 AM.
ANR0984I Process 93 for EXPIRE INVENTORY started in the FOREGROUND at 08:57:04
AM.
ANR0811I Inventory client file expiration started as process 93.
ANR2369I Database backup volume and recovery plan file expiration starting
under process 93.
ANR0812I Inventory file expiration process 93 completed: examined 10214917
objects, deleting 0 backup objects, 0 archive objects, 0 DB backup volumes, and
0 recovery plan files. 0 errors were encountered.
ANR0985I Process 93 for EXPIRE INVENTORY running in the FOREGROUND completed
with completion state SUCCESS at 09:38:45 AM.
ANR4923E RECLAIM STGPOOL: Reclamation is currently running for the storage pool
LTO3CPPOOL1.
ANR2111W RECLAIM STGPOOL: There is no data to process for LTO3POOL1.
ANR1463E RUN: Command script MAINTENANCE_PLAN completed in error.
ANS8001I Return code 14.

Fwiw, I'm running TSM 5.5.0 on RHEL 5.0 AS x86-64.

Thanks,

Tom
 
On my issue, it turned out that I had the reclamation threshold on the storage pool in question set too low, and it was running during the execution of my maintenance script.
 
Can you edit this script manually or do you have to use the maintenance wizard, if its the latter where is this - as this was set up by a previous employee and I am having to fix an issue. Ps we are using 5.3

Thanks
 
Yes you can edit the script manually. See "help upd script". It'll get overwritten though if you use the maintenance wizard again, so once you go manual you should stay that way.

I think the script exits with the return code of the last thing it ran. The last thing it runs is "SERIAL". In turn, "SERIAL" returns the highest (worst) return code of all the things running in parallel before it. So if either reclaim command has an issue, you'll get this warning for the script as a whole.

ps. gimlet its often normal practice (your situation may vary though) to set reclamation thresholds to 100% and only drop them when you want reclamation to run. You then raise the thresholds back to 100% when you want reclamation to stop for the day.
 
ps. gimlet its often normal practice (your situation may vary though) to set reclamation thresholds to 100% and only drop them when you want reclamation to run. You then raise the thresholds back to 100% when you want reclamation to stop for the day.

I'm running with the reclamation thresholds at 100%, and run a maintenance script (see above) daily that performs reclamation on my tape pools. Our interest is in keeping the number of tapes used fairly low, and the drives are not needed for other tasks during that time with our current environment.

I hadn't considered changing the thresholds to start/stop reclamation. I'm assuming this is useful when there's a fairly well-known schedule of when the drives will be needed for other tasks?
 
Back
Top