|  |  | Archives of the TeradataForumMessage Posted: Thu, 09 Dec 2004 @ 14:42:20 GMT
 
 
  
| Subj: |  | Re: Capture Spool of a query |  |  |  | From: |  | Simard Rudel |  
 We create a macro to reset the peak of the user and a macro to give you the minimum and maximum spool space by VAMP, the sum of the spool space
for all VAMP et finally the spool space needed (the higher VAMP spool space * by the number of VAMP). Hope that going to help you. You use this macro in BTEQ, after execution, re-execute the result to reset the user's peak. 
     REPLACE MACRO databasename.ClearPeakUser (p_user  CHAR(30))
     AS  ( ECHO '.SET SEPARATOR 0';
           ECHO '.SET FOLDLINE ON 1,2';
           UPDATE DBC.Acctg SET CPU = 0, IO = 0 WHERE UserName = :p_user;
           SELECT ' UPDATE DBC.DataBaseSpace ' (TITLE ''),
                  'SET PeakPermSpace = 0, PeakSpoolSpace = 0, PeakTempSpace = 0 ' (TITLE ''),
                  'WHERE DataBaseSpace.databaseid = '''(TITLE ''),
                   Dbase.databaseid (TITLE ''),
                   '''XB;' (TITLE '')
           FROM    DBC.Dbase
           WHERE   DBase.databasename = :p_user;
           ECHO '.SET SEPARATOR 1';
           ECHO '.SET FOLDLINE OFF';)
     ;
 You use this macro to see what I explain in introduction : 
     REPLACE MACRO databasename.PEAKSPUSER (P_USER VARCHAR(30))
     AS
     (SELECT MIN(PeakPermSpace)             (TITLE 'MIN_PEAK' , FORMAT 'ZZ,ZZZ,ZZZ,ZZ9')
            ,MAX(PeakPermSpace)             (TITLE 'MAX_PEAK' , FORMAT 'ZZ,ZZZ,ZZZ,ZZ9')
            ,SUM(PeakPermSpace)             (TITLE 'TOT_PEAKS', FORMAT 'ZZZ,ZZZ,ZZZ,ZZ9')
            ,MAX(PeakPermSpace) * (HASHAMP()+1) (TITLE 'TOT_PEAKS//needed', FORMAT 'ZZZ,ZZZ,ZZZ,ZZ9')
            ,MAX(CurrentPermSpace) * (HASHAMP()+1)  (TITLE 'Current Perm//use', FORMAT 'ZZZ,ZZZ,ZZZ,ZZ9')
            ,SUM(MaxPermSpace)              (TITLE 'PERM SPACE//Total', FORMAT 'ZZZ,ZZZ,ZZZ,ZZ9')
      FROM   dbc.DataBaseSpace
            ,Dbc.dbase
      WHERE  databasename = :P_USER
        AND  DataBaseSpace.TableID = '000000000000'XB
        AND  dbase.databaseid = DataBaseSpace.databaseid
     ;);
 Rudel Simard 
 
 |  |