SCDPM 2010 - Fail to synchronize protection group member

we have a protection group to take backup of dns data on a externally accessible dns server. the protection group simple copies some exported registry keys for the DNS role and also the dns data location which is shown in the below error details of the failed
job.
this protection group is able to run this same exact job on another dns server. I am not sure why this is happening, can someone please help?
Type: Synchronization
Status: Failed
Description: DPM encountered an error while performing an operation for \\?\Volume{1aef1d28-b99b-11e0-89d5-806e6f6e6963}\Windows\System32\dns\xxxxxxxxxxxx.xxx.dns.temp
on DOMINION02.xxxxxxx (ID 2033 Details: The parameter is incorrect (0x80070057))
 More information
End time: 29/04/2015 1:18:52 p.m.
Start time: 29/04/2015 1:18:38 p.m.
Time elapsed: 00:00:13
Data transferred: 0 MB
Cluster node -
Source details: C:\
Protection group members: 2
 Details
Protection group: DNS

Hi,
What version of DPM + UR are you running.  The above are alert details and do not contain the cause of the job failure. What are the details of the failed JOB ?   Have you check the application and system event logs on the file server
for errors at the time of the backup failure ?  Have you tried rebooting the protected server ?
Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT]
This posting is provided "AS IS" with no warranties, and confers no rights.

Similar Messages

  • DPM 2012 Cannot modify or create protection groups after upgrading from DPM 2010

    Hi,
    We have recently upgraded from DPM 2010 to 2012.  Since the upgrade we have been unable to create new protection groups or add new datasources to an existing group.  Existing backups are running without errors. 
    We have tried checking the DPM sql user account permissions as described in
    this article but with no luck.  More searching has not provided any other relavent fixes.  We are now stuck on how to troubleshoot this any further.
    In the DPM console we get the following error adding a VM to an existing protection group:
    Modify protection group: Virtual Machines failed:
    Error 207: An unexpected error occurred on DPM server machine during a VSS operation.
    Error details: VssError:Shadow copying the specified volume is not supported.
     (0x8004230C)
    Recommended action: Retry the operation.
    Allocate Replica For \Backup Using Saved State\Cacti failed:
    Error 207: An unexpected error occurred on DPM server machine during a VSS operation.
    Error details: VssError:Shadow copying the specified volume is not supported.
     (0x8004230C)
    Recommended action: Retry the operation.
    In the event log we see:
    The description for Event ID 955 from source MSDPM cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.
    If the event originated on another computer, the display information had to be saved with the event.
    The following information was included with the event:
    The consistency check resulted in the following changes to SQL Server Agent schedules: Schedules added: 1 Schedules removed: 1 Schedules updated: 0.  
    Problem Details:
    <ConsistencyCheck><__System><ID>26</ID><Seq>1534</Seq><TimeCreated>23/04/2012 09:33:29</TimeCreated><Source>SchedulerImpl.cs</Source><Line>719</Line><HasError>True</HasError></__System><Tags><JobSchedule
    /></Tags></ConsistencyCheck>
    the message resource is present but the message is not found in the string/message table
    Thanks in advance for any advice.

    Hi,
    The error 0x8004230C VSS_E_VOLUME_NOT_SUPPORTED: Shadow copying the specified volume is not supported, can only come when trying to enable shadow copies on new volumes created when trying to add new datasources to protection.   Generally speaking
    Only NTFS volumes greater that 1GB with a minimum of 300MB free space can be shadow copied, so something is going wrong with the volume creation / format process.  Please investigate that, see if two new volumes get created when protecting a new data
    source, and the sizes are greated that 1GB and also verify it's formatted NTFS.
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT]
    This posting is provided "AS IS" with no warranties, and confers no rights.

  • DPM 2010; migrated DPM protection group to new storage pool ; data on source disk is not expiring

    I am running DPM 2010 with 4 storage pool disks. 2 are iSCSI; 1 is SAS; the fourth, also iSCSI, was recently deployed to replace the SAS storage pool disk.
    (1) iSCSI
    (2) iSCSI
    (3) SAS - Source
    (4) iSCSI - Destination
    Initially we tried to migrate the entire data source (3) to the new iSCSI storage pool disk destination (4). This failed
    Set-ProtectionGroup: The allocation of disk space for storage pool volume failed because there is not enough unallocated disk space in the storage pool (ID: 358). (Sorry, I was not allowed to attach an image).
    We believe the source disk previously created dynamic links to the long-term retention device (tape) which resulted in exceeding the available space on the new destination iSCSI storage pool disk. The source storage pool disk was totaling ~2.5TB, but needed
    ~9TB for the destination.
    Instead I've tried to migrate the DPM protection group. The migration was successful. I followed the procedure outlined here
    "Microsoft DPM 2012 Sp1 – How To Migrate Data Source using MigrateDatasourceDataFromDPM by ICTtechie" (Sorry, I was not allowed to include a link).
    My understanding / expectation was that the data on the source disk would expire within 5 days (as this is our retention time set for disk replication); instead data started to expire from the other 2 iSCSI (1), (2) storage pool disks.
    What am I missing here?
    Thanks

    Ok - you may have bumped into this.
    WMF 3.0 is incompatible with some Microsoft products including
    DPM 2010.
    Windows Management Framework 3.0 (WMF 3.0), which
    includes PowerShell 3.0, was made available Dec. 11 on Windows Update as an
    optional update but has since been pulled.
    More information is available on http://blogs.msdn.com/b/powershell/archive/2012/12/20/windows-management-framework-3-0-compatibility-update.aspx
    Resolution
    To resolve this issue, uninstall KB2506146 or KB2506143.
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT]
    This posting is provided "AS IS" with no warranties, and confers no rights.

  • LDAP Authentication Failed :user is not a member in any of the mapped group

    Hi,
    I tried to set up the LDAP Authentication but I failed.
    LDAP Server Configuration Summary seems to be well filled.
    I managed to add a Mapped LDAP member Group: This group appears correctly in the Group list. 
    But itu2019s impossible to create a User. Although this user is a member of the mapped group (checked with LDAP Brower) , an error message is displayed when I tried to create it (There was an error while writing data back to the server: Creation of the user User cannot complete because the user is not a member in any of the mapped groups)
    LDAP Hosts: ldapserverip:389
    LDAP Server Type: Custom
    Base LDAP Distinguished Name: dc=vds,dc=enterprise
    LDAP Server Administration Distinguished Name: CN=myAdminUser,OU=System Accounts,OU=ZZ Group Global,ou=domain1,dc=vds,dc=enterprise
    LDAP Referral Distinguished Name:
    Maximum Referral Hops: 0
    SSL Type: Basic (no SSL)
    Single Sign On Type: None
    CMS Log :
    trace message: LDAP: No such attribute: supportedControl, assuming no ranging support.
    trace message: LDAP: LdapQueryForEntries: QUERY base: dc=vds, dc=enterprise, scope: 2, filter: (samaccountname=KR50162), attribute: dn objectclass
    trace message: LDAP: LdapQueryForEntries: QUERY result: 0 took 2453 ms
    trace message: LDAP: LdapQueryForEntries() QUERY number of entries returned: 1
    trace message: GetParents from plugin for cn=huh\,chen, ou=accounts, ou=users, ou=domain1, dc=vds, dc=enterprise.
    trace message: LDAP: De-activating query cache
    trace message: LDAP: LdapQueryForEntries: QUERY base: , scope: 0, filter: (objectClass=*), attribute: supportedControl
    trace message: LDAP: LdapQueryForEntries: QUERY result: 0 took 0 ms
    trace message: LDAP: LdapQueryForEntries() QUERY number of entries returned: 0
    trace message: LDAP: query for DSE root returned 89
    trace message: LdapQueryForEntries: incr. retries to 1
    trace message: LDAP: Updating the graph
    trace message: LDAP: Starting Graph Update...
    trace message: LDAP: LdapQueryForEntries: QUERY base: , scope: 0, filter: (objectClass=*), attribute: supportedControl
    trace message: LDAP: LdapQueryForEntries: QUERY result: 0 took 0 ms
    trace message: LDAP: LdapQueryForEntries() QUERY number of entries returned: 0
    trace message: LDAP: query for DSE root returned 89
    trace message: LdapQueryForEntries: incr. retries to 1
    trace message: LDAP: LdapQueryForEntries: QUERY base: , scope: 0, filter: (objectClass=*), attribute: supportedControl
    trace message: LDAP: LdapQueryForEntries: QUERY result: 0 took 0 ms
    trace message: LDAP: LdapQueryForEntries() QUERY number of entries returned: 1
    assert failure: (.\ldap_wrapper.cpp:3066). (pSetAttributes : no message).
    trace message: LDAP: No such attribute: supportedControl, assuming no ranging support.
    trace message: LDAP: LdapQueryForEntries: QUERY base: dc=enterprise, scope: 2, filter: (&(cn=gp-asia)(objectclass=group)(member=cn=huh
    , chen, ou=accounts, ou=users, ou=domain1, dc=vds, dc=enterprise)), attribute: objectclass
    trace message: LDAP: LdapQueryForEntries: QUERY base: , scope: 0, filter: (objectClass=*), attribute: supportedControl
    trace message: LDAP: LdapQueryForEntries: QUERY result: 0 took 0 ms
    trace message: LDAP: LdapQueryForEntries() QUERY number of entries returned: 1
    assert failure: (.\ldap_wrapper.cpp:3066). (pSetAttributes : no message).
    trace message: LDAP: No such attribute: supportedControl, assuming no ranging support.
    trace message: LDAP: LdapQueryForEntries: QUERY base: dc=enterprise, scope: 2, filter: (cn=gp-asia), attribute: member objectclass samaccountname cn
    trace message: LDAP: LdapQueryForEntries: QUERY result: 0 took 3109 ms
    trace message: LDAP: LdapQueryForEntries() QUERY number of entries returned: 0
    trace message: LDAP: query for DSE root returned 0
    trace message: Failed to commit user 'KR50162'. Reason: user is not a member in any of the mapped groups.
    trace message: [UID=0;USID=0;ID=79243] Update object in database failed
    trace message: Commit failed.+
    Can you please help?
    Joffrey

    Please do this after you verify all permission settings for all the groups the account is associated with. Also, make sure you check the NTFS folder permissions before doing this as well.
    Since the same result happens on multiple computers, it is not the profile.
    I am recommending you delete the AD account (or rename to backup the account).
    It will not effect the users Exchange account, but you will need to link it back to the new AD user account. 
    You can also delete her profile just to remove it, for the "just in case" scenario.
    Don't forget to mark the post that solved your issue as &quot;Answered.&quot; By marking the Answer you are enabling users with similar issues to find what helped you. Lewis Renwick - IT Professional

  • Creating Protection Group Fails with Error:360 The operation failed due to a virtual disk service error

    Hello
    I'm setting up a DPM server (2012 R2) at a remote site; everything goes well with no issues until a protection group is created, at which point I get the following error;
    Create protection group: Protection Group 1 failed:
    Error 360: The operation failed due to a virtual disk service error
    Error details: The system cannot find the file specified
    Recommended action: Retry the operation.
    The environment is as follows;
    - Virtual Machine Running Server 2008 R2 Fully updated
    - Storage Pool is an iSCSI connection Thick Provisioned 1TB GPT and shows in Disk Management with no issues.
    - Have connected to Session 0 (console) 
    - Error log shows The provider did not receive a Plug and Play service notification for the volume. volume=10  for the VDS Dynamic Provider
    Can Anyone Help?
    Thanks
    .Adam Langdon

    Hi,
    Disk defrag is initiated when a volume shrink is attempted. See if there is any problem defragging a volume and correct any problems doing that.
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT]
    This posting is provided "AS IS" with no warranties, and confers no rights.

  • Member on protection group don't show on scheduled

    Hi every one
    we have DPM 2012 Server
    There are one protection group was created for File Server added one server on this protection ( Server 1 )
    The protection scheduled working good.
    when I try to add new member for this protection ( Server 2 )
    scheduled show only server 2 and server 1 job don't run at all.
    need you help.
    Thanks,

    please check your EventLog for SQL related Problems, maybe there is a Problem with Access right.
    also make sure to use the actuall Update Rollup, best would be to Upgrade to 2012 R2 UR4
    Seidl Michael | http://www.techguy.at | twitter.com/techguyat |
    facebook.com/techguyat |
    youtube.com/techguyat

  • Stop protection of Member fails with Error 917 crash of DPM

    We recently destroyed a cluster and there is one trailing protected VM from that cluster. When I try to stop protection of member, the DPM console crashes with a 917 error. Running the Remove-ChildDatasource commands appears to work but the datasource
    still remains. If I try to modify the protection group I get an error stating Modify Protection Group is Disabled. Any help to remove this child Datasource is greatly appreciated.

    We recently destroyed a cluster and there is one trailing protected VM from that cluster. When I try to stop protection of member, the DPM console crashes with a 917 error. Running the Remove-ChildDatasource commands appears to work but the datasource
    still remains. If I try to modify the protection group I get an error stating Modify Protection Group is Disabled. Any help to remove this child Datasource is greatly appreciated.
    Can some one please help with this? Is no one looking at these posts anymore?

  • Unable to modify or create Protection Groups in DPM 2012 R2 - Error: 31220

    "DPM failed to apply the required policies to this protection group since the recovery point limit for this DPM server has been exceeded. (ID: 31220)"
    I am trying to add new data sources to our DPM server and continually run into the above message. I get the same error whether I attempt to create a new Protection Group and add the data sources to it... or if I attempt to modify an existing Protection Group
    to add data sources to it. I can guess that the obvious answer is "You have too many data sources or to many recovery points for the server to handle..." If that's the case, I need to figure out how to tell how many I have. As best as I can figure
    myself, I have less than 150 data sources and less than 2500 recovery points/snapshot/express-full. If there is a tool or a command that I can run to tell that, I'd be grateful to anyone who can point me in that direction.
    I have tried to remove inactive member servers that no longer exist from our Protection Groups... no effect.  I have tried to completely delete the removed server's data from replica... no effect.  We began seeing this issue in 2012 SP1, so I ran
    through the upgrade to 2012 R2 hoping that it would resolve the issue... no effect.  I am able to remove members from our Protection Groups, but if I try to add an entirely new member or even just a single DB on an already protected member... fails with
    above message.  I also tried to adjust the retention and backup schedule... fails with above error.
    Other than the stock answer from Microsoft that I am truly exceeding some limit, is there any other underlying issue that can cause this to be mis-reported to me?  I hope that SOMEONE has an answer or guidance for me.

    Hi,
    Another DPM PowerShell script - this one allows you to delete older recovery points for a selected datasource without having to modify the PG.
    #Author : Ruud Baars
    #Date : 11/09/2008
    #Edited : 11/15/2012 By: Wilson S.
    #edited : 11/27/2012 By: Mike J.
    # NOTE: Update script to only remove recovery points on Disk. Recovery points removed will be from the oldest one up to the date
    # entered by the user while the script is running
    #deletes all recovery points before 'now' on selected data source.
    $version="V4.7"
    $ErrorActionPreference = "silentlycontinue"
    add-pssnapin sqlservercmdletsnapin100
    Add-PSSnapin -Name Microsoft.DataProtectionManager.PowerShell
    $MB=1024*1024
    $logfile="DPMdeleteRP.LOG"
    $wait=10 #seconds
    $confirmpreference = "None"
    function Show_help
    cls
    $l="=" * 79
    write-host $l -foregroundcolor magenta
    write-host -nonewline "`t<<<" -foregroundcolor white
    write-host -nonewline " DANGEROUS :: MAY DELETE MANY RECOVERY POINTS " -foregroundcolor red
    write-host ">>>" -foregroundcolor white
    write-host $l -foregroundcolor magenta
    write-host "Version: $version" -foregroundcolor cyan
    write-host "A: User Selects data source to remove recovery points for" -foregroundcolor green
    write-host "B: User enters date / time (using 24hr clock) to Delete recovery points" -foregroundcolor green
    write-host "C: User Confirms deletion after list of recovery points to be deleted is displayed." -foregroundcolor green
    write-host "Appending to log file $logfile`n" -foregroundcolor white
    write-host "User Accepts all responsibilities by entering a data source or just pressing [Enter] " -foregroundcolor white -backgroundcolor blue
    "**********************************" >> $logfile
    "Version $version" >> $logfile
    get-date >> $logfile
    show_help
    $DPMservername=&"hostname"
    "Selected DPM server = $DPMservername" >> $logfile
    write-host "`nConnnecting to DPM server retrieving data source list...`n" -foregroundcolor green
    $pglist = @(Get-ProtectionGroup $DPMservername) # WILSON - Created PGlist as array in case we have a single protection group.
    $ds=@()
    $tapes=$null
    $count = 0
    $dscount = 0
    foreach ($count in 0..($pglist.count - 1))
    # write-host $pglist[$count].friendlyname
    $ds += @(get-datasource $pglist[$count]) # WILSON - Created DS as array in case we have a single protection group.
    # write-host $ds
    # write-host $count -foreground yellow
    if ( Get-Datasource $DPMservername -inactive) {$ds += Get-Datasource $DPMservername -inactive}
    $i=0
    write-host "Index Protection Group Computer Path"
    write-host "---------------------------------------------------------------------------------"
    foreach ($l in $ds)
    "[{0,3}] {1,-20} {2,-20} {3}" -f $i, $l.ProtectionGroupName, $l.psinfo.netbiosname, $l.logicalpath
    $i++
    $DSname=read-host "`nEnter a data source index from list above - Note co-located datasources on same replica will be effected"
    if (!$DSname)
    write-host "No datasource selected `n" -foregroundcolor yellow
    "Aborted on Datasource name" >> $logfile
    exit 0
    $DSselected=$ds[$DSname]
    if (!$DSselected)
    write-host "No datasource selected `n" -foregroundcolor yellow
    "Aborted on Datasource name" >> $logfile
    exit 0
    $rp=get-recoverypoint $DS[$dsname]
    $rp
    # $DoTape=read-host "`nDo you want to remove when recovery points are on tape ? [y/N]"
    # "Remove tape recovery point = $DoTape" >> $logfile
    write-host "`nCollecting recoverypoint information for datasource $DSselected.name" -foregroundcolor green
    if ($DSselected.ShadowCopyUsedspace -gt 0)
    while ($DSSelected.TotalRecoveryPoints -eq 0)
    { # "still 0"
    #this is on disk
    $oldShadowUsage=[math]::round($DSselected.ShadowCopyUsedspace/$MB,1)
    $line=("Total recoverypoint usage {0} MB on DISK in {1} recovery points" -f $oldShadowUsage ,$DSselected.TotalRecoveryPoints )
    $line >> $logfile
    write-host $line`n -foregroundcolor white
    #this is on tape
    #$trptot=0
    #$tp= Get-RecoveryPoint($dsselected) | where {($_.Datalocation -eq "Media")}
    #foreach ($trp in $tp) {$trptot += $trp.size }
    #if ($trptot -gt 0 )
    # $line=("Total recoverypoint usage {0} MB on TAPE in {1} recovery points" -f ($trptot/$MB) ,$DSselected.TotalRecoveryPoints )
    # $line >> $logfile
    # write-host $line`n -foregroundcolor white
    [datetime]$afterdate="1/1/1980"
    #$answer=read-host "`nDo you want to delete recovery points from the beginning [Y/n]"
    #if ($answer -eq "n" )
    # [datetime]$afterdate=read-host "Delete recovery points AFTER date [MM/DD/YYYY hh:mm]"
    [datetime]$enddate=read-host "Delete ALL Disk based recovery points BEFORE and Including date/time entered [MM/DD/YYYY hh:mm]"
    "Deleting recovery points until $enddate" >>$logfile
    write-host "Deleting recovery points until and $enddate" -foregroundcolor yellow
    $rp=get-recoverypoint $DSselected
    if ($DoTape -ne "y" )
    $RPselected=$rp | where {($_.representedpointintime -le $enddate) -and ($_.Isincremental -eq $FALSE) -and ($_.DataLocation -eq "Disk")}
    else
    $RPselected=$rp | where {($_.representedpointintime -le $enddate) -and ($_.Isincremental -eq $FALSE)}
    if (!$RPselected)
    write-host "No recovery points found!" -foregroundcolor yellow
    "No recovery points found, aborting...!" >> $logfile
    exit 0
    $reselect = $enddate
    $adjustflag = $false
    foreach ($onerp in $RPselected)
    $rtime=[string]$onerp.representedpointintime
    $rsize=[math]::round(($onerp.size/$MB),1)
    $line= "Found {0}, RP size= {1} MB (If 0 MB, co-located datasource cannot be computed), Incremental={2} "-f $rtime, $rsize,$onerp.Isincremental
    $line >> $logfile
    write-host "$line" -foregroundcolor yellow
    #Get dependent rp's for data source
    $allRPtbd=$DSselected.GetAllRecoveryPointsToBeDeleted($onerp)
    foreach ($oneDrp in $allRPtbd)
    if ($oneDrp.IsIncremental -eq $FALSE) {continue}
    $rtime=[string]$oneDrp.representedpointintime
    $rsize=[math]::round(($oneDrp.size/$MB),1)
    $line= ("`t...is dependancy for {0} size {1} `tIncremental={2}" -f $rtime, $rsize, $oneDrp.Isincremental)
    $line >> $logfile
    if ($oneDrp.representedpointintime -ge $enddate)
    #stick to latest full ($oneDrp = dependents, $onerp = full)
    $adjustflag = $true
    $reselect = $onerp.representedpointintime
    "<< Dependents newer than BEFORE date >>>" >> $logfile
    Write-Host -nonewline "`t <<< later than BEFORE date >>>" -foregroundcolor white -backgroundcolor red
    write-host "$line" -foregroundcolor yellow
    else
    #Ok, include current latest incremental
    $reselect = $oneDrp.representedpointintime
    write-host "$line" -foregroundcolor yellow
    if ($reselect -lt $oneDrp.representedpointintime)
    #we adjusted further backward than latest incremental within selection
    $reselect = $rtime
    $line = "Adjusted BEFORE date to be $reselect to include dependents to $enddate"
    $line >> $logfile
    Write-Host $line -foregroundcolor white -backgroundcolor blue
    $line="`n<<< SECOND TO LAST CHANCE TO ABORT - ONE MORE PROMPT TO CONFIRM. >>>"
    write-host $line -foregroundcolor white -backgroundcolor blue
    $line >> $logfile
    $line="Above recovery points within adjusted range will be permanently deleted !!!"
    write-host $line -foregroundcolor red
    $line >> $logfile
    $line="These RP's include dependent recovery points and may contain co-located datasource(s)"
    write-host $line -foregroundcolor red
    $line >> $logfile
    $line="Data source activity = " + $DSselected.Activity
    $line >> $logfile
    write-host $line -foregroundcolor white
    $DoDelete=""
    while (($DoDelete -ne "N" ) -and ($DoDelete -ne "Y"))
    $line="Continue with deletion (must answer) Y/N? "
    write-host $line -foregroundcolor white
    $DoDelete=read-host
    $line = $line + $DoDelete
    $line >> $logfile
    if (!$DSselected.Activity -eq "Idle")
    $line="Data source not idle, do you want to wait Y/N ? "
    write-host $line -foregroundcolor yellow
    $Y=read-host
    $line = $line + $Y
    $line >> $logfile
    if ($Y -ieq "Y")
    Write-Host "Waiting for data source to become idle..." -foregroundcolor green
    while ($DSselected.Activity -ne "Idle")
    ("Waiting {0} seconds" -f $wait) >>$logfile
    Write-Host -NoNewline "..." -ForegroundColor blue
    start-sleep -s $wait
    if ($DoDelete -eq "Y")
    foreach ($onerp in $RPselected)
    #reselect is adjusted to safe range relative to what was requested
    #--- if adjustflag not set then all up to including else only older because we must keep the full
    if ((($onerp.representedpointintime -le $reselect) -and ($adjustflag -eq $false)) -or ($onerp.representedpointintime -lt $reselect))
    $rtime=[string]$onerp.representedpointintime
    write-host `n$line -foregroundcolor red
    $line >>$logfile
    if (($onerp ) -and ($onerp.IsIncremental -eq $FALSE)) { remove-recoverypoint -RecoveryPoint $onerp -confirm:$True} # >> $logfile}
    $line =("---`nDeleting recoverypoint -> " + $rtime)
    $line >>$logfile
    "All Done!" >> $logfile
    write-host "`nAll Done!`n`n" -foregroundcolor white
    $line="Do you want to View DPMdeleteRP.LOG file Y/N ? "
    write-host $line -foregroundcolor white
    $Y=read-host
    $line = $line + $Y
    $line >> $logfile
    if ($Y -ieq "Y")
    Notepad DPMdeleteRP.LOG
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This
    posting is provided "AS IS" with no warranties, and confers no rights.

  • Tape Compression for Protection Groups Not Working

    Hi everyone,
    We've since started using DPM 2012 R2 to backup our systems. Everything is working except for tape compression. I've read some other discussions regarding similar issues, but none have been of any help to me.
    DPM (version 4.2.1254.0) is running on a physical server (HP BL460c G6) running Windows Server 2008 R2 Enterprise SP1. Microsoft SQL Server 2008 R2 is also running on the same machine providing the database for DPM. Other roles installed: Hyper-V, WDS,
    WSUS, IIS, and File Services. The tape drive is an HP StorageWorks SB1760c which is partnered to the blade server in a C3000 chassis. Tapes are LTO-4. Everything is fully patched from Windows Updates.
    The backup starts off fine, but because the tape drive is a not an auto-loader, the backup fails because it is waiting for a new tape to be inserted so it can complete the backup. If DPM would compress the data, it will all fit on the one tape.
    So far, I've:
    Reinstalled the operating system and all the server roles on it (twice!).
    Used HP's Library and Tape Tools to perform a tape compression test (which passes - the results did show that the data written during the test was compressed).
    Reviewed other similar discussions.
    None of which have been of any use. To start off, I would like to look at the logs produced during the backup to see if there is anything useful in them. Can someone please direct me to where they may be?
    Any help with this problem would be greatly appreciated. I quite like DPM over the competition, it's just this one problem causing me grief.

    Hi
    You can enable DPM Verbose logging, then manually start a tape backup of a datasource that is in a protection group that has tape compression option checked.  Once the backup starts writing data to the drive, you can open a command prompt and CD to
    the DPM log location and run the following command.
        Find /i "TapeInfo DriveAccessPath=" msdpm*.errlog
    It should show that the MTASetMedia command set the block size to 65536, and HWcompression to true on the drive we're writing to.
    [Example showing HWCompression was set to true]
    VERBOSE       <TapeInfo DriveAccessPath="\\.\Tape2147483645" PhysicalBlockSize="65536"
    HWCompression="true" xmlns="http://schemas.microsoft.com/2003/dls/MediaManager/StorageXMLSchema.xsd" />
    VERBOSE CMTATapeInfo::InitializeFromDOM => m_ssDrivePath = [\\.\Tape2147483645] m_dwPhysicalBlockSize = [65536]
    m_bHWCompression = [1]
    If you see that, then DPM did it's job and it's up to the tape drive to honor the request and compress data as written.
    If you keep the verbose logging on for the duration of the tape backup jobs, it should detail switching tapes as well, so you can take a look and see if you can figure out why we changed media when we did.  If you search for "EOM hit: 1" 
    that means we hit end of media.
    To enable full VERBOSE logging, under HKLM\Software\Microsoft\Microsoft Data Protection Manager, add a DWORD value named TraceLogLevel and set it to 0x43e, then stop and restart the msdpm and dpmra services.   The DPM log files will now contain
    MUCH MORE logging to help troubleshoot issues without requiring a DPM trace.
    DPM 2010 or upgrade to DPM 2012 the Logs are in the C:\program files\Microsoft DPM\DPM\temp folder
    DPM 2012 (clean install) logs are in the C:\program Files\System Center 2012\DPM\DPM\temp folder.
    After you reproduce the problem, be sure delete or rename the TraceLogLevel registry setting and restart the DPM services so normal (non-Verbose) logging resumes.
    SAMPLE OUTPUT DPM2012 SP1
    C:\Program Files\Microsoft DPM\DPM\Temp>find /i "tapeinfo" *.errlog
    ---------- DPMRA56.ERRLOG
    165C    0C80    06/14   16:32:26.771    05      defaultsubtask.cpp(527) [0000000000370750]      40292CEC-FBEE-4D6A-9763-031FB711A480    VERBOSE      
    <TapeInfo DriveAccessPath="\\.\Tape2147483645" PhysicalBlockSize="65536"
    HWCompression="true" xmlns="http://schemas.microsoft.com/2003/dls/MediaManager/StorageXMLSchema.xsd" />
    165C    0C80    06/14   16:32:26.771    29      mtastoragexml.cpp(28)   [0000000003F77AA0]      40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE ==>CMTATapeInfo::CMTATapeInfo
    165C    0C80    06/14   16:32:26.771    29      mtastoragexml.cpp(28)   [0000000003F77AA0]      40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE <--CMTATapeInfo::CMTATapeInfo
    165C    0C80    06/14   16:32:26.771    29      mtastoragexml.cpp(68)   [0000000003F77AA0]      40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE CMTATapeInfo::InitializeFromDOM => m_ssDrivePath = [\\.\Tape2147483645] m_dwPhysicalBlockSize = [65536]
    m_bHWCompression = [1]
    165C    0C80    06/14   16:32:26.771    29      mtastoragexml.cpp(42)   [0000000001F2F340]      40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE ==>CMTATapeInfo::~CMTATapeInfo
    165C    0C80    06/14   16:32:26.771    29      mtastoragexml.cpp(42)   [0000000001F2F340]      40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE <--CMTATapeInfo::~CMTATapeInfo
    165C    0C80    06/14   16:32:26.771    29      mtastoragexml.cpp(42)   [0000000003F77AA0]      40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE ==>CMTATapeInfo::~CMTATapeInfo
    165C    0C80    06/14   16:32:26.771    29      mtastoragexml.cpp(42)   [0000000003F77AA0]      40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE <--CMTATapeInfo::~CMTATapeInfo
    ---------- MSDPMCURR.ERRLOG
    18DC    1B80    06/14   16:32:26.756    01      TaskInstance.cs(1034)           40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE       <TapeInfo DriveAccessPath="\\.\Tape2147483645" PhysicalBlockSize="
    65536" HWCompression="true" xmlns="http://schemas.microsoft.com/2003/dls/MediaManager/StorageXMLSchema.xsd" />
    18DC    0574    06/14   16:32:26.756    04      cmdproc.cpp(2432)       [0000000003B8A470]      40292CEC-FBEE-4D6A-9763-031FB711A480   
    VERBOSE       <TapeInfo DriveAccessPath="\\.\Tape2147483645" PhysicalBlockSize="65536" HWCompression="true"
    xmlns="http://schemas.microsoft.com/2003/dls/MediaManager/StorageXMLSchema.xsd" />
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This
    posting is provided "AS IS" with no warranties, and confers no rights.

  • Event 917 Console Crash when attempting to modify Disk Only Protection Group

    Primary DPM 2012 R2 4.2.1254.0 running on Server 2012 -
    In the process of decommissioning a number of old servers - I found that I am no longer able to modify a disk only protection group on one of my primary DPM servers. Console crash - noting error 917. I've seen a number of work around in relation to protection
    groups with long term storage, but none noting disk only. Notably, kb 2905631 - long term only protection may cause this issue.
    Another thread mentioned that re-syncing / consistency checks on the entire server resolved the issue for them, but I find that rather unnecessary. I've over 13Tb of data on this server, and am trying to remove the last 30GB of an old protection group.
    Recap-
    Error 917 when removing member from protection group
    MMC crash with a 999 marked when modifying the protection group
    The event log is not noting any service crashes, or the 917 error in the event log. 999 is getting recorded in the event log.
    The description for Event ID 999 from source MSDPM cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.
    If the event originated on another computer, the display information had to be saved with the event.
    The following information was included with the event: 
    An unexpected error caused a failure for process 'mmc'.  Restart the DPM process 'mmc'.
    Problem Details:
    <FatalServiceError><__System><ID>19</ID><Seq>0</Seq><TimeCreated>12/2/2014 5:40:14 PM</TimeCreated><Source>DpmThreadPool.cs</Source><Line>163</Line><HasError>True</HasError></__System><ExceptionType>SqlNullValueException</ExceptionType><ExceptionMessage>Data
    is Null. This method or property cannot be called on Null values.</ExceptionMessage><ExceptionDetails>System.Data.SqlTypes.SqlNullValueException: Data is Null. This method or property cannot be called on Null values.
       at System.Data.SqlClient.SqlBuffer.get_String()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.ProtectionGroup.ReadBackupAndCCWindow()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.ProtectionGroup.get_BackupWindow()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.ProtectionGroup.GetPerformanceString()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ProtectedGroupUIElement.AddPerformanceData()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ProtectedGroupUIElement.ConstructDetailsPaneContent()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.CommonControls.UISearchableElement.get_DetailNameValuePairs()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ProtectedGroupUIElement.DisplayDetails()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ProtectionViewInternal.FillGroupDetails(GroupingListHeaderItem group)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ProtectionViewInternal.UpdateDetailsPane()
       at System.EventHandler.Invoke(Object sender, EventArgs e)
       at Microsoft.Internal.EnterpriseStorage.UI.CommonControls.GroupingListView.EndUpdate()
       at Microsoft.Internal.EnterpriseStorage.UI.CommonControls.GroupingListViewBody.ProcessClick()
       at System.Windows.Forms.Control.WmMouseUp(Message&amp; m, MouseButtons button, Int32 clicks)
       at System.Windows.Forms.Control.WndProc(Message&amp; m)
       at Microsoft.Internal.EnterpriseStorage.UI.CommonControls.GroupingListViewBody.WndProc(Message&amp; m)
       at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)</ExceptionDetails></FatalServiceError>
    the message resource is present but the message is not found in the string/message table

    Hi Mike,
    That appears to be the case. A row shows NULL for IMCatalogXML. I'm looking at your script to update the value now based on the following thread - thread .
    So far, no rows have been modified.
    Since I really don't care about this protected member, is this a row I could just delete from the DB, or how to properly update the data so I can remove it from within the confines of the GUI?
    Marketing 2011-05-19 18:59:41.917
    B7073B10-DDE6-4EA3-BD8C-1E1497C218D5 NULL
    NULL 0
    0 0 NULL
    2 0
    NULL
    This PG was definitely around back when this server was DPM 2010.
    Regards

  • Error 360 when trying to create a Hyper-V protection group

    Hi,
    I'm rebuilding all my protection groups on a DPM 2010 box after replacing the storage drives.  Everything was going great until I got to the point of creating groups for my Hyper-V boxes.  Now, when I try to create a protection group, I'm getting
    the following errors:
    Error 360: The operation failed due to a virtual disk service error
    Error details: The system cannot find the file specified
    Recommended action: Retry the operation
    I can't fathom what's wrong and can't see any errors in the event log.  Can anyone please shed any light?
    Thanks,
    Toby.
    Toby

    Hi,
    when will the error occur?Please try to create the Protectiongroup with only one VM at the beginning, maybe there is one corrupt VM
    Seidl Michael | http://www.techguy.at |
    twitter.com/techguyat | facebook.com/techguyat

  • SQL Server Agent Failed to decrypt protected XML node

    I'm getting the below error when trying to run sql server agent to run an SSIS package. I've updated folder security to allow sql server agent access, but cannot get the package to execute within SQL Management Studio. The package runs find in SSIS. 
    11.0.2100.60 for 64-bit  Copyright (C) Microsoft Corporation. All rights reserved.    Started:  12:12:00 PM  Error: 2014-11-30 12:12:02.65     Code: 0xC0016016     Source: LoadStgProspects      Description:
    Failed to decrypt protected XML node "DTS:Password" with error 0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that
    the correct key is available.  End Error  Error: 2014-11-30 12:12:03.88     Code: 0xC0016016     Source: LoadStgProspects      Description: Failed to decrypt protected XML node "DTS:Password" with error
    0x8009000B "Key not valid for use in specified state.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that the correct key is available.  End Error  Error: 2014-11-30
    12:12:04.74     Code: 0xC0209303     Source: LoadStgProspects Connection manager "Excel Connection Manager"     Description: The requested OLE DB provider Microsoft.Jet.OLEDB.4.0 is not registered. If the 64-bit driver
    is not installed<c/> run the package in 32-bit mode. Error code: 0x00000000.  An OLE DB record is available.  Source: "Microsoft OLE DB Service Components"  Hresult: 0x80040154  Description: "Class not registered".
     End Error  Error: 2014-11-30 12:12:04.74     Code: 0xC020801C     Source: Load prospect files Prospect xls [231]     Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.  The AcquireConnection
    method call to the connection manager "Excel Connection Manager" failed with error code 0xC0209303.  There may be error messages posted before this with more information on why the AcquireConnection method call failed.  End Error  Error:
    2014-11-30 12:12:04.74     Code: 0xC0047017     Source: Load prospect files SSIS.Pipeline     Description: Prospect xls failed validation and returned error code 0xC020801C.  End Error  Error: 2014-11-30 12:12:04.74
        Code: 0xC004700C     Source: Load prospect files SSIS.Pipeline     Description: One or more component failed validation.  End Error  Error: 2014-11-30 12:12:04.74     Code: 0xC0024107     Source:
    Load prospect files      Description: There were errors during task validation.  End Error  Error: 2014-11-30 12:12:04.74     Code: 0xC00220DE     Source: LoadStgProspects      Description: Error
    0xC0012050 while loading package file "C:\Users\Jim\Documents\Visual Studio 2010\Projects\SSISTraining\SSISTraining\LoadStgProspects.dtsx". Package failed validation from the ExecutePackage task. The package cannot run.  .  End Error  DTExec:
    The package execution returned DTSER_FAILURE (1).  Started:  12:12:00 PM  Finished: 12:12:04 PM  Elapsed:  4.337 seconds.  The package execution failed.  The step failed.,00:00:04,0,0,,,,0

    Hi selfdestruct80,
    According to your description, you created SSIS package and it works fine. But you got the error message when the SSIS package was called from a SQL Server Agent job.
    According to my knowledge, the package may not run in the following scenarios:
    The current user cannot decrypt secrets from the package.
    A SQL Server connection that uses integrated security fails because the current user does not have the required permissions.
    File access fails because the current user does not have the required permissions to write to the file share that the connection manager accesses.
    A registry-based SSIS package configuration uses the HKEY_CURRENT_USER registry keys. The HKEY_CURRENT_USER registry keys are user-specific.
    A task or a connection manager requires that the current user account has correct permissions.
    According to the error message, the SSIS Package ProtectionLevel property to EncryptSensitiveWithPassword as ArthurZ mentioned. To solve the problem, you need to go to Command Line tab, manually specify the paassword in SQL Agent Job with the command like below:
    /FILE "\"C:\Users\xxxx\Documents\SQL Server Management Studio\SSIS\Package.dtsx\"" /DECRYPT somepassword /CHECKPOINTING OFF /REPORTING E
    If you have any more questions, please feel free to ask.
    Thanks,
    Wendy Fu
    Wendy Fu
    TechNet Community Support

  • Moving SQL servers from one Protection group to another

    We are using DPM 2012 R2 Update Rollup 4. We have started to move some SQL servers from a Protection group with 90 days of retention to a Protection group with 15 days of retention.  The recovery data is co-located on the backup device and we are using
    disk based backup.  A couple days after moving a couple of the servers, I have noticed that the number of recovery points has stayed the same and not decreased.  It would seem that when moving to a different protection group, that the SQL server
    would inherit the new retention settings instead of retaining the ones from the old protection group.  When I moved them, I stop protection of the databases and then added them to the new group.  Why is this occurring and how do I get the new retention
    settings in the new protection group to take affect?

    Thanks for the information.  DPM is really a pain when trying to move co-located data sources to different protection groups.  I do hope in future versions that this is simplified and corrected.  I am now stuck for 90 days with data that I
    don't want and I can't get rid of without getting rid of every recovery point for that group.  That is bad news when my LDM DB is almost full. 
    An important note for those who are trying to see how many extents certain data sources have when following this article
    http://blogs.technet.com/b/dpm/archive/2010/03/30/what-volume-to-migrate-first.aspx
    If your DPM DB has changed from "DPMDB" to DPMDB with bunch of random characters, you will need to this line in the script for it to work. 
    $db = $srvr.Databases["DPMDB"]  
    <-- change this to your server’s DPMDB name
    Also, you will need to greatly increase the width of your command window to see the "NumberOfExtents" column which is the most important column.

  • DPM 2012: MMC crashes when working with 2 particular protection groups

    I have a problem with 2 particular protection groups that will not allow me to perform a backup to tape on them.  When I try to, the MMC crashes with the following error logged in the application event log:
    The description for Event ID 999 from source MSDPM cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.
    If the event originated on another computer, the display information had to be saved with the event.
    The following information was included with the event: 
    An unexpected error caused a failure for process 'mmc'.  Restart the DPM process 'mmc'.
    Problem Details:
    <FatalServiceError><__System><ID>19</ID><Seq>0</Seq><TimeCreated>9/2/2012 3:46:36 PM</TimeCreated><Source>DpmThreadPool.cs</Source><Line>163</Line><HasError>True</HasError></__System><ExceptionType>ArgumentOutOfRangeException</ExceptionType><ExceptionMessage>Index
    was out of range. Must be non-negative and less than the size of the collection.
    Parameter name: index</ExceptionMessage><ExceptionDetails>System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
    Parameter name: index
       at System.ThrowHelper.ThrowArgumentOutOfRangeException()
       at System.Collections.Generic.List`1.get_Item(Int32 index)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.CreateRecoveryPointDialog.InitializeForTapeRecoveryPoint()
       at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
       at System.Windows.Forms.ComboBox.WndProc(Message&amp; m)
       at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message&amp; m)
       at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)</ExceptionDetails></FatalServiceError>
    the message resource is present but the message is not found in the string/message table
    As this appears to be a problem with just these protection groups (I am able to take tape backups of others without a problem) I decided I would try to remove the group, retain the data and re-create it.  When I right click on the group and attempt
    to stop protection of the group or modify the protection group, the MMC crashes with the same error above.
    One protection group is backing up and Exchange 2010 Archive Database, the other, Lync 2010 SQL Databases (and covers 2 different servers).
    Does anybody have any suggestions on how I can get these protection groups behaving as they should and working again?
    DPM is 2012 RTM running on a Windows Server 2008 R2 SP1 Enterprise physical server.  The servers being protected are running Windows Server 2008 R2 SP1 Standard, the Exchange one is virtual (running on Hyper-V), Lync, one physical, one virtual (also running
    on Hyper-V).

    Hi 
    First of all verify that below services are running and also check which user account is uses for running the DPM and SQL services.
    DPM 
    DPM Replication Agent 
    SQLAgent$MS$DPM2007$ 
    MSSQL$MS$DPM2007$ 
    Virtual Disk Service 
    Volume Shadow Copy
    Thanks and Regards Deepak

  • Monthly and Yearly backups not working for Protection Group?

    Hi
    We have a Protection Group with 160 members currently attached to it. The group has the following customized Recovery Points:-
    - 1 recovery point every 1 day for the last 2 weeks, 1 recovery point every 1 month for the last 60 months and 1 recovery point every year for the last 5 years.
    The schedule is as follows:-
    - Every Day at 01:00, Every Month on First Day at 01:00 and Every 12 Months on 01 January at 01:00.
    The daily tape backups are working fine without issue but neither the Monthly or Yearly backups are being attempted. We have checked the monthly backups for this issue for the last few months and are unable to see any evidence of the Monthly schedule even
    running? This means that we are having to manually label the Daily tapes once a month as Monthly tapes but they will then stay on the Reports for the next 5 years as DPM will constantly request these tapes back.
    Are you able to help with this matter?
    Not that we really want to do this but if we removed the group completely and re-create it would this cause problems with our restore points?

    Hi,
    This is a known issue that can occur in all current versions of
    DPM including DPM 2012, to correct the condition, you simply need to perform this step. Any time before the next scheduled (monthly or longer) backup, manually update
    the long term backup schedule by hitting the MODIFY button.  The code that runs when modifying the backup schedule redoes the bacup schedules and it fixes the scheduling issue. 
    Below is a DPM Power-shell script that will show you the scheduled backups for all recovery goals for all protection groups.  You can see the last time each recovery goal ran, and the NEXT run time, so you can monitor
    the goals and re-fix them if necessary.
    NOTE: It takes about 20-30 minutes before the fixed next run time schedule will be populated after modify the protection group and updating the schedule.
    # This script will list all currently scheduled backup to tape jobs #
    # It will list scheduled, last run and next run dates #
    # Note: The script takes in consideration that the DPM Database was installed locally on its #
    # Default instance. If SQL is installed on a different location/instance, edit the line #
    # that starts with $instance = '.\msdpm2010 #
    # Author : Wilson Souza #
    # Date Created : 1/13/2012 #
    # Last modified : 1/17/2012 #
    # Version : 1.0 #
    # This version of the script was only tested on DPM 2010 #
    param([string] $verbose)
    add-pssnapin sqlservercmdletsnapin100
    Add-PSSnapin -Name Microsoft.DataProtectionManager.PowerShell
    $ConfirmPreference = 'None'
    cls
    $instance = '.\msdpm2010' # <---- If DPM Database is on a different location, edit this line accordinly
    $query = "use DPMDB
    go
    CREATE FUNCTION label (@GUID varchar(36), @kindred varchar(4), @vault varchar(8))
    returns varchar (1024)
    as
    Begin
    declare @result varchar (1024)
    select @result = vaUltlabel from tbl_mm_vaultlabel where mediapoolid = @GUID and generation =
    case @kindred
    when 'Fath' Then '2'
    when 'Gran' then '1'
    when 'grea' Then '0'
    end and
    vault =
    case @vault
    when 'Offsite1' then '3'
    when 'Offsite2' then '4'
    when 'Offsite3' then '5'
    when 'Offsite4' then '6'
    when 'Offsite5' then '7'
    when 'Offsite6' then '8'
    when 'Offsite7' then '9'
    else
    '1'
    end
    RETURN @result
    END
    go
    use DPMDB
    select ScheduleId as name
    ,def.JobDefinitionId as JD
    ,FriendlyName as PG
    ,SUBSTRING (CONVERT(VARCHAR(10),active_start_date),5,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),active_start_date),7,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),active_start_date),1,4) as SD
    ,jobs.date_created as SCD
    ,SUBSTRING (CONVERT(VARCHAR(10),last_run_date),5,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),last_run_date),7,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),last_run_date),1,4) + ' ' +
    SUBSTRING (CONVERT(VARCHAR(6),last_run_time),1,2) + ':' + SUBSTRING (CONVERT(VARCHAR(6),last_run_time),3,2) + ':' + SUBSTRING (CONVERT(VARCHAR(6),last_run_time),5,2) as LRD
    ,SUBSTRING (CONVERT(VARCHAR(10),next_run_date),5,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),next_run_date),7,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),next_run_date),1,4) + ' ' +
    SUBSTRING (CONVERT(VARCHAR(6),next_run_time),1,2) + ':' + SUBSTRING (CONVERT(VARCHAR(6),next_run_time),3,2) + ':' + SUBSTRING (CONVERT(VARCHAR(6),next_run_time),5,2) as NRD
    ,dbo.label ((substring(xml,(patindex('%MediaPoolId%',Xml))+13,36)), (substring(xml,(patindex('%generation%',Xml))+12,4)), (substring(xml,(patindex('%vault%',Xml))+7,8))) as TL
    ,case
    when substring(xml,(patindex('%vault%',Xml))+7,3) = 'off' then 'Long-Term'
    else 'Short-term'
    end as STLT
    ,case
    when substring(xml,(patindex('%generation%',Xml))+12,4) = 'Fath' then 'Recovery Goal 1'
    when substring(xml,(patindex('%generation%',Xml))+12,4) = 'Gran' then 'Recovery Goal 2'
    when substring(xml,(patindex('%generation%',Xml))+12,4) = 'Grea' then 'Recovery Goal 3'
    end as RG
    from tbl_SCH_ScheduleDefinition sch
    ,msdb.dbo.sysjobs jobs
    ,tbl_JM_JobDefinition def
    ,DPMDB.dbo.tbl_IM_ProtectedGroup prot
    ,msdb.dbo.sysjobschedules jobsch
    ,msdb.dbo.sysjobsteps jobsteps
    ,msdb.dbo.sysschedules syssch
    where CAST(sch.ScheduleId as NCHAR (128)) = jobs.name
    and def.JobDefinitionId = sch.JobDefinitionId
    and def.ProtectedGroupId = prot.ProtectedGroupId
    and jobs.job_id = jobsch.job_id
    and jobs.job_id = jobsteps.job_id
    and jobsch.schedule_id = syssch.schedule_id
    and (def.Type = '913afd2d-ed74-47bd-b7ea-d42055e5c2f1' or def.Type = 'B5A3D25C-8EB2-4032-9428-C852DA5CE2C5')
    and sch.IsDeleted = '0' and def.ProtectedGroupId is not null
    order by FriendlyName, next_run_date, next_run_time
    go
    drop function label
    go"
    $result = Invoke-Sqlcmd -ServerInstance $instance -Query $query
    $count = 1
    write-host " The list below shows all scheduled backup to tape jobs (short term and long term)" -f green
    write-host
    if ($verbose.ToLower() -eq '')
    write-host " For optimun output, set PoweShell Width for screen buffer size to at least 200" -f yellow; write-host
    write-host
    write-host " Protection Group name Creation Date [Schedule Creation Date] [Last Run Date / time] [Next Sched Run Date/time] Goal type Recovery Goal # Custom Tape Label"
    write-host " ------------------------------ ------------- ------------------------ ---------------------- -------------------------- ---------- --------------- -----------------"
    foreach ($result1 in $result)
    if ($color -eq 'white') {$color = 'cyan'} else {$color = 'white'}
    write-host ("{0,2}"-f $count) -foreground green -nonewline
    write-host ( " - {0,-30} {1,-13} {2,-24} {3,-24} {4,-27} {5,-10} {6,15} " -f $result1.PG, $result1.SD, $result1.SCD, $result1.LRD, $result1.NRD, $result1.STLT, $result1.RG) -nonewline -f $color
    write-host $result1.TL -f yellow
    $count++
    else
    write-host " For optimun output, set PoweShell Width for screen buffer size to at least 110" -f yellow; write-host
    write-host " Protection Group Term Goal Tape Label"
    write-host " ------------------------------ ---------- --------------- --------------"
    foreach ($result1 in $result)
    if ($color -eq 'white') {$color = 'cyan'} else {$color = 'white'}
    write-host ("{0,2}"-f $count) -foreground green -nonewline
    write-host ( " - {0,-30} {1,-10} {2,15} " -f $result1.PG, $result1.STLT, $result1.RG) -nonewline -f $color
    write-host $result1.TL -f yellow
    $count++
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This
    posting is provided "AS IS" with no warranties, and confers no rights.
    I cant seem to get this script to run.. can someone point out what might be missing..
    I've tried creating a shortcut like the following as well:
    Target: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noexit -File "C:\Program Files\Microsoft
    DPM\DPM\bin\dpmcliinitscript.ps1" "C:\Data\scripts\scheduledjobs.ps1"
    Start in: "C:\Program Files\Microsoft DPM\DPM\bin\"
    If i run as admin in just takes you to a command line prompt in PS..
    Any thoughts on what is missing here.. i've modified the ps1 to reflect 2012 in my case.. 2012 R2
    DPM
    Tech, the Universe, Everything: http://tech-stew.com
    Ok, the 1.6 script works.. but only if i run it from the ps1 script file.. by right clicking it and doing the Run with Powershell option (non admin).. my shortcut doesnt work.. same issue.. it just goes to a power shell prompt.  The right click and
    run is non admin mode as well.
    When I run it with the right click it shows no jobs scheduled.. If i look in dpm 2012 r2 i see a yearly tape backup scheduled for today.. the script doesnt show me a way to also get the monthly to appear (i've set the monthly for a day later but it doesnt
    appear in the scheduled tasks for next 7 days).. i was under the impression this script would help force the monthly to appear/run.. but even the yearly that does show in DPM scheduled tasks isnt showing up with the script (maybe admin issue?)
    Tech, the Universe, Everything: http://tech-stew.com

Maybe you are looking for