Save and load COO-Service caches
In the case of a restart of the Fabasoft Backend services (e.g. during a planned downtime) the COO-Service cache, using RAM for caching, is empty and begins to refill gently with the users workload. This can lead to reduced performance until the cache is refilled.
With the Fabasoft Tool fscadmin with the actions loadcache , savecache and loadbyquery the COO-Service caches can be saved and reloaded in a controlled way.
The tool fscadmin is installed with the Fabasoft Server Management.
By calling fscadmin.exe respectively fscadmin the command-line help is displayed.
For further inforation see our How to use fscadmin article.
List the service IDs of the COO-Services
Every COO-Service and MMC-Service has an unique service id. This id is displayed in the Fabasoft Domain Administration folder under the "Services" tab.
With fscadmin it's also possible to list the service ids. You can use this command:
fscadmin -action list
The service ids of the COO-Services are required for the further steps.
Save the COO-Service cache
Use the following command to save the COO-Service cache of one COO-Service to disk:
fscadmin -action savecache -service -file
fscadmin -action savecache -service 1 -file C:\temp\cache_coosvc1.txt
This command creates (or overwrites) a text file cache_coosvc1.txt for COO-Service id 1. In the text file, every object in the COO-Service cache is listed as a human readable COO address.
The call of this action has no impact to the system performance.
Note: No other metadata than the object addresses are stored in this text file.
- Create a batch file or shell script to call fscadmin savecache for every COO-Service. Every COO-Service should have an own file (e.g. cache_coosvc1.txt, cache_coosvc2.txt, ...).
- Create a Windows Scheduled Task respectively a cron job to run the script on a daily basis. Select the runtime in a way, that the script executes before the usual maintenance time. For example, schedule the script at 17:00 if your maintenance time usually starts at 18:00.
Load the COO-Service cache
Use the following command to load the COO-Service cache of one COO-Service from disk:
fscadmin -action loadcache -service -file
Hint: Compared to the savecache action, only the action parameter changes to loadcache. All other parameters keep the same.
fscadmin -action loadcache -service 1 -file C:\temp\cache_coosvc1.txt
This command reads the text file cache_coosvc1.txt and reads all metadata of the listed object addresses from the database to the COO-Service 1 cache.
Note: The call of the loadcache action CAN HAVE impact to the system performance, as all data must be read from the database. Use the loadcache action in non-core time.
- Create a batch file or shell script to load the caches of every COO-Service from its own file (e.g. cache_coosvc1.txt, cache_coosvc2.txt, ...).
- Do NOT create a scheduled task.
- Run the script manually after system maintenance, if the COO-Services had to be stopped and restarted.
The script will load all data from the database to the COO-Service caches. This can take - depending to the cache size and objects in the cache file - an hour or more.
Load COO-Service cache by query
You can use one or more Fabasoft queries to load data to the COO-Service cache. This can be done additionally or instead of using the savecache/loadcache functionality.
Note: If you use loadcache and loadbyquery together, please keep in mind, that the COO-Services caches are organised as first-in-first-out cache. Previously loaded objects may be dropped from cache if you load additional objects.
To load objects by a query, use this syntax:
fscadmin -action loadbyquery -service -query '
fscadmin -action loadbyquery -service 1 -query 'SELECT objname FROM FSCFOLIO@1.1001:CollaborationFolder WHERE .COOSYSTEM@1.1:objmodifiedat >= 2011-08-01 00:00:00'
This action loads all Team objects changed after 1st Aug. 2011 to the COO-Service cache.
Hint: You can create your query in the Fabasoft Webbrowser client. Use the "Edit query" button in the search form. To see the "Edit query" button, enable the "Show query" checkbox in your environment.
The size of the Fabasoft COO-Service caches can be configured in the COO-Service objects, property "Maximum Cache Size (MB)" in the Fabasoft Domain Administration. The default value is 1024.
Objects are held in cache in a first-in-first-out manner, whereby the last accessed time is considered.
If the used cache size reaches the limit of 80%, a periodic clearing process attempts to keep the cache below 100% of the configured cache size.
- Fabasoft Folio (2007 and later)
- Fabasoft eGov-Suite (7.0 and later)
- Fabasoft eCRM-Suite (7.0 and later)