none
DPM 2016 Crashing Server RRS feed

  • Question

  • I'm aware there is another thread on DPM 2016 causing server crashes but the fix posted didn't work for me plus I'm getting totally different error messages. Though the scenario is very similar.

    Our server (Windows 2016) running DPM 2016 (UR4) started crashing intermittently and is now crashing all the time. Looks like it must be DPM causing it as now I've disabled the DPM service from starting the server isn't crashing. Issues started after upgrading to UR4, I did move some backups between disks but not sure if that was before or after first crash.

    I've checked the DPM logs and I can't see anything that relates. Only thing I can see is on the system event log, the last events just before the crash.

    This appears a few times;

    Source: DistributedCOM, Event ID: 10016.

    The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID 
    {D63B10C5-BB46-4990-A94F-E40B9D520160} and APPID {9CA88EE3-ACB7-47C8-AFC4-AB702511C276} to the user CATS-SOLUTIONS\catsdpm05.sql SID (S-1-5-21-3452550953-2567952440-2853964699-17677) from address LocalHost (Using LRPC) running in the application container Unavailable SID (Unavailable). This security permission can be modified using the Component Services administrative tool.

    And this once;

    Source: BugCheck, Event ID 1001.

    The computer has rebooted from a bugcheck.  The bugcheck was: 0x0000c1f5 (0x0000000000000026, 0x0000000000000008, 0x0000000000000000, 0xffffa40d0f52f000). A dump was saved in: C:\Windows\MEMORY.DMP. Report Id: 25e98537-500f-48a9-bd73-bea70944ae6e.

    It is driving me mad. Anyone have any ideas?

    Thursday, November 30, 2017 6:14 PM

All replies

  • Have a look at this thread:

    https://social.technet.microsoft.com/Forums/en-US/43dedbb9-993d-4d6c-acab-159dc120e9c7/regular-dpm-2016-service-crash?forum=dataprotectionmanager

    This SQL Script should fix the issue:

    ________________________________________________________________________________________

    IF EXISTS (SELECT * FROM dbo.sysobjects
               WHERE id = OBJECT_ID(N'prc_RM_ReplicaDataset_GetValidDatasetCountOnPhysicalReplica')
               AND OBJECTPROPERTY(id, N'IsProcedure') = 1)
    DROP PROCEDURE dbo.prc_RM_ReplicaDataset_GetValidDatasetCountOnPhysicalReplica
    GO

    -- Returns the number of valid datasets for that datasource on the physical replica for the given datasource
    CREATE PROCEDURE dbo.prc_RM_ReplicaDataset_GetValidDatasetCountOnPhysicalReplica
    (
      @DatasourceId GUID,
      @ReplicaId GUID,
      @IncludeDatasetsWithoutSC BIT = 1     -- Default value 1
    )
    AS
        DECLARE @error int
        SET @error = 0
       
        SET NOCOUNT ON

        IF @IncludeDatasetsWithoutSC = 1
        BEGIN
            SELECT COUNT(Dataset.DatasetId)
            FROM dbo.tbl_RM_ReplicaDataset AS Dataset
                LEFT OUTER JOIN tbl_RM_ShadowCopy ShadowCopy
                    ON ShadowCopy.ShadowCopyId = Dataset.ShadowCopyId
                JOIN dbo.tbl_RM_RecoverySource AS RecoverySource
                    ON Dataset.DatasetId = RecoverySource.DatasetId
                JOIN tbl_PRM_LogicalReplica ReplicaDS
                    ON Dataset.ReplicaId = ReplicaDS.ReplicaId
            WHERE ReplicaDS.PhysicalReplicaId = @ReplicaId AND
                ReplicaDS.DatasourceId = @DatasourceId AND
                ReplicaDS.Validity <> 4 AND     -- not destroyed
                (ShadowCopy.Validity = 2 OR Dataset.ShadowCopyId IS NULL) AND
                RecoverySource.IsValid = 1 AND
                RecoverySource.IsGCed = 0 AND
                ReplicaDS.IsGCed = 0 AND
                (ShadowCopy.IsGCed = 0 OR ShadowCopy.IsGCed IS NULL) AND
                Dataset.IsGCed = 0
        END
        ELSE
        BEGIN
            SELECT COUNT(Dataset.DatasetId)
            FROM dbo.tbl_RM_ReplicaDataset AS Dataset
                JOIN tbl_RM_ShadowCopy ShadowCopy
                    ON ShadowCopy.ShadowCopyId = Dataset.ShadowCopyId
                JOIN dbo.tbl_RM_RecoverySource AS RecoverySource
                    ON Dataset.DatasetId = RecoverySource.DatasetId
                JOIN tbl_PRM_LogicalReplica ReplicaDS
                    ON Dataset.ReplicaId = ReplicaDS.ReplicaId
            WHERE ReplicaDS.PhysicalReplicaId = @ReplicaId AND
                ReplicaDS.DatasourceId = @DatasourceId AND
                ReplicaDS.Validity <> 4 AND     -- not destroyed
                ShadowCopy.Validity = 2 AND
                RecoverySource.IsValid = 1 AND
                RecoverySource.IsGCed = 0 AND
                ReplicaDS.IsGCed = 0 AND
                ShadowCopy.IsGCed = 0 AND
                Dataset.IsGCed = 0
        END
         
        SET @error = @@ERROR
        SET NOCOUNT OFF

        RETURN @error
    GO

    ________________________________________________________________________

    • Proposed as answer by Michael-CM Sunday, December 3, 2017 4:30 PM
    Sunday, December 3, 2017 4:29 PM
  • I've already tried that script and it doesn't update anything in the database, or fix the issue.

    It appears to be a different issue as I'm getting different error messages to that thread.

    Monday, December 4, 2017 10:48 AM
  • In my company We have the lastest update dpm 1807 and our server during night is crashing randomly. Also disk management unable to open and backups stuck in 0%.  This is a very strange situation. We use modern backupstorage(refs). Someone has answers to problems with dpm?

    Thank you

    Monday, December 31, 2018 12:11 PM