I do exactly what you describe. I use Apache::Session with an Oracle back end, and a trigger updates a 'last used time' column. Then I run a cron job to delete sessions older than a given number of days. I find it useful to leave the sessions around for a few days so I can look at them to troubleshoot problems.
The automatic updating of TIMESTAMP columns is a MySQL thing, it's not part of the Apache::Session code. I haven't used PostgreSQL in a while, so I can't remember if the equivalent functionality exists.