MORE INFORMATION
ABVs 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.
Deleting
Empty 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 Latency
If 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:
- Carefully plan and administer ABVs.
- Administer ABV centrally, particularly in larger organizations. Due to
the ABV deletion latency mentioned above, if multiple administrators are
modifying the same ABVs at various sites simultaneously, it will be
increasingly difficult to provide consistent views across the
organization. (This is similar to the replication conflict that can
occur within a site if the same object is modified on two different
servers at the same time.)
- If the organization is very large, and\or replication latency throughout
organization is unknown, and an ABV needs to be deleted, consider the
following procedure:
- Identify all objects currently populating the view, and modify or delete
them in their origin sites as appropriate so they will no longer
populate the view.
- [From the "Central Administration site\server"] preface the "Display
Name" of the ABV with "zzz", so that it will appear at the end of the list.
- [From the "Central Administration site\server"] If this is a root-level
ABV, disable its appearance in the Address Book by clearing the "<view
properties>, Advanced page, Show this view in client address book"
checkbox.
- Wait a reasonable number days of before actually deleting the ABV from
the "Central Administration site\server". By default, tombstone
lifetimes are 30 days, so waiting the full tombstone lifetime from when
the recipient objects were modified (step "a" above) is recommended.
NOTE: Modifying a site's tombstone lifetime is not advised, as it will not
hasten replication nor otherwise improve replication latency - furthermore,
it could result in orphaned objects (which is undesirable - see below).
Orphaned Recipient Objects Causing Re-Appearance of Deleted ABVs
An 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 ABVs
An 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 Orphan
The 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:
- View this ABV's DSA-Signature.
- Match this DSA-Signature to a server in the list of Invocation-IDs.
- Examine the ABV for orphans on the directory matching the DSA-Signature
listed in step 2 by running Admin.exe against that Exchange Server
computer.
- Repeat steps 1, 2, and 3 until the ABV with the orphan object
site\server is located (don't forget to look for hidden objects).
Obviously, this procedure may require examining objects in directories of
various sites. Cooperation and coordination between Exchange Server site
administrators may be required.
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:
179573
XADM: Orphaned Objects and Exchange Server Directory