Main Tables Views Materialized Views Indexes Constraints Triggers Procedures Functions Packages Sequences Java Sources Jobs Sanity Check Index DDL scrips
Arguments Source

PXT_SESSION_CLEANUP

Arguments:

NameData TypeDefault ValueIn/Out
BOUND_INNUMBER(38) IN
COMMIT_INTERVALNUMBER(38) IN
BATCH_SIZENUMBER(38) IN
SESSIONS_DELETEDNUMBER(38) IN/OUT
DDL script

Source

Legend: comment string keyword reserved word operator
     1: procedure pxt_session_cleanup (
     2:     bound_in in number,
     3:     commit_interval in number := 100,
     4:     batch_size in number := 50000,
     5:     sessions_deleted in out number)
     6: is
     7:     cursor sessions (bound_val in number) is
     8:         select rowid
     9:           from pxtsessions
    10:          where expires < bound_val;
    11: 
    12:     counter number := 0;
    13: begin
    14:    for session in sessions (bound_in) loop
    15:        delete
    16:          from pxtsessions
    17:         where rowid = session.rowid;
    18: 
    19:        counter := counter + 1;
    20:        if mod(counter, commit_interval) = 0 then
    21:            commit;
    22:        end if;
    23: 
    24:        if counter >= batch_size then
    25:            commit;
    26:            sessions_deleted := counter;
    27:            return;
    28:        end if;
    29:     end loop;
    30: 
    31:     commit;
    32:     sessions_deleted := counter;
    33: end;