[keycloak-user] how to clean-up OFFLINE_CLIENT_SESSION, OFFLINE_USER_SESSION tables

i.pop at centurylink.net i.pop at centurylink.net
Wed Dec 7 11:03:18 EST 2016


Thank you for your message. However, if I set parameter "Offline Session Idle" to 30 min, I am getting a replication timeout exception associated with the periodic cleaner scheduler service
[Server:server-one] 09:24:54,979 ERROR [org.keycloak.services] (Timer-2) KC-SERVICES0089: Failed to run scheduled task ClearExpiredUserSessions: org.infinispan.util.concurrent.TimeoutException: Replication timeout for slaveServer:server-two
[Server:server-one]     at org.infinispan.remoting.transport.jgroups.JGroupsTransport.checkRsp(JGroupsTransport.java:765)
[Server:server-one]     at org.infinispan.remoting.transport.jgroups.JGroupsTransport.lambda$invokeRemotelyAsync$72(JGroupsTransport.java:599)
[Server:server-one]     at java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)
[Server:server-one]     at java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)
[Server:server-one]     at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
[Server:server-one]     at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)
[Server:server-one]     at org.infinispan.remoting.transport.jgroups.SingleResponseFuture.call(SingleResponseFuture.java:46)
[Server:server-one]     at org.infinispan.remoting.transport.jgroups.SingleResponseFuture.call(SingleResponseFuture.java:17)
[Server:server-one]     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[Server:server-one]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
[Server:server-one]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
[Server:server-one]     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[Server:server-one]     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[Server:server-one]     at java.lang.Thread.run(Thread.java:745)

This exception is thrown with a periodicity of 15 min.
I have found a previous reference to such exception in your "keycloak-user" customer inquiries 
http://lists.jboss.org/pipermail/keycloak-user/2016-July/006892.html

It looks like there was a bug in your KC software. Have you fixed this bug in your later KC releases since July 2016? Or, it may be a miss-configuration in my domain clustered configuration( I use your KC-2.1.0.Final  release) ? 
Thanks,
Ioan
 
----- Original Message -----
From: "Marek Posolda" <mposolda at redhat.com>
To: "i pop" <i.pop at centurylink.net>, "keycloak-user" <keycloak-user at lists.jboss.org>
Sent: Friday, November 25, 2016 3:20:18 AM
Subject: Re: [keycloak-user] how to clean-up OFFLINE_CLIENT_SESSION, OFFLINE_USER_SESSION tables

It seems you are using offline tokens for some of your application 
right? There is periodic cleaner, which will remove the records from the 
expired offline sessions. But timeout for the offline sessions is 30 
days by default. Also the time of "last refresh" is currently updated in 
DB every time when you restart the server (in case that you have 
single-server without cluster).

In other words, if you restart the server at least once every 30 days, 
the table will keep growing. It is probably something we can improve... 
Feel free to create JIRA.

Until that, your possibilities are:
- Decrease the timeout to shorter value than 30 days (can be done in 
admin console)
- Ensure the server is not restarted within 30 days, so the outdated 
sessions can be cleared.
- Use cluster with 2 nodes or more and ensure that at least 1 node is 
always online.

Marek

On 24/11/16 20:11, i.pop at centurylink.net wrote:
> Hi,
> Working with a domain clustered mode and shared ORACLE db , I am noticing {OFFLINE_CLIENT_SESSION, OFFLINE_USER_SESSION} tables keep growing in size. How these tables get cleaned up?
>
>
> Thanks,
> Ioan
> _______________________________________________
> keycloak-user mailing list
> keycloak-user at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/keycloak-user




More information about the keycloak-user mailing list