Idea Details

GovernanceMinder Clear Cache

Last activity 08-17-2018 03:57 AM
William Patton's profile image
03-04-2015 05:26 PM

As “Load Cache” and “Clear Cache” are 2 independent requests, IG only loads or clears the cache in only the particular node which load balancer redirected. But if load balancer redirects the “Load Cache” request to node 1 and “Clear Cache” Request to node 2 then Application does NOT clean the cache from node 1 as it does not have any information about node 1.

 

We need these calls to be made at the same time similar to the clearing and loading of and identityMinder IME.

 

some use cases:

1.       Large customer has 185,000 users in IG.  To enhance end user performance they load certification data into the cache.  They run a weekly import from IDM.  The import from IDM clears the cache on whatever node the import decides to run on.  The next Monday, when users go into the system to do certification work and they get this node, the first users get hit by a huge performance penalty while waiting for data to get reloaded into the cache (which will happen automatically as users use the system).  An enhancement request here, is to be able to define what should be loaded into cache, so that a clear cache action after some time delay is followed up by some action to reload the specified configs to cache (lets’ say as a final step to the import process.)
2.       An sbt script is used to load data into the database.  A scheduled task is used to load the data from the sbt upload into a universe.  However, a clear cache needs to be done in between so that the import re-reads the database instead of reading the config from memory.  So being able to clear the cache on all nodes programmatically would be nice. 
3.       IG Admin changes a property setting or changes permissions in eurekify.cfg and needs to clear the cache for the setting to take effect.  Needs to make sure the cache is cleared on all nodes which is difficult for reasons explained before.   “When you have a 4 node cluster behind a load balancer, it is not possible to connect to a specific node as these are randomly assigned, so there is no practical way to load or clear the cache on all of the nodes in the cluster without a lot of connection attempts”  If SiteMinder is used, you will always return to the same IG node until the SiteMinder session expires. 
4.       A GM Admin is developing a PDI script that runs as part of an import.  Between runs of the PDI script, the data has to be reset and the cache has to be cleared.  If the cluster is running, this is problematic.


Comments

08-17-2018 03:57 AM

It should clear the cache in all the nodes. If that does not work it means that the cluster configuration is not correct or there may be communication problem between the nodes.

08-17-2018 03:38 AM

Did you observe this behavior in any environment? Whenever the node reaches the clear/load cache, it sends an msg to other nodes about it. So other nodes also clear and load the cache. You see the following messages in the other nodes, when it happens.

12:52:51,012 INFO [com.eurekify.dal.SageDalImpl] (cacheEventHandlerContainer-1) Received topic msg to clear all caches...clearing cache ConfigRoles
12:52:51,025 INFO [com.eurekify.dal.SageDalImpl] (cacheEventHandlerContainer-1) Received topic msg to clear all caches...clearing cache ConfigManagers
12:52:51,033 INFO [com.eurekify.dal.SageDalImpl] (cacheEventHandlerContainer-1) Received topic msg to clear all caches...clearing cache AuditCardByName
12:52:51,063 INFO [com.eurekify.dal.SageDalImpl] (cacheEventHandlerContainer-1) Received topic msg to clear all caches...clearing cache EmailTemplatesByFlow
12:52:51,070 INFO [com.eurekify.dal.SageDalImpl] (cacheEventHandlerContainer-1) Received topic msg to clear all caches...clearing cache LeanRoles
12:52:51,096 INFO [com.eurekify.dal.SageDalImpl] (cacheEventHandlerContainer-1) Received topic msg to clear all caches...clearing cache Users
12:52:51,105 INFO [com.eurekify.dal.SageDalImpl] (cacheEventHandlerContainer-1) Received topic msg to clear all caches...clearing cache ConfigById

.............................

...........................

 

The problem occurs when you have communication problems between nodes or if cluster is not configured properly. 

 

If you have any specific scenario, the clear/load cache does not happen, provide more details.