0 AND J.JobId NOT IN (SELECT PriorJobId FROM Job WHERE Type IN ('B','C') AND Job.JobStatus IN ('T','W') AND PriorJobId != 0) WHERE P.name IN (" . COPYTOTAPEPOOLS . ") GROUP BY 1 ORDER BY P.name "; $result = pg_exec( $dbh, $sql ); $HTML = ''; if ( $result ) { $numrows = pg_numrows( $result ); if ( $numrows > 0 ) { $HTML .= ''; for ( $i = 0; $i < $numrows; $i++ ) { $myrow = pg_fetch_array ( $result, $i ); if ( $myrow !== false ) { $HTML .= '' . "\n"; } } $HTML .= '
Ready for copy to tape
PoolSizeCount
' . $myrow['name'] . '' . $myrow['size'] . '' . $myrow['count'] . '
'; } } echo $HTML; echo '
'; $sql = " SELECT CASE WHEN M.slot IS NULL THEN 'not recognized' ELSE M.volumename END, M.volstatus, S.slot, P.name as pool, CASE WHEN M.volbytes <= 64512 THEN 'nil' else pg_size_pretty( M.volbytes ) END as size, CASE WHEN M.slot IS NULL THEN ' ' WHEN M.lastwritten IS NULL THEN 'nil' ELSE lastwritten::text END as lastwritten, CASE WHEN M.slot IS NULL THEN ' ' WHEN M.lastwritten IS NULL THEN 'nil' ELSE (M.lastwritten + M.volretention * interval '1 second')::text END as retain_until FROM (SELECT slot FROM generate_series(1, 10) AS slot) S LEFT OUTER JOIN media M ON (S.slot = M.slot) LEFT OUTER JOIN pool P on P.poolid = M.poolid ORDER BY S.slot"; $result = pg_exec( $dbh, $sql ); $HTML = ''; if ( $result ) { $numrows = pg_numrows( $result ); if ( $numrows > 0 ) { $HTML .= ''; for ( $i = 0; $i < $numrows; $i++ ) { $myrow = pg_fetch_array ( $result, $i ); if ( $myrow !== false ) { $HTML .= '' . "\n"; } } $HTML .= '
Tape library status
Namestatusslotpoolsizelast writtenretain until
' . $myrow['volumename'] . '' . $myrow['slot'] . '' . $myrow['pool'] . '' . $myrow['size'] . '' . $myrow['lastwritten'] . '' . $myrow['retain_until'] . '
'; } } echo $HTML; echo '
'; $sql = " SELECT P.Name as name, pg_size_pretty( sum( coalesce( m.volbytes, 0 ) )::bigint) as size, count(M.mediaid) as tape_count FROM pool P, media M WHERE P.PoolId = m.poolid AND P.name IN (" . TAPEPOOLS . ") GROUP BY 1 ORDER BY P.name "; $result = pg_exec( $dbh, $sql ); $HTML = ''; if ( $result ) { $numrows = pg_numrows( $result ); if ( $numrows > 0 ) { $HTML .= ''; for ( $i = 0; $i < $numrows; $i++ ) { $myrow = pg_fetch_array ( $result, $i ); if ( $myrow !== false ) { $HTML .= '' . "\n"; } } $HTML .= '
How much is on tape
Poolspacetape count
' . $myrow['name'] . '' . $myrow['size'] . '' . $myrow['tape_count'] . '
'; } } echo $HTML; echo '
'; $sql = " SELECT M.volumename, M.volstatus, M.slot, P.name as pool, CASE WHEN volbytes <= 64512 THEN 'nil' else pg_size_pretty(volbytes) END as size, CASE WHEN lastwritten IS NULL THEN 'nil' ELSE lastwritten::text END as lastwritten, CASE WHEN M.slot IS NULL THEN ' ' WHEN M.lastwritten IS NULL THEN 'nil' ELSE (M.lastwritten + M.volretention * interval '1 second')::text END as retain_until FROM media M, pool P WHERE M.poolid = P.poolid AND P.name IN (" . TAPEPOOLS . ") AND M.slot = 0 ORDER BY pool, lastwritten DESC"; $result = pg_exec( $dbh, $sql ); $HTML = ''; if ( $result ) { $numrows = pg_numrows( $result ); if ( $numrows > 0 ) { $HTML .= ''; for ( $i = 0; $i < $numrows; $i++ ) { $myrow = pg_fetch_array ( $result, $i ); if ( $myrow !== false ) { $HTML .= '' . "\n"; } } $HTML .= '
Volumes in storage
Namestatusslotpoolsizelast writtenretain until
' . $myrow['volumename'] . '' . $myrow['slot'] . '' . $myrow['pool'] . '' . $myrow['size'] . '' . $myrow['lastwritten'] . '' . $myrow['retain_until'] . '
'; } } echo $HTML; ?>