Wednesday, August 6, 2014

I have been gearing up for a production release of Live Inbox for Outlook in the past days. In one of my test machines - which is is set up with Outlook 2013 Professional - 64 bit, Windows 8.1, and configured with 3 GMail IMAP4 account, 2 Exchange Active Sync account (Hotmail), 1 POP3 and some archived PST's

I was pretty surprised to find that the Outlook user interface was not responding. It was not that the application had hung up - windows even did not offer me to terminate outlook. I looked up the Live Inbox Logs and found out that the "heartbeat" (a kind of watchdog timer Live Inbox uses) was still alive and was processing stuff.

I had my doubts on
  1. Is some other plugin that is causing a hang ?
  2. There were threads going on some time back on WPF performance, due to lack of UI Automation clients, Windows Font cache, graphic drivers etc etc
#2 During some tests, we do run Live Inbox as a separate app (outside outlook i mean), these tests runs for days - and we never had an issue. We didn't have processor intensive code that ran on the UI thread that would warrant a hang that runs for hours. Even our watchdog timer was alive and kicking. the processor use was low.

Removed All Outlook Plugins
#1 - We removed all plugins including Live Inbox - and outlook still hanged on synchronization.

So there was a sync problem. I turned on the folder list view (ctrl-6) in Outlook and saw a lot of sync issues:

10:41:18 Synchronizer Version 15.0.4609.1000
10:41:18 Synchronizing Mailbox 'support@****-*****.com'
10:41:35 Synchronizing server changes in folder 'Inbox'
10:41:40 Error synchronizing folder
10:41:40          [8004DF03-0-0-560]
10:41:40 Canceled

12:58:33 Synchronizer Version 15.0.4609.1000
12:58:33 Synchronizing Mailbox 'adarsh@**********.com'
12:58:33 Terminated in error
12:58:33          [8004DF0B-0-0-940]

PST File Integrity
So I ran the scanpst tool to see if there were errors in the file. Yes there were - and I fixed it. Now when i check the PST again, i see the errors persisted. A look into the scanpst generated logs showed me countless entries like

Failed to add row to the FLT, RowID = xxx
??Couldn't find BBT entry in the RBT (3C38)
??BBT entry (61FC) has different refcount in RBT (22 vs 2)

PST Info from Control Panel/Mail
Control Panel/Mail Setup/Data Files/Settings spew out errors for all the OST's
An unknown error occurred, error code 0x80040605
Your Outlook data file cannot be configured. C:\mail\xxx.ost

PST Info from Outlook/All Folders/Data file properties
Stopped synchronization with IMAP in outlook, enabled work offline.I went into the data file properties/Advanced and i got "The Information Service cannot be configured. Either the information service does not posses properties required for configuration, or the MAPI configuration file entry point could not be determined."

Outlook 2013 has no issues in displaying mails though and Live Inbox can access them through MAPI. While synchronizing mails, the hanging continued with absolutely no plugins. Outlook could be closed by the close window but it continued running in the background.

Final Solution
Since scanpst reported Block BTree's missing, and the Block Btree's are part of the higher Node Database Layer, which is accessible from the PST headers, I was kind of questioning myself - has it been broken beyond repair?  I tried a tool from Stellar (Phoenix Outlook PST Repair), which only works on PST(like the name says). In my case, (which I believe was terminal case) it could not fix the errors scanpst presented.

So I created a new profile, brand new accounts. I was happy to have all my sent mail from the server (kudos to IMAP4). I however did not try importing these mails to a new outlook store.

Now Live Inbox and Outlook both do not freeze.

Have a problem, write to support and I'll respond. Thanks!