Re: Functions, savepoints, autocommit = I am confused !

From: Tim Smith <randomdev4+postgres(at)gmail(dot)com>
To: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Functions, savepoints, autocommit = I am confused !
Date: 2015-06-26 14:24:58
Message-ID: CA+HuS5HFicWc7Yc6qxZ4kua+Y0R70TyUhBqLxjeRR70O-jafYA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

> So this is in a plpgsql function?

It is yes, but I thought I would spare you a copy/paste of the entire thing.

The error trapping section currently looks like this :
EXCEPTION
WHEN OTHERS THEN
RAISE EXCEPTION 'Failed to validate
session for session % (SQLSTATE: % - SQLERRM: %)',
session_id,SQLSTATE,SQLERRM
USING HINT = 'Database error occured
(sval fail)';
END;

>
> Where is the validateSession function?
>
> More to the point, can you show how it is used in conjunction with?
>

The validateSession function was the one I pasted ? Do you mean you
want to see the actual function() definition at the top ?

The cleanSession function (the one validateSession calls at the top)
is simple (the v_ values are simply 'epoch minus TTL') :
BEGIN
delete from app_security.app_sessions where
session_start<=v_forcedTimeout or
session_lastactive<=v_sessionTimeout;
EXCEPTION
WHEN OTHERS THEN
RAISE EXCEPTION
USING ERRCODE = sqlstate,
MESSAGE = 'Failed to clean session table (' || sqlerrm || ')',
HINT = 'Database error(sclean fail)';
END;
$$ LANGUAGE plpgsql;

>
> See the plpgsql link above.

Will take a look at the link. Thanks !

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tim Smith 2015-06-26 14:26:00 Re: Functions, savepoints, autocommit = I am confused !
Previous Message Adrian Klaver 2015-06-26 14:01:09 Re: Functions, savepoints, autocommit = I am confused !