On Sat, Feb 5, 2011 at 1:14 AM, Wilson Lam <[email protected]> wrote:
> Dear all,
>
> I am using CAS + Oracle as JpaTicketRegistry, rememberMeExpirationPolicy 
> timeout = 30 days (we would like to remember user password for 30 days).
>

> However, the data size stored in each SERVICES_GRANTED_ACCESS_TO record 
> increase when user access multiple services.

This is by design.

> DefaultTicketRegistryCleaner start to throw "OutOfMemoryError: GC overhead 
> limit exceeded"

I've never seen this exact error, but memory exhaustion is a known
problem with the current design.  Instead of an efficient method of
ticket deletion using DELETE FROM ticketgrantingticket WHERE [some
condition], it loads all the tickets into memory in order to iterate
over them calling isExpired() to engage the pluggable expiration
policy mechanism.  This is a fundamental limitation of CAS 3.x and
will be remedied in 4.x.

You should disable TicketRegistryCleaner-driven ticket cleanup and
instead execute a database script driven by cron or similar.

M

-- 
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

Reply via email to