XADM: Recurring Address Book Views in Exchange ServerLast reviewed: March 20, 1998Article ID: Q180141 |
The information in this article applies to:
SUMMARYMicrosoft Exchange Server has the ability to order and group recipient objects (mailboxes, custom recipients, DLs) into Address Book Views (ABVs), based on various object properties that these recipient objects may have in common, for example, Company Name, Country, State, Custom attribute, and so on. Once the ABV is defined, objects meeting the criteria will be automatically added to the view; a "child-view" is auto-created if this is the first object with these Group by Attribute (GBA) property specifics. This is performed by a periodic background task (every 5 minutes, typically) known as View Consistency Checker (VCC). For example, suppose an ABV called By Country is defined that includes recipient objects (Mailbox, CR, and so on) grouped by whatever is specified in the Country field (a GBA) (under Properties on the General tab). The first recipient defined with Ireland specified in the country field will result in a child-view titled Ireland being automatically created under the ABV root object, By Country. This auto-create functionality (VCC), combined with some obvious and not-so- obvious recipient object properties or conditions, can result in the unexpected behavior of, or persistent, ABVs.
MORE INFORMATIONABVs are unique Directory objects. An ABV GBA defined in one site becomes a global GBA and can be modified in sites throughout the organization. In contrast, recipient objects that have a property matching a GBA, and thus populating a view, can originate in any site. However, these recipient objects remain modifiable (writeable replicas) only from within their originating site. Proper planning and careful implementation of ABVs can help you maintain accurate and useful views. In particular, ensuring proper spelling within the fields used for generating ABVs, and astute awareness of "hidden recipients" (template mailboxes or otherwise) should be practiced. Additionally, maintaining timely directory replication throughout the organization is essential for successful ABV management.
DeletingEmpty subcontainers and ABVs (root level) whose subcontainers are empty can be deleted. Hidden recipients are not detected by the Delete process, so containers that have only hidden recipients will be deleted, temporarily. When VCC next runs, the hidden recipients will be detected, and the ABV\subcontainer re-created. If empty ABVs mysteriously re-appear, check for hidden recipients in the re-appearing container (on the View menu, click Hidden Recipients in Exchange Server Administrator program and view the contents of the container). Empty ABVs could also result from orphaned objects (see below).
ABV Deletion LatencyIf the recipient object responsible for regenerating the view is from another site, the appropriate changes must be made to that object within its home site, and this change must replicate throughout the organization, so that VCC (in any other site) will no longer "rediscover" the object and regenerate the view. Furthermore, in the case of permanently removing a view from the org, it is essential that all changes required to remove all objects under the view be completed and allowed to replicate fully throughout the organization before actually deleting the view. Unless all objects capable of causing the view to be regenerated are removed (or modified) from the entire organization before you delete the view, the view can re-appear. This is an architectural compromise in ABV design, because VCC automatically generates ABVs but does not automatically delete empty ABVs. Without this compromise, ABVs would be functionally less effective. General recommendations:
Orphaned Recipient Objects Causing Re-Appearance of Deleted ABVsAn orphaned recipient object can result in the persistent re-appearance of an empty ABV if that orphan object includes GBA properties that would result in the auto-creation of the ABV. Consider the example above in the SUMMARY section of this article. In this case, an orphaned mailbox with a misspelled country name of "Irland" would result in an ABV under "By Country" of "Irland" being generated with this mailbox under it. Of course, the orphaned object only exists within one (or more) sites, but not it's original site. Thus, the ABV created in the orphan site will replicate to all the other sites, but, since the other sites don't maintain a replica of the orphan object, they replicate in the view, but cannot populate it with any object. Since there is no object under the child-view, the view can be deleted (in the sites that don't have the orphan) using Exchange Admin, <parent-ABV>, Properties, Advanced tab, Remove Empty Containers. This delete replicates throughout the organization, but once the site with the orphan attempts to delete the view, either: a) it fails to delete the view because it isn't empty; or b) in the case of the orphan also being a hidden object - after the view's deletion, the VCC will later execute, re-discover the orphan and it's qualifying GBA, determine that the child-view "Irland" doesn't exist, and recreate the child-view. Either way, the child-view will again replicate elsewhere.
Resolution for Recurring, Unwanted ABVsAn ABV recurs because an object somewhere in the organization is being re-discovered by VCC. This object could be a valid object (possibly hidden), or an orphan object (possibly hidden). Valid objects should be visible in Admin (viewing hidden recipients requires selecting "View, Hidden recipients" in Admin). Valid objects should be modified appropriately in their originating site, and once the modification replicates throughout the organization, the previous ABV can be deleted (review the "General recommendations" above). Removing undesired recurring ABVs due to orphan objects requires that the orphan object be remedied first, and then the clean-up of the ABV can proceed as documented above. This can be complicated by the fact that the view may appear in every site, but only the site harboring the orphan will "populate" the view with a causal object (also, remember that the orphan object could be hidden).
Finding the Site Harboring the OrphanThe ABV may contain recipient objects. If the ABV contains objects, then the originating site of these objects is revealed by viewing the recipient object's "DSA-Signature" raw property, and determining which site\server this object came from by comparing this DSA-Signature to a list of "Invocation-Ids" for the organization. If the ABV is empty, and the possibility of a hidden object has been dismissed, tracing the origin of the view occurs in the following sequence:
Resolving the orphan object: Once the orphan's location has been determined the orphan's raw properties should be examined to determine the true origin site of the orphan, and the orphan object should be resolved using one of the options documented in the Knowledge Base article referenced below. For additional information, please see the following article in the Microsoft Knowledge Base:
ARTICLE-ID: Q179573 TITLE : XADM: Orphaned Objects and Exchange Server Directory Keywords : XADM kbusage Version : WinNT:5.0,5.5 Platform : winnt Issue type : kbprb Solution Type : kbworkaround |
================================================================================
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |