We were having issues with several packages not being distributed correctly in a large sccm 2012 environment. If we redsitribute the failed packages on a specific dp then the issue is resolved.
We’ll perform a root cause analysis next time, let’s focus on getting our content to the DP’s for now.
So I have created a powershell script ( based on http://www.david-obrien.net/2013/11/redistribute-failed-packages-configmgr-dps/ ) that will take all the failed distributions on a specifc DP and refresh them.
Here it is ( replace XXX with your site code):
$failures = Get-WmiObject -Namespace root\sms\site_XXX -Query “SELECT packageid FROM SMS_PackageStatusDistPointsSummarizer WHERE (State = 3 AND SourceNALPath like ‘$fileserver’ )”
foreach ( $failure in $failures )
$id = $failure.PackageID
$DP = Get-WmiObject -Namespace root\sms\site_XXX -Query “SELECT * FROM SMS_DistributionPoint WHERE (ServerNALPath like ‘$fileserver’ and PackageID=’$id’ )”
If you combine this with content validation on a schedule and the report ->
Software Distribution -> Content -> All active content distribution -> failed
You can export to csv and have a nice filtered excel that can be used as in order to select the correct DP.