ADSM-L

Re: [ADSM-L] Sql problem tsm v6.22

2012-02-16 17:01:16
Subject: Re: [ADSM-L] Sql problem tsm v6.22
From: "Prather, Wanda" <wPrather AT ICFI DOT COM>
To: ADSM-L AT VM.MARIST DOT EDU
Date: Thu, 16 Feb 2012 16:15:12 +0000
In V6, "SECOND" is always going to return a value between 0 and 60; I don't' 
think that's what you are after.
To get time differences in V6, you need to use the DB2 TIMESTAMPDIFF function.
Example:  

select timestampdiff(8,cast( (current_timestamp-last_backup_date) as char(22))) 
as DBHRS from db

/* Always cast as char(22); just change the constant 8 to:  
/* 2  seconds
/* 4  minutes
/* 8  hours
/* 16 days
/* 32 weeks
/* 64 months
/*128 quarters
/*256 years

-----Original Message-----
From: ADSM: Dist Stor Manager [mailto:ADSM-L AT VM.MARIST DOT EDU] On Behalf Of 
Lee, Gary
Sent: Thursday, February 16, 2012 10:00 AM
To: ADSM-L AT VM.MARIST DOT EDU
Subject: [ADSM-L] Sql problem tsm v6.22

I've been trying to update an old expiration performance reporting script to 
run on tsm v6.2.2.

I figured out that at the end of each expire run, a summary line is given with 
an entity of ''

However I still get the error below.

Anyone out there with any ideas?

My db2 admin here is stumped.

tsm: TSM01>run expexp
ANR0162W Supplemental database diagnostic information:  -1:42911:-419 
([IBM][CLI Driver][DB2/LINUXX8664] SQL0419N  A decimal divide operation is not 
valid because the result would have a negative scale.  SQLSTATE=42911 ).
ANR0516E SQL processing for statement select activity , cast ( ( end_time ) as 
date ) as "Date" , ( examined/cast ( SECOND  ( end_time - start_time) as 
decimal ( 18 , 13 ) ) *3600 ) "Objects Examined/Hr" from summary where activity 
= 'EXPIRATION' and entity = '' and days ( end_time ) -days ( start_time ) = 0 
failed.
ANR1463E RUN: Command script EXPEXP completed in error.
ANS8001I Return code 4.


Gary Lee
Senior System Programmer
Ball State University
phone: 765-285-1310

 

<Prev in Thread] Current Thread [Next in Thread>