IBM Support

Controller 8.x (and 10.1) and Windows users profiles - description of temporary files used and created

Troubleshooting


Problem

Customer would like a description of what files are created inside the Windows profile of a Controller 8.x (or 10.1) user.

Symptom

Typically, the reason why a customer would like to know this is because their I.T. department wish to manage their Citrix (or Terminal Services) server's profile directory.
  • For example, the Citrix server's hard drive (C: drive) is getting full.

Cause

TIP: For more information on this topic, see separate IBM Technote #1397747.
There are several different types of files that are created/used on the client device (for example on the end user's desktop PC, or the Citrix/Terminal Server if they are using one):

(1) Microsoft Internet Explorer cache
Internet Exporer (IE) is being used as a fundemental part of the client<=>server communication. For example:
  • Most customers launch Controller using Internet Explorer ( for example using a link similar to http://<controllerserver>/cognos8/controllerbin/ccr.exe)
  • All communication (between Controller client and Controller application server) is via web (HTTP) traffic (to/from the IIS web server)
Therefore, my Microsoft design, there will be IE cache files created in the relevant Microsoft directory. By default this is: C:\Documents and Settings\%USERNAME%\Local Settings\Temporary Internet Files

(2) Microsoft .NET components
The Controller client has been written/coded as a standard Microsoft .NET application (Controller 8.1.x uses .NET 1.1 SP1 and Controller 8.2/8.3/8.4/8.5 uses .NET 2.0.
  • By design, the client software comprises of many separate .NET files/components (for example called 'ControllerProxyClient.DLL', 'Xceed.SmartUI.Controller.DLL' and so on)
    • Each of these files is downloaded 'on demand' by the Controller client. In other words, they are downloaded when the user launches functionality that requires them
  • Because these files are downloaded by Internet Explorer:
    • they will first appear inside the IE cache folder (see section 1, and attached picture 'Typical_Temporary_Internet_Files_cache_from_old_Controller_version_(8.2).gif' for a graphical representation, based on the old Controller 8.2 version)
    • However, after being downloaded, they will also then be copied to the Microsoft .NET 'assembly' folder (from where they are executed). By default, this assembly folder is here: C:\Documents and Settings\%username%\Local Settings\Application Data\assembly

(3) Controller cache files
The first time that a user launches Controller, it creates the following file: C:\Documents and Settings\%username%\Application Data\Cognos\ccr\ccr.config
This file stores many settings that the user has, for example:
  • Last logon username
  • Is SelectDb enabled or not?
From then onwards (inside the same folder = C:\Documents and Settings\%username%\Application Data\Cognos\ccr) many Controller-specific application cache files (and folders) are created
  • These are 'cache' files
  • By design, these are used to greatly speed up the operation of Controller
In addition (since Controller version 8.4 onwards) the Controller client has had some new functionality which relies on JAVA
Therefore, for some users (depending on environment - see later) running Controller 8.4 or later, there is a new subfolder "...\CCR\integration"
  • this 'integration' folder contains Java-related files, which are required for Java-related functionality (for example AFC/allocations - "Automatic Journals>Control Tables>Allocation" - and the menu item 'System info') to work correctly.
  • This has added approximately 100Mb of file requirements (more than for older Controller versions 8.1/8.2/8.3 which did not use JAVA).
 
(4) Eclipse (Java) 'ccr-config' files
These exist from Controller 10.1.1 FP1 (10.1.1671) and later versions
  • They are located inside inside a folder in the end user's Windows user profile. For example, on Windows 7 the location is: C:\Users\<Username>\ccr-config
  • This has added approximately 25Mb of file requirements (more than for older Controller versions which did not use JAVA Eclipse).
By default, these are created the first time that a user launches the Controller client
  • However, it is possible to reconfigure Controller to create them only the first time that a user uses any Java-related functionality. For details on how to do this, see separate Technote #1593341.

Resolving The Problem

Approximate Size of Folders
Naturally, the amount/size of files inside the above folders will vary:
  • between end users, depending on what functions they use (superusers / 'standard' users etc.).
  • over time (as the end user uses the system)

To give an idea of the sort of space used for a typical user, below are some sensible approximate/estimate figures:
(1) Microsoft Internet Explorer cache
  • 150 Mb
(2) Microsoft .NET components
  • 50 Mb
(3) Controller cache files
  • 50Mb CCR 'standard' cache
  • plus (for some 'advanced' users) 100Mb Java 'integration' files (if the integration files are not optimised - see later)
=> total of 50Mb (or 150 Mb)
(4) Eclipse (ccr-config) folder
  • 25Mb

=> As a ballpark figure, a typical superuser may use a total of approximately 250Mb (or 375Mb if the integration files are not optimised - see later) inside their Windows user profile for storing files related to Controller.

Can I safely delete these files?


If these files are deleted (for example after the user has logged off from Controller) then (the next time the user runs Controller):
  • the user will have lost some of will lose some of their 'personalised' settings
  • and performance will not be optimal (because the Controller client will have to re-download many files from the application server's website).
Therefore, it is not recommended that the end user's user profiles are 'cleared out'.

My Citrix/Terminal server's hard drive is full. What can I do?
The files/folders listed above are inside the Windows user's profile. Profiles are stored inside the folder %USERPROFILE%. By default, this is on the Citrix/TS server's system drive (C:), inside subfolders of C:\Documents and Settings\...

Let us imagine a typical Citrix or Terminal Server, where 50 users logon to it over time. Therefore, there are 50 user profiles, which means that the Controller cache files (see above) would total approximately 50 x 375Mb = approx 18Gb.
=> If the Citrix Server has a small C: drive, then this will naturally cause problems.
Solution #1 - Increase the size of the C: drive partition so that plenty of space (e.g. 16 or 32Gb+) is free.
There are many ways to do this, for example by using one of the following third party methods:
  • Partition Magic
  • Symantec Ghost
Solution #2 - Move the user profiles to a different hard drive (e.g. D: drive) which has much more free hard drive space
  • For example, Windows 2000 Server stores the location settings inside the following registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
Look for entries such as:
  • ProfilesDirectory - default value = %SystemDrive%\Documents and Settings
  • ProfileImagePath - default value = %SystemDrive%\Documents and Settings\<username>
For more information on how best to modify these, see Microsoft documentation.

IMPORTANT: Do not move the user profile location to a network drive. For example, do not move the %APPDATA% variable to a UNC network share, for example. This will lead to performance problems and error messages (see separate IBM Technotes #1385791, 1386354 & 1391066).
Solution #3 - Use the new "CacheDir" feature of Controller 10.x
From Controller 10.1, you can use the new "CacheDir" (also known as "CACHE DIR") parameter, which is available if using the "Controller Local Client" ("CCRLocalClient.Msi"). This will move the storage location of the 'cache files' (*.DSS and *.DSD) into subfolders of the "CACHE DIR"
  • For more details, see separate IBM Technote #1409414
 

Is there a way to reduce the size of the space taken up by multiple 'integration' folders on my Citrix / Terminal Server?

By default, Controller 8.4/8.5/10.1.0 (plus non-local 10.1.1 clients) will create a separate 'integration' folder for each and every end user who logs onto the Citrix/Terminal server (inside their user profile).
  • However it is possible to configure the Citrix/Terminal server to share the same (single) integration folder for all end users, which significantly reduces the amount of space used (typically at least 100Mb per user).
  • For a method of how to achieve this, see separate IBM Technote #1585295

Typical_Temporary_Internet_Files_cache_from_old_Controller_version_(8.2).gif

[{"Product":{"code":"SS9S6B","label":"IBM Cognos Controller"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"Controller","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.5.1;8.5;8.4;8.3;10.1;10.1.1","Edition":"Edition Independent","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Historical Number

1036530

Document Information

Modified date:
09 March 2020

UID

swg21347422