none
Test-DPMTapeData keeps on crashing the management shell

    General discussion

  • Hi!

    In a nutshell, i'd like to run a verification run on all tapes on certain library

    (It's a compliancy thing..) but the script i made keeps on crashing the command shell.

    What do i do wrong?

     

    $LIB = Get-DPMLibrary -DPMServerName *DPMServerName*
    $TPList = Get-Tape -DPMLibrary $LIB[1]
    foreach ($tp in $TPList)
    {
    $rplist = Get-RecoveryPoint -Tape $tp
    foreach ($rp in $rplist)
    {
    Test-DPMTapeData -RecoveryPoint $rp
    }
    }

     

    All help is appreciated!

     

    Antti Laatikainen

     

    Thursday, January 19, 2012 8:58 AM

All replies

  • Hi Antii,

    The script seems to be correct.

    When you run, do you see any any Verification job kicking off via DPM 2010 Administrator Console, Monitoring/Jobs?

    I would add a $rp before Test-DPMTapeData -RecoveryPoint $rp. With that you can see which verification is about to start before PowerShell crashes on you.

    $LIB = Get-DPMLibrary -DPMServerName (&hostname)
    $TPList = Get-Tape -DPMLibrary $LIB[4]
    foreach ($tp in $TPList)
    {
    $rplist = Get-RecoveryPoint -Tape $tp
    foreach ($rp in $rplist)
    {
    write-host ('{0,-15} {1,-30}' -f $rp.userfriendlyname, $rp.datasource) -f yellow
    Test-DPMTapeData -RecoveryPoint $rp
    write-host; write-host
    }
    }
    

     

     

     


    Thanks, Wilson Souza - MSFT This posting is provided "AS IS" with no warranties, and confers no rights
    Thursday, January 19, 2012 9:41 AM
    Moderator
  • I updated the script to show you which tape the data is in when we get the crash (tape label shows in green)

    $LIB = Get-DPMLibrary -DPMServerName (&hostname)
    $TPList = Get-Tape -DPMLibrary $LIB[1]
    foreach ($tp in $TPList)
    {
    	write-host $tp.barcode -f green
    	$rplist = Get-RecoveryPoint -Tape $tp
    	foreach ($rp in $rplist)
    	{
    		write-host ('{0,-15} {1,-30}' -f $rp.userfriendlyname, $rp.datasource) -f yellow
    		Test-DPMTapeData -RecoveryPoint $rp
    		write-host; write-host
    	}
    }
    

     


    Thanks, Wilson Souza - MSFT This posting is provided "AS IS" with no warranties, and confers no rights
    Thursday, January 19, 2012 10:05 AM
    Moderator
  • Hi!

    With this modified script, i can see a proper tape name in green, the in yellow a text:

    e:\               e:\ on computer *protected computer name*

    Immediately after this, a pop up

    Problem signature:
      Problem Event Name: PowerShell
      NameOfExe: powershell.exe
      FileVersionOfSystemManagementAutomation: 6.1.7601.17514
      InnermostExceptionType: Management.Automation.PSInvalidOperation
      OutermostExceptionType: System.Reflection.TargetInvocation
      DeepestPowerShellFrame: unknown
      DeepestFrame: System.RuntimeMethodHandle._InvokeMethodFast
      ThreadName: unknown
      OS Version: 6.1.7601.2.1.0.256.4
      Locale ID: 1035

    On the DPM GUI, i cannot see any verification jobs being created.

     

    Yours,

     

    Antti

     


    Antti Laatikainen IT Security Manager Santen Europe
    Thursday, January 19, 2012 10:13 AM
  • Hi Antti,

    It looks like we are into something...

    I was able to get my PowerShell to crash when trying to verify a Volume data source from two different tapes.

    I'll check on this later on and post an update...


    Thanks, Wilson Souza - MSFT This posting is provided "AS IS" with no warranties, and confers no rights
    Thursday, January 19, 2012 11:01 AM
    Moderator
  • Hi!

    Have you found any workarounds to this yet?

    I've tried with different combinations (Remote Console from Win7 machine etc) but always the PowerShell crashes...

     

    Yours,

    Antti


    Antti Laatikainen IT Security Manager Santen Europe
    Monday, January 30, 2012 10:53 AM