Behaviour prior to Profile Management 7.18
There have been two Outlook-related performance challenges with Citrix Profile Management.
To best explain, we’ll take a user that has an existing Profile Management 7.17 profile and launches published Outlook (or opens Outlook in a desktop session). Outlook has been configured to use the Outlook .OST cache. The location of the file is typically:
C:Users<user>AppDataLocalMicrosoftOutlook<email address>.OST
In Outlook cached mode, the OST file can be very large, so there is a significant overhead if the OST file is part of Profile Management logon/logoff synchronization.
Actions in Outlook, such as sending/receiving mail result in changes to the Outlook search index database. This data is stored in the Windows search index database: Windows.edb.
This is a machine-based file, which means it holds search index data for all users logging onto the machine. If a user launches an Outlook session (or opens Outlook in a desktop session) on a VDA machine that they haven’t access previously or haven’t accessed for a while, the Outlook search index has to be rebuilt in Windows.edb. Outlook searches have to wait until re-indexing finishes. The location of the Windows search index database is typically: C:ProgramDataMicrosoftSearchDataApplicationsWindowsWindows.edb
We can see this design in the image below:
Behavior using VHDX-based Outlook cache and Outlook search index on a user basis
The Profile Management 7.18 release introduced a feature to address these Outlook-related performance challenges.
To explain we’ll use the same user as above, but logging on to a 7.18 version VDA for the first time.
During the Profile Management logon, the user’s Outlook-related search index is split out of the Windows search index database (Windows.edb) and written to a VHDX file created at:
PathToUserStore<User_information>VHD<Platform>OutlookSearchIndex.vhdx
The remote VHDX file is then mounted locally in the user’s local profile at:
C:Users<user>AppDataRoamingCitrixSearch.vhdx
From this point, the user has their own profile-based version of the Outlook search index database. Within the Search.vhdx mount-point folder, the Outlook search index database is named < userSID>.edb
The Outlook .OST file is converted into a VHDX file and stored at:
PathToUserStore<User_information>VHD<Platform> OutlookOST.vhdx
The remote VHDX file is then mounted locally in the user’s local profile at (default):
C:Users<user>AppDataLocalMicrosoftOutlook.vhdx
During the Outlook session, changes to the Outlook search index and Outlook .OST are made directly to their respective VHDX files over SMB.
The feature also requires additional registry settings to be created. Read the Registry Changes section for further information.
When the user logs off the session, both VHDX files are unmounted from the local profile. Because the VHDX files had been mounted over SMB, no synchronization is required at Profile Management logoff. The additional registry settings are synchronized to the user’s profile store (or before if the Active Writeback Registry feature has been enabled).
Feature Enhancements introduced in Citrix Virtual Apps and Desktops 1808
The Profile Management 1808 release Outlook search index feature supports groups explicitly excluded through the Profile Management Excluded Groups policy as well and groups implicitly excluded through the Profile Management Processed Groups policy (see Feature Limitations for further information).
This release also introduced support for Windows 10 1803.
Feature Limitations