Hi
I control this way
if "state_change" is from longtime and "state" is idle then I use
function:
pg_terminate_backend ( integer ) ==> return TRUE if killed-successful else FALSE
example:
# select pg_terminate_backend ( pid ) from pg_stat_activity where state='idle' and state_change < (current_timestamp - interval '1 hour');
may be helpful
NOTE: we come to decision to kill sessions in idle state more then "1 hour" after lot of discussion with application / implementation / stake-holders team
*removed history as thrown error due to mail length
Thanks
Sridhar
OpenText