• Facebook
  • RSS Feed
  • Instagram
  • LinkedIn
  • Twitter
Apr 132012

Many people who have been around Enterprise Vault, particularly the end-user side of things, for some time will know about the ‘Offline Vault’ trawler.  It’s name nowadays is Vault Cache Trawler, since Offline Vault is now ‘old-school’.  It is essentially the same thing though.

Usually when an end-user/customer implements Vault Cache, it’s for people with Exchange Mailboxes who have had Outlook/Exchange for a considerable period of time. This means that they have a sizeable amount of data in Exchange, and if cached mode is enabled in Outlook, it’s residing on the client machine too.

The Vault Cache trawler aims to take advantage of this by pre-emptively grabbing copies of items from the OST file on the client machine and adding them to the Vault Cache Content Cache. The idea being that if this is done ‘now’, when the item actually gets archived (and would then be downloaded in the next synch after that) the Add-in won’t need to incur that EV server to end-user download ‘charge’.

The Trawler, also known as Pre-Emptive Caching, also known as Background Checker isn’t new. It has been around since the days of Offline Vault. It has, in the Enterprise Vault 8.0 timeframe, gone through some updates. The most significant of those is that it now runs daily – or rather roughly every 24 hours, rather than previously where it only ran once per Outlook session. End-users who just suspend their laptops, and never actually close Outlook didn’t get a lot of benefit from the trawler. Those users are also exactly the sort of targets that it would be a big advantage in not having to go to the EV Server and download the newly archived items.

By default 3 minutes after Outlook is started, the Trawler will begin its job. It will consider items in the OST file, and decide whether to take a copy of them, and add them to the Content Cache.

Configuration of the Trawler can be done in the Desktop Policy. By default the trawler will start 3 minutes after Outlook is opened:

Changing the interval in the policy is performed by some customers to give Outlook more time to ‘settle’ down before the trawling begins.

When looking at Outlook Add-in Client Trace, here are some things to watch for:

29/11/2011 09:58:31.244[3312]: ~DesktopCommonConfig::GetConfigValue: 0x1
29/11/2011 09:58:31.245[3312]: TRAWL: Processing Primary Mailbox Message Store…
29/11/2011 09:58:31.257[3312]: TRAWL: CCTrawler::GetRootFolder: 0x0
29/11/2011 09:58:31.258[3312]: TRAWL: ~CCTrawler::GetRootFolder: 0x0
29/11/2011 09:58:31.259[3312]: TRAWL: CCTrawler::ProcessFolders: 0x0
29/11/2011 09:58:31.260[3312]: TRAWL: CCTrawler::ProcessSubFolders: 0x0
29/11/2011 09:58:31.261[3312]: TRAWL: Processing folder: Deleted Items
29/11/2011 09:58:31.262[3312]: TRAWL: CCTrawler::ProcessFolders: 0x0
29/11/2011 09:58:31.263[3312]: TRAWL: CCTrawler::ProcessSubFolders: 0x0
29/11/2011 09:58:31.265[3312]: TRAWL: ~CCTrawler::ProcessSubFolders: 0x0
29/11/2011 09:58:31.266[3312]: TRAWL: ~CCTrawler::ProcessFolders: 0x0
29/11/2011 09:58:31.267[3312]: TRAWL: Processing folder: Inbox
29/11/2011 09:58:31.268[3312]: TRAWL: CCTrawler::ProcessFolders: 0x0
29/11/2011 09:58:31.270[3312]: TRAWL: CCTrawler::ProcessItem: 0x0

29/11/2011 09:58:32.533[3312]: TRAWL: Processing item: asdasd
29/11/2011 09:58:32.533[3312]: TRAWL: Message class not excluded ‘IPM.Note’
29/11/2011 09:58:32.534[3312]: TRAWL: CCTrawler::EligibleForCaching: 0x0
29/11/2011 09:58:32.535[3312]: CCGeneral::CalculateAgentDate: 0x0
29/11/2011 09:58:32.536[3312]: ~CCGeneral::CalculateAgentDate: 0x40380
29/11/2011 09:58:32.537[3312]: TRAWL: Age of item in days ‘0’
29/11/2011 09:58:32.538[3312]: TRAWL: Message size in bytes ‘7023’
29/11/2011 09:58:32.539[3312]: TRAWL: Item eligible – older than Inactivity Period + Lead Time
29/11/2011 09:58:32.540[3312]: TRAWL: ~CCTrawler::EligibleForCaching: 0x0
29/11/2011 09:58:32.541[3312]: TRAWL: About to insert item
29/11/2011 09:58:32.542[3312]: TRAWL: CCTrawler::InsertItem: 0x0
29/11/2011 09:58:32.543[3312]: CONTENT: ContentCacheImpl::InsertItem
29/11/2011 09:58:32.544[3312]: CONTENT:STORE: CCStore::InsertItem: 0x0

Before the trawler starts you’ll see things like this:

29/11/2011 09:58:30.200[3328]: DTCC: ImplControl<class TrawlerImpl,0>::RunInNewThread
29/11/2011 09:58:30.201[3328]: ImplControl<class TrawlerImpl,0>::RunInNewThread: 0x0
29/11/2011 09:58:30.202[3328]: CRunMe<class ImplControl<class TrawlerImpl,0> >::CRunMe
29/11/2011 09:58:30.203[3328]: ~CRunMe<class ImplControl<class TrawlerImpl,0> >::CRunMe
29/11/2011 09:58:30.205[2256]: CDesktopClientCacheRun::RunMe: 0x0

29/11/2011 09:58:30.217[3312]: DTCC: ImplControl<class TrawlerImpl,0>::Run
29/11/2011 09:58:30.218[3312]: DTCC: Successfully lowered the priority of this thread
29/11/2011 09:58:30.220[3312]: TRAWL: TrawlerImpl::OnThreadStart
29/11/2011 09:58:30.221[3312]: DCC::ConfigBase::GetClientStoreKey: 0x0
29/11/2011 09:58:30.222[3312]: DesktopCommonConfig::GetClientStoreKey: 0x0
29/11/2011 09:58:30.223[3312]: ~DesktopCommonConfig::GetClientStoreKey: 0x0
29/11/2011 09:58:30.224[3312]: ~DCC::ConfigBase::GetClientStoreKey: 0x0
29/11/2011 09:58:30.225[3312]: SetInitialRunInterval: 0x0

29/11/2011 09:58:30.242[3312]: CCTrawlerScheduler::SetNextRunInterval: 0x0
29/11/2011 09:58:30.243[3312]: ++++ UTC Previous trawl time is ”
29/11/2011 09:58:30.244[3312]: ++++ Local Time now is ++++ ‘Tuesday, November 29, 2011 20:58:30’
29/11/2011 09:58:30.245[3312]: +++ Last Trawl time format is missing or invalid (not right length) – run now

29/11/2011 09:58:31.076[3312]: TRAWL: CCTrawler::LogSettings: 0x0
29/11/2011 09:58:31.077[3312]: TRAWL: Background checker caching for Mailboxes will be based on the following settings:
29/11/2011 09:58:31.079[3312]: TRAWL: Caching all items
29/11/2011 09:58:31.080[3312]: TRAWL: CCTrawler::GetLastTrawlTime: 0x0
29/11/2011 09:58:31.081[3312]: TRAWL: ~CCTrawler::GetLastTrawlTime: 0x0
29/11/2011 09:58:31.082[3312]: TRAWL: CCTrawler::GetLastTrawlTime: 0x0
29/11/2011 09:58:31.083[3312]: TRAWL: ~CCTrawler::GetLastTrawlTime: 0x0
29/11/2011 09:58:31.084[3312]: TRAWL: Last background check completed at: 29/11/2011 09:58:30
29/11/2011 09:58:31.085[3312]: TRAWL: Background check started at: 29/11/2011 09:58:30
29/11/2011 09:58:31.086[3312]: TRAWL: Background check frequency: 0 days
29/11/2011 09:58:31.087[3312]: TRAWL: ~CCTrawler::LogSettings: 0x0

The operations are tracked in the registry as shown below:

Can I stop the Trawler?

It is possible to stop the trawler from performing it’s tasks.  Here are two common ways:

1. Don’t use Outlook in cached mode.

With Outlook in online mode, the following is logged in the Outlook Add-in Client Log File:

15/12/2011 13:14:08.952[1784][H]: CONTENT: Trawler thread not started as the mailbox is not an offline store

2. Implement OVStopTrawler

You can adda  registry key to :

HKEY_CURRENT_USERSoftwareKVSEnterprise VaultClient


Name: OVStopTrawler

With the registry key in place you will see the following logged in the Outlook Add-in Client Log File:

15/12/2011 13:39:55.020[3824][H]: CONTENT: Trawler thread not started as the OVStopTrawler registry key has been set

Image credit: yellow book

Powered by Qumana

If you enjoyed this post, please consider leaving a comment or subscribing to the RSS feed to have future articles delivered to your feed reader.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>