elitegk
asked on
Exchange 2010 Public Folder Not Deleting Items after Age Limit
Hello Experts,
DISCLAIMER: I'm not a Exchange Guru of any sort. I'm more of your Level 2 Jack-Of-All-Trades types. So go easy on me.
I'd like to delete items in a mail-enabled public folder (Exchange 2010) after X amount of days. I've found blogs, articles, and even Microsoft documentation on how to do so. So to start off I'm going to explain what I've done:
At this time I have this PF's "Local Replica Age Limit" and "age limit for replicas (days)" set to X days. EVERYTHING I'm reading is telling me that if I set the "Local Replica Age Limit" that items (in my case emails) should be deleting themselves automatically so I MUST be missing something.
Help me out here Guys/Gals.
DISCLAIMER: I'm not a Exchange Guru of any sort. I'm more of your Level 2 Jack-Of-All-Trades types. So go easy on me.
I'd like to delete items in a mail-enabled public folder (Exchange 2010) after X amount of days. I've found blogs, articles, and even Microsoft documentation on how to do so. So to start off I'm going to explain what I've done:
In the Public Folder Management Console (PFMC) I went under the PF's properties > Replication and set the "Local Replica Age Limit" to X days. Our PF Database's replication time is set to every 15 minutes, so I waited an hour to see any change. I saw nothing.
Thinking that I had somehow misinterpreted the Microsoft documentation on public folder attributes I also set the "age limit for replicas (days)" attribute to X days as well. This time I waited 24 hours, but still no emails were deleting themselves.
At this time I have this PF's "Local Replica Age Limit" and "age limit for replicas (days)" set to X days. EVERYTHING I'm reading is telling me that if I set the "Local Replica Age Limit" that items (in my case emails) should be deleting themselves automatically so I MUST be missing something.
Help me out here Guys/Gals.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
A server level backup isn't Exchange aware, therefore recovery of the Exchange data may not work correctly. Exchange is not designed to be backed up using any kind of "open files" or image based backup. The backup flushes the logs and Exchange does other things in the background.
If you look at the properties of the database then it will tell you when the database was last backed up by an Exchange aware backup. There is nothing in Exchange to do the backup (like there is with SQL). You can use Windows Backup, but that isn't very flexible and not many clients of mine use it.
My instinct is the lack of backups is the cause.
Simon.
If you look at the properties of the database then it will tell you when the database was last backed up by an Exchange aware backup. There is nothing in Exchange to do the backup (like there is with SQL). You can use Windows Backup, but that isn't very flexible and not many clients of mine use it.
My instinct is the lack of backups is the cause.
Simon.
ASKER
I checked the PF Database and it shows it was backed up at 4PM today, so the backups either appear to be exchange aware or there is another backup locally on the box.
So with that out of the way, are we sure that the deletion of old email will not take place until the setting has been in place for that specified amount of days?
Example: I set "Local Replica Age Limit" to 30 days. There are emails in the PF that are 60+ days old currently, but those emails will not automatically delete until that settings has been active for 30 days. I feel like I misunderstood what you were saying, which is why I want to clarify. That seems a bit off.
So with that out of the way, are we sure that the deletion of old email will not take place until the setting has been in place for that specified amount of days?
Example: I set "Local Replica Age Limit" to 30 days. There are emails in the PF that are 60+ days old currently, but those emails will not automatically delete until that settings has been active for 30 days. I feel like I misunderstood what you were saying, which is why I want to clarify. That seems a bit off.
ASKER
Simon - Any news?
Everyone else - Anyone else willing to chime in on what I have going on?
Thanks in Advance,
EliteGK
Everyone else - Anyone else willing to chime in on what I have going on?
Thanks in Advance,
EliteGK
Run a repair of the public folder database.
Also, you do not want to use "age limit for replicas (days)". Only use the "Local replica age
limit (days):" setting.
New-PublicFolderDatabaseRepairRequest -Database "Public Folders" -CorruptionType ReplState
Check the event log for any errors.Also, you do not want to use "age limit for replicas (days)". Only use the "Local replica age
limit (days):" setting.
ASKER
Thank you for responding. I was starting to loose hope. :/
I'm going to be captain obvious and say that the db repair needs to be done off hours, correct? Also, I'm going to guess that backing up the DB is a good thing. Any suggestions on the easiest/best way to do that?
Thanks in advance,
EliteGK
I'm going to be captain obvious and say that the db repair needs to be done off hours, correct? Also, I'm going to guess that backing up the DB is a good thing. Any suggestions on the easiest/best way to do that?
Thanks in advance,
EliteGK
Actually, db repair can be done online and is non-disruptive starting with Exchange 2010. Therefore, captain, it can be done during business hours. ;-)
Backing up of exchange databases should be done by any decent server backup software. It's always good to have backups, but these repair tools are quite safe to run.
Backing up of exchange databases should be done by any decent server backup software. It's always good to have backups, but these repair tools are quite safe to run.
ASKER
Ok thanks for the info. I'm working on another outage currently and don't want to stack them on top of each other, so I should be able to try this out tomorrow.
Thanks again,
EliteGK
Thanks again,
EliteGK
ASKER
So I ran the repair just a moment ago and it completed successfully. This is what I saw in the event logs.
Let me know your thoughts on the above. It seems like it identified some corruption on the DB and is either telling us that it removed mismatched replications or is making a suggestion to do so.
Thanks,
EliteGK
Corruption(s) detected during online integrity check for request 5a2fb391-b90a-45c0-84e2-15ee0fbb50f5
Database:Public_Folders
Table:ReplState
Corruption Is Fixed FID Property Resolution
Public Folder Replication State, Yes, 2-FFFFFFFF0004, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 3-7, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 3-8, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 5-12, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 5-13, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 5-14, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 5-16, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 5-17, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 5-18, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 5-19, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 5-1A, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 6-11, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 6-12, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 6-13, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 6-15, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 7-7, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 7-8, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 8-22, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 8-23E4A, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 8-23E4B, 0x66980102, Remove mismatched replication state entries
Public Folder Replication State, Yes, 9-8, 0x66980102, Remove mismatched replication state entries
Let me know your thoughts on the above. It seems like it identified some corruption on the DB and is either telling us that it removed mismatched replications or is making a suggestion to do so.
Thanks,
EliteGK
You always can re-run the repair and see if it comes back clean.
Also, is it now behaving as expected?
Also, is it now behaving as expected?
ASKER
So I re-ran the repair and it did come back clean, so that's good! :)
Unfortunately I don't believe that it's working as expected. Under properties for the Public Folder DB and then Replication I'm seeing the following
My understanding is that the public folder settings should be pushing out every 15 minutes. With that in mind the 180 day Local Replica Age Limit should be deleting the emails older than that every 15 minutes, correct?
Unfortunately I don't believe that it's working as expected. Under properties for the Public Folder DB and then Replication I'm seeing the following
My understanding is that the public folder settings should be pushing out every 15 minutes. With that in mind the 180 day Local Replica Age Limit should be deleting the emails older than that every 15 minutes, correct?
That screen simply shows replication intervals and message sizes.
You want to get to the Local replica age limit (days): setting.
You want to get to the Local replica age limit (days): setting.
ASKER
That setting is already set at 180 days at the folder-level for the folder in question. I'm asking where to view how often that setting would be applied (i.e. enforced) so I can check to see if the emails are being deleted?
If you need clarification on what I mean let me know.
If you need clarification on what I mean let me know.
Mailbox cleanup process usually happens every 24 hours.
ASKER
I checked this morning and there are still emails in the folder before October 17 (I believe that's 180 days prior to us now). Two quick questions:
As a side note, I did notice that under the public folder's Properties > Limits tab I had left the Use Database age defaults unchecked which allowed for the Age Limit for Replica (days) settings to be set. I've corrected this so that only the Local Replica Age Limit (days) setting is set for the public folder.
Again thanks for all of your help so far.
Is there a place to see what time the mailbox cleanup should take place? If so, where?
If not, is there a universal time that this should be taking place?
As a side note, I did notice that under the public folder's Properties > Limits tab I had left the Use Database age defaults unchecked which allowed for the Age Limit for Replica (days) settings to be set. I've corrected this so that only the Local Replica Age Limit (days) setting is set for the public folder.
Again thanks for all of your help so far.
At this point, we'd need to take a wait-and-see approach.
In the meantime, could you post the output of the following into a "Code" window:
In the meantime, could you post the output of the following into a "Code" window:
Get-PublicFolderDatabase | fl *period*,*delete*,*maint*
ASKER
Sure.
ItemRetentionPeriod : unlimited
ReplicationPeriod : 15
EventHistoryRetentionPeriod : 7.00:00:00
DeletedItemRetention : 14.00:00:00
RetainDeletedItemsUntilBackup : False
BackgroundDatabaseMaintenance : True
ReplayBackgroundDatabaseMaintenance :
BackgroundDatabaseMaintenanceSerialization :
BackgroundDatabaseMaintenanceDelay :
ReplayBackgroundDatabaseMaintenanceDelay :
MimimumBackgroundDatabaseMaintenanceInterval :
MaximumBackgroundDatabaseMaintenanceInterval :
MaintenanceSchedule : {Sun.1:00 AM-Sun.5:00 AM, Mon.1:00 AM-Mon.5:00 AM, Tue.1:00 AM-Tue.5:00
AM, Wed.1:00 AM-Wed.5:00 AM, Thu.1:00 AM-Thu.5:00 AM, Fri.1:00 AM-Fri.5:
00 AM, Sat.1:00 AM-Sat.5:00 AM}
Methinks we need to update the value of ItemRetentionPeriod
From get-help set-publicfolderdatabase -full it states:
-ItemRetentionPeriod <Unlimited>
The ItemRetentionPeriod parameter specifies the length of time that items are retained in a folder before they're deleted during store maintenance.
From get-help set-publicfolderdatabase -full it states:
-ItemRetentionPeriod <Unlimited>
The ItemRetentionPeriod parameter specifies the length of time that items are retained in a folder before they're deleted during store maintenance.
Set-PublicFolderDatabase -Identity "Public Folders" -ItemRetentionPeriod 180
ASKER
The only issue I see is that there are other folders that I do not want to apply this setting to.
*Puts his cpt. obvious cap on again*
I would assume that applying the item retention value at this level would force the other folders in the public folders DB to do the same, right?
*Puts his cpt. obvious cap on again*
I would assume that applying the item retention value at this level would force the other folders in the public folders DB to do the same, right?
ASKER
I've also checked again today and the same emails are in the folder back past 180 days.
Have you repeated the troubleshooting steps you went through prior to the database repair?
ASKER
As per Sembee's original suggestion, I did again check the properties of the PF DB and it is showing that a backup did occur today. There is no incremental backup showing, but a full backup time is listed there.
Other than that I've checked the settings again for the Local Replica Age Limit for the Public Folder in question and it is set.
To be clear, I did not set the ItemRetentionPeriod because of my previous post. There are other public folders in this database that I do not want set with a local replica age limit.
I also have a question. Sembee (the origional expert to respond to my post) was implying that if I set the Local Replica Age Limit for X days, that even though there are items older than X days old in that PF, they will not start deleting until X days have passed with that setting in place. Does that sound correct to you? It sounded a bit off to me and want to make sure I'm not going to need to wait 180 days for items to start deleting.
Let me know if any of that made sense.
EliteGK.
Other than that I've checked the settings again for the Local Replica Age Limit for the Public Folder in question and it is set.
To be clear, I did not set the ItemRetentionPeriod because of my previous post. There are other public folders in this database that I do not want set with a local replica age limit.
I also have a question. Sembee (the origional expert to respond to my post) was implying that if I set the Local Replica Age Limit for X days, that even though there are items older than X days old in that PF, they will not start deleting until X days have passed with that setting in place. Does that sound correct to you? It sounded a bit off to me and want to make sure I'm not going to need to wait 180 days for items to start deleting.
Let me know if any of that made sense.
EliteGK.
Yes it makes sense, and yes, I would tend to think that he is correct in that it may take N-days to get it to start deleting data based upon the value contained for "age limit for replicas (days)".
I'd need to research to confirm this. It isn't looking at the age of the object (the date/time stamp), it's looking at the date the replica took place.
What are the values you have set for:
Local Replica Age Limit
age limit for replicas (days)
I'd need to research to confirm this. It isn't looking at the age of the object (the date/time stamp), it's looking at the date the replica took place.
What are the values you have set for:
Local Replica Age Limit
age limit for replicas (days)
ASKER
Thanks. For the PF in question, I have:
Local Replica Age Limit: 180 days
Age Limit for Replicas (days): I have it checked to use the Database Default.
Local Replica Age Limit: 180 days
Age Limit for Replicas (days): I have it checked to use the Database Default.
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
ASKER
Firstly, thanks for responding. Ok, so we currently use a backup solution that does it's backups at the server level, so I don't believe it's "Exchange Aware". Is there a mechanism built into exchange to do the backups necessary? Or is there a way to check the last time the database was backed up with the EMS?
And oh...ok. So I understand correctly, if I set the "Local Replica Age Limit" to 30 days, the items 30 days or older (at this moment) will not be deleted. It would take 30 days for everything past 30 days to start deleting? The requester of the cleanup wants to keep things 6 months out so I'm going to have to wait ~180 days to see if this starts to delete.