I’m a participant on an internal discussion alias where field people will ask pretty narrow technical questions about Exchange. A lot of these are of the form:
I’ve got a customer here who’s trying to use the geflazzle feature in conjunction with geocaching and
I have no idea.
However, a tidbit like the following comes along (an actual email, slightly edited for extra clarity):
I have a Public Folder question for E2K/E2K3 that I can not seem to find an answer for anywhere.
Here’s the scenario:
I have a mailbox that is on Server A. Server A has no Public Store it has been deleted purposefully. Instead the default Public Store of my Mailbox Store points to another server in the same Admin Group/Routing Group, Server B.
I also have another PF Server, Server C in the same Admin Group/Routing Group. There is a Public Folder on this server called, “Users.” The “Users” Folder has no replicas anywhere else; content resides only on Server C.
When I use Outlook to drill down and expand the content of the “Users” folder I will obviously get referred to Server C by Server B since B is my default PF store and I will always look locally for the Public Folder first (at least that’s my understanding of how it works). If I then create a folder under “Users” called “Jose” where will this folder be created? Will it get created on Server B, since this is my default PF server? Or will it get created on Server C since this is where the “Users” folder is homed?
Yesterday I tried this, after I had created the “Jose” folder I connected to Server C (which is where “Users” is) via ESM and I did not see the Folder, yet I can already post to it in OL as soon as I finished creating it. I checked Server C again about 5 minutes later and voila it was there.
So my question is this, where was the “Jose” folder originally created? The question has a much greater value than just knowing where it was created but I want to take it one step at a time.
Any info you can provide me with will be greatly appreciated.
A little background:
- Each folder maintains a replica list. This is a property of the folder and it replicates to every public folder server in the topology. The replica list indicates the subset of the public folder servers that actually have content for that folder.
- A mailbox store has a “default” public store, which is the store the client will contact for any information about folders, but not necessarily for any content. This is also the server where new folders are created by the client.
- When a new folder is created, it inherits several settings from its parent, including the replica list.
- There is latency in replication.
You can see a problem forming: In the scenario described above, the folder is created on Server B, and it inherits its parent’s replica list, which is Server C. There’s now a conflict of interest: The folder does not yet exist on any server yet other than B since there’s a replication latency of up to five minutes for folders. Only users whose mailbox resides on Server A will see the folder, since they are configured to use Server B for hierarchy information. However, if the system says “Replica list is server C, go there please”, everyone will be referred to a server that doesn’t even have the folder. However, we do want people to be able to immediately start posting into the folder they just created.
This requires the “temp replica” feature. When a new folder is created, the creating server lists itself as a temporary replica for the folder. This allows everyone on Server A to immediately start posting content. Once the folder itself physically replicates to Server C, that server will note that it too is a replica and will go through the normal backfill process to get all the content replicated in. However, Server B will note that there is now another active replica of the folder and will automatically delete itself from the replica list. This leads to the replica deletion process, which doesn’t even begin until all clients have disconnected from Server B. Note that no new clients will be able to get content from Server B (as it’s now listed as pending deletion). Once all clients have disconnected, the dance will finish, and Server C will be the sole replica for the folder.
There’s a lot more complexity if Exchange 5.5 is involved, and more details are listed in this KB article: http://support.microsoft.com/?id=253297. The details of the article concentrate on 5.5 and the notion of “rehoming” the folder. There’s no such notion in Exchange 2000 and later (unless your topology includes 5.5 public folder servers).