I get RAMRuntimeExceptions with 'the maximum number of sessions for this account has been reached' but..
I manage session via a pool keeping at most 6 active sessions. The strategy is: if any usage of the session generates a RAMRuntimeException (i.e. considered broken) I remove session from pool and do a session.release(). The pool then will get a new session from RAM.
the account is permitted to have 50 sessions.
If I come across a 'splurge' of errors, I'll be returning 'broken' sessions pretty repetitively. I validate all sessions 'on borrowing' from the pool with (session.getIdentification()). But during usage, with some of the new session I get 'max no of sessions' error as above. It's as if RAM cannot turn them around fast enough. What is anoying is that I can issue a session.getAsset(id) successfully, its only the session.put(asset) that is compromised. basically Ive got no where to go - I cannot tell if a session is good unless I validate it with a put() which can't be a decent strategy. Does RAM need delay after releasing sessions?
Any ideas? - sorry for long post. Fixing the underlying RRE isnt an option. I need the session management to be robust.
land-land 270001PJ2212 Posts
Re: RAM session management - problem2010-07-01T05:18:31ZThis is the accepted answer. This is the accepted answer.My management of RAM sessions via the pool had an implementation flaw, a bug! Fix the bug and it worked perfectly, Sorry to waste anybodies time with the post.