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(a)redhat.com>
To: "i pop" <i.pop(a)centurylink.net>, "keycloak-user"
<keycloak-user(a)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(a)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(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/keycloak-user