XADM: Public Folder Slowness in Folders with Thousands of Messages

Article translations Article translations
Article ID: 188631 - View products that this article applies to.
This article was previously published under Q188631
This article has been archived. It is offered "as is" and will no longer be updated.
Expand all | Collapse all


The creation, modification, and deletion of messages in public folders that have many thousands of messages may appear slow.


The Exchange Server information store maintains data for every client regarding the read or unread status of every message. This per-user read/unread processing can cause operations to appear slow when the number of messages in the public folder is very large.


To work around this problem, create a hierarchy of folders to distribute the messages so that fewer messages are in each folder.


Microsoft recognizes the need for disabling per-user read/unread processing for specific folders in certain circumstances. We have modified Microsoft Exchange Server 5.5 so that it is possible to programmatically disable this processing on a particular folder.

To obtain this feature, obtain the latest service pack for Exchange Server version 5.5. For more information, please see the following article in the Microsoft Knowledge Base:
191014 XGEN: How to Obtain the Latest Exchange Server 5.5 Service Pack

The English version of this feature should have the following file attributes or later:
Component: STORE
   File Name     Version
   STORE.EXE    5.5.2435.0
   MDBMSG.DLL   5.5.2435.0
   GAPI32.DLL   5.5.2435.0
This feature was first included in Exchange Server 5.5 Service Pack 2.


Disabling per-user read/unread processing for a folder causes the state of read/unread properties to become inconsistent for objects in the folder. This inconsistency may cause confusion among users who expect that they can influence the read/unread state of a message.

To disable per-user read/unread processing for a public folder, a new MAPI folder property has been created. The new property has the following definition and will eventually be added to the EDKMDB.H header file included in the Microsoft Platform SDK. Until such time, you must add the property definition manually in your source code.
Set this property to a non-zero value (TRUE) on the public folder for which you want to modify per-user read/unread processing.


Article ID: 188631 - Last Review: October 9, 2013 - Revision: 3.4
  • Microsoft Exchange 2000 Server Standard Edition
  • Microsoft Exchange Server 5.5 Standard Edition
kbnosurvey kbarchive kbfea kbprb kbqfe KB188631

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com