locked
CRM 2011 SRS Data Connector Installation Error RRS feed

  • Question

  • Hi all

    I have a clean install of CRM 2011 which is split between CRM Server and SQL Server\SQL Reports Server.

    The CRM Install has completed perfectly but I cannot install the SRS Data Connector on the Reports Server.

    Initially I tried installing this under a local admin account doh! but I got an error about being unable to publish because the user had invalid credentials to publish to the Organization.

    I restarted the install under my CRM installation account which is by the way also local admin on the SQL Server. I got the same error message 

    14:36:27|Warning| Check CanPublishReportsValidator : Warning: Default reports cannot be published to one or more organizations because you do not have sufficient privileges.

    Given that this is a warning I then tried to continue with the install and this also failed with the error below. This is just the end of the log file as its enourmous

     Can anybody help please. I have never had an issue with the data connector previously.

     

    Thanks

    15:30:20|   Info| D:\Data\Install\CRM Reporting\SrsDataConnector\SrsDataConnector.msi installed.  LocalPackage=C:\Windows\Installer\8f4a958a.msi
    15:30:20|   Info| CrmAction execution time; ReportingExtensionsMsiInstallAction; 00:00:08.1186210
    15:30:20|   Info| Installer Complete: SrsDataConnectorMsiInstaller
    15:30:20|   Info| Installer Start: SrsDataConnectorInstaller.Install: operation Install
    15:30:20|   Info| Executing Install action: Microsoft.Crm.Setup.SrsDataConnector.RegisterDataExtensionAction
    15:30:21|   Info| Adding extension MSCRMFETCH to RS config file D:\Apps\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\RSReportServer.config
    15:30:21|   Info| Adding extension MSCRM to RS config file D:\Apps\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\RSReportServer.config
    15:30:21|   Info| CrmAction execution time; RegisterDataExtensionAction; 00:00:00.0976500
    15:30:21|   Info| Executing Install action: Microsoft.Crm.Setup.SrsDataConnector.GrantAssemblyCodeGroupAccessAction
    15:30:21|   Info| Granting code group access to CRM assemblies
    15:30:21|   Info| Saving changes to RS policy file D:\Apps\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\rssrvpolicy.config
    15:30:21|   Info| CrmAction execution time; GrantAssemblyCodeGroupAccessAction; 00:00:00.0214830
    15:30:21|   Info| Executing Install action: Microsoft.Crm.Setup.Server.ConfigureWebStoreRegistryKeys
    15:30:21|   Info| CrmAction execution time; ConfigureWebStoreRegistryKeys; 00:00:00.0029295
    15:30:21|   Info| Executing Install action: Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction
    15:30:21|  Error| System.Exception: Action Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction failed. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.LocatorService' threw an exception. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.ServerLocatorService' threw an exception. ---> System.InvalidOperationException: Cannot load Counter Name data because an invalid index '' was read from the registry.
       at System.Diagnostics.PerformanceCounterLib.GetStringTable(Boolean isHelp)
       at System.Diagnostics.PerformanceCounterLib.get_NameTable()
       at System.Diagnostics.PerformanceCounterLib.get_CategoryTable()
       at System.Diagnostics.PerformanceCounterLib.CategoryExists(String machine, String category)
       at System.Diagnostics.PerformanceCounterCategory.Exists(String categoryName, String machineName)
       at Microsoft.Crm.LocatorCache.CreatePerformanceCounters()
       at Microsoft.Crm.LocatorCache..ctor()
       at Microsoft.Crm.ServerLocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.ServerLocatorService..ctor()
       at Microsoft.Crm.LocatorService..ctor(ILocatorService service)
       at Microsoft.Crm.LocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.LocatorService.get_Instance()
       at Microsoft.Crm.Admin.AdminService.CrmServerService.GetIdFromName(String serverName)
       at Microsoft.Crm.Admin.AdminService.CrmServerService.TryIdFromName(String serverName)
       at Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction.Do(IDictionary parameters)
       at Microsoft.Crm.Setup.Common.CrmAction.ExecuteAction(CrmAction action, IDictionary parameters, Boolean undo)
       --- End of inner exception stack trace ---, Error, RetryCancel, Option1
    15:30:56|   Info| InputResult: Retry
    15:30:56|   Info| CrmAction execution time; RegisterServerAction; 00:00:34.9225695
    15:30:56|  Error| System.Exception: Action Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction failed. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.LocatorService' threw an exception. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.ServerLocatorService' threw an exception. ---> System.InvalidOperationException: Cannot load Counter Name data because an invalid index '' was read from the registry.
       at System.Diagnostics.PerformanceCounterLib.GetStringTable(Boolean isHelp)
       at System.Diagnostics.PerformanceCounterLib.get_NameTable()
       at System.Diagnostics.PerformanceCounterLib.get_CategoryTable()
       at System.Diagnostics.PerformanceCounterLib.CategoryExists(String machine, String category)
       at System.Diagnostics.PerformanceCounterCategory.Exists(String categoryName, String machineName)
       at Microsoft.Crm.LocatorCache.CreatePerformanceCounters()
       at Microsoft.Crm.LocatorCache..ctor()
       at Microsoft.Crm.ServerLocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.ServerLocatorService..ctor()
       at Microsoft.Crm.LocatorService..ctor(ILocatorService service)
       at Microsoft.Crm.LocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.LocatorService.get_Instance()
       at Microsoft.Crm.Admin.AdminService.CrmServerService.GetIdFromName(String serverName)
       at Microsoft.Crm.Admin.AdminService.CrmServerService.TryIdFromName(String serverName)
       at Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction.Do(IDictionary parameters)
       at Microsoft.Crm.Setup.Common.CrmAction.ExecuteAction(CrmAction action, IDictionary parameters, Boolean undo)
       --- End of inner exception stack trace ---, Error, RetryCancel, Option1
    15:30:59|   Info| InputResult: Retry
    15:30:59|   Info| CrmAction execution time; RegisterServerAction; 00:00:03.0271500
    15:30:59|  Error| System.Exception: Action Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction failed. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.LocatorService' threw an exception. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.ServerLocatorService' threw an exception. ---> System.InvalidOperationException: Cannot load Counter Name data because an invalid index '' was read from the registry.
       at System.Diagnostics.PerformanceCounterLib.GetStringTable(Boolean isHelp)
       at System.Diagnostics.PerformanceCounterLib.get_NameTable()
       at System.Diagnostics.PerformanceCounterLib.get_CategoryTable()
       at System.Diagnostics.PerformanceCounterLib.CategoryExists(String machine, String category)
       at System.Diagnostics.PerformanceCounterCategory.Exists(String categoryName, String machineName)
       at Microsoft.Crm.LocatorCache.CreatePerformanceCounters()
       at Microsoft.Crm.LocatorCache..ctor()
       at Microsoft.Crm.ServerLocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.ServerLocatorService..ctor()
       at Microsoft.Crm.LocatorService..ctor(ILocatorService service)
       at Microsoft.Crm.LocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.LocatorService.get_Instance()
       at Microsoft.Crm.Admin.AdminService.CrmServerService.GetIdFromName(String serverName)
       at Microsoft.Crm.Admin.AdminService.CrmServerService.TryIdFromName(String serverName)
       at Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction.Do(IDictionary parameters)
       at Microsoft.Crm.Setup.Common.CrmAction.ExecuteAction(CrmAction action, IDictionary parameters, Boolean undo)
       --- End of inner exception stack trace ---, Error, RetryCancel, Option1
    15:30:59|   Info| InputResult: Retry
    15:30:59|   Info| CrmAction execution time; RegisterServerAction; 00:00:00.6796440
    15:30:59|  Error| System.Exception: Action Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction failed. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.LocatorService' threw an exception. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.ServerLocatorService' threw an exception. ---> System.InvalidOperationException: Cannot load Counter Name data because an invalid index '' was read from the registry.
       at System.Diagnostics.PerformanceCounterLib.GetStringTable(Boolean isHelp)
       at System.Diagnostics.PerformanceCounterLib.get_NameTable()
       at System.Diagnostics.PerformanceCounterLib.get_CategoryTable()
       at System.Diagnostics.PerformanceCounterLib.CategoryExists(String machine, String category)
       at System.Diagnostics.PerformanceCounterCategory.Exists(String categoryName, String machineName)
       at Microsoft.Crm.LocatorCache.CreatePerformanceCounters()
       at Microsoft.Crm.LocatorCache..ctor()
       at Microsoft.Crm.ServerLocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.ServerLocatorService..ctor()
       at Microsoft.Crm.LocatorService..ctor(ILocatorService service)
       at Microsoft.Crm.LocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.LocatorService.get_Instance()
       at Microsoft.Crm.Admin.AdminService.CrmServerService.GetIdFromName(String serverName)
       at Microsoft.Crm.Admin.AdminService.CrmServerService.TryIdFromName(String serverName)
       at Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction.Do(IDictionary parameters)
       at Microsoft.Crm.Setup.Common.CrmAction.ExecuteAction(CrmAction action, IDictionary parameters, Boolean undo)
       --- End of inner exception stack trace ---, Error, RetryCancel, Option1
    15:31:25|   Info| InputResult: Retry
    15:31:25|   Info| CrmAction execution time; RegisterServerAction; 00:00:26.1994950
    15:31:25|  Error| System.Exception: Action Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction failed. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.LocatorService' threw an exception. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.ServerLocatorService' threw an exception. ---> System.InvalidOperationException: Cannot load Counter Name data because an invalid index '' was read from the registry.
       at System.Diagnostics.PerformanceCounterLib.GetStringTable(Boolean isHelp)
       at System.Diagnostics.PerformanceCounterLib.get_NameTable()
       at System.Diagnostics.PerformanceCounterLib.get_CategoryTable()
       at System.Diagnostics.PerformanceCounterLib.CategoryExists(String machine, String category)
       at System.Diagnostics.PerformanceCounterCategory.Exists(String categoryName, String machineName)
       at Microsoft.Crm.LocatorCache.CreatePerformanceCounters()
       at Microsoft.Crm.LocatorCache..ctor()
       at Microsoft.Crm.ServerLocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.ServerLocatorService..ctor()
       at Microsoft.Crm.LocatorService..ctor(ILocatorService service)
       at Microsoft.Crm.LocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.LocatorService.get_Instance()
       at Microsoft.Crm.Admin.AdminService.CrmServerService.GetIdFromName(String serverName)
       at Microsoft.Crm.Admin.AdminService.CrmServerService.TryIdFromName(String serverName)
       at Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction.Do(IDictionary parameters)
       at Microsoft.Crm.Setup.Common.CrmAction.ExecuteAction(CrmAction action, IDictionary parameters, Boolean undo)
       --- End of inner exception stack trace ---, Error, RetryCancel, Option1
    15:31:26|   Info| InputResult: Cancel
    15:31:26|   Info| CrmAction execution time; RegisterServerAction; 00:00:00.8661555
    15:31:26|  Error| Installer Complete: SrsDataConnectorInstaller - Error encountered
    15:31:26|  Error| Install exception.System.Exception: Action Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction failed. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.LocatorService' threw an exception. ---> System.TypeInitializationException: The type initializer for 'Microsoft.Crm.ServerLocatorService' threw an exception. ---> System.InvalidOperationException: Cannot load Counter Name data because an invalid index '' was read from the registry.
       at System.Diagnostics.PerformanceCounterLib.GetStringTable(Boolean isHelp)
       at System.Diagnostics.PerformanceCounterLib.get_NameTable()
       at System.Diagnostics.PerformanceCounterLib.get_CategoryTable()
       at System.Diagnostics.PerformanceCounterLib.CategoryExists(String machine, String category)
       at System.Diagnostics.PerformanceCounterCategory.Exists(String categoryName, String machineName)
       at Microsoft.Crm.LocatorCache.CreatePerformanceCounters()
       at Microsoft.Crm.LocatorCache..ctor()
       at Microsoft.Crm.ServerLocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.ServerLocatorService..ctor()
       at Microsoft.Crm.LocatorService..ctor(ILocatorService service)
       at Microsoft.Crm.LocatorService..cctor()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.LocatorService.get_Instance()
       at Microsoft.Crm.Admin.AdminService.CrmServerService.GetIdFromName(String serverName)
       at Microsoft.Crm.Admin.AdminService.CrmServerService.TryIdFromName(String serverName)
       at Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction.Do(IDictionary parameters)
       at Microsoft.Crm.Setup.Common.CrmAction.ExecuteAction(CrmAction action, IDictionary parameters, Boolean undo)
       --- End of inner exception stack trace ---
       at Microsoft.Crm.Setup.Common.CrmAction.ExecuteAction(CrmAction action, IDictionary parameters, Boolean undo)
       at Microsoft.Crm.Setup.Common.Installer.Install(IDictionary stateSaver)
       at Microsoft.Crm.Setup.Common.ComposedInstaller.InvokeInstall(Installer installer, IDictionary stateSaver)
       at Microsoft.Crm.Setup.Common.ComposedInstaller.InternalInstall(IDictionary stateSaver)
       at Microsoft.Crm.Setup.Common.ComposedInstaller.Install(IDictionary stateSaver)
       at Microsoft.Crm.Setup.SrsDataConnector.SrsDataConnectorSetup.Install(IDictionary data)
       at Microsoft.Crm.Setup.Common.SetupBase.ExecuteOperation()
    15:31:26|Verbose| Method exit: Microsoft.Crm.Setup.SrsDataConnector.SrsDataConnectorSetup.ExecuteOperation
    15:31:26|   Info| ActivatePage(FinishPage)
    15:32:19|   Info| Microsoft Dynamics CRM Reporting Extensions failed.
    15:32:19|   Info| Microsoft Dynamics CRM Reporting Extensions Setup did not complete successfully.

    Action Microsoft.Crm.Setup.SrsDataConnector.RegisterServerAction failed.
    The type initializer for 'Microsoft.Crm.LocatorService' threw an exception.
    The type initializer for 'Microsoft.Crm.ServerLocatorService' threw an exception.
    Cannot load Counter Name data because an invalid index '' was read from the registry.

    15:32:19|  Error| Setup did not complete successfully.
    15:32:19|Verbose| Method exit: Microsoft.Crm.Setup.SrsDataConnector.SrsDataConnectorSetup.RunInternal
    15:32:19|Verbose| Method exit: Microsoft.Crm.Setup.SrsDataConnector.SrsDataConnectorSetup.Run
    15:32:19|Verbose| Method entry: Microsoft.Crm.Setup.SrsDataConnector.SrsDataConnectorSetup.Terminate
    15:32:19|   Info| Exit code: 0
    15:32:19|Verbose| Method exit: Microsoft.Crm.Setup.SrsDataConnector.SrsDataConnectorSetup.Terminate
    15:32:19|   Info| === Managed setup logging stopped: 9/13/2011 3:32:19 PM ===
    15:32:20|   Info| === Setup bootstrap logging started 9/13/2011 3:32:20 PM ===
    15:32:20|   Info| Bootstrap version: 5.0.9688.583.
    15:32:20|   Info| User: crmadminqa.
    15:32:20|   Info| Managed Setup exited with code 0.
    15:32:20|   Info| Clean up the BITS downloader.

     


    Alan Ashton
    Tuesday, September 13, 2011 10:08 PM

Answers

  • >>Are you logged in as domain admin on SSRS where you are installing data connector

    >>Also the user should have permissions(read/write) for the following Active Directory group:

    PrivReportingGroup

    >>http://social.msdn.microsoft.com/Forums/en-US/vstswebtest/thread/c54247d9-6035-4d77-9293-e9986517e310/

    ClickStart, typecmd right clickcmd.exe, and selectRun as administrator.
    At the prompt, type
    lodctr /r and press ENTER. This will repair the pointers (those are stored in the registry).


    C:\Windows\system32>lodctr /r

    Info: Successfully rebuilt performance counter setting from system backup store


    After this action it is possible that some providers are disabled. You can check the status with
    lodctr /q.

    C:\Windows\system32>lodctr /q
    Performance Counter ID Queries [PERFLIB]:
    Base Index: 0x00000737 (1847)
    Last Counter Text ID: 0x00001560 (5472)
    Last Help Text ID: 0x00001561 (5473)

    [.NET CLR Data] Performance Counters (Enabled)
    DLL Name: netfxperf.dll
    Open Procedure: OpenPerformanceData
    Collect Procedure: CollectPerformanceData
    Close Procedure: ClosePerformanceData
    First Counter ID: 0x00001080 (4224)
    Last Counter ID: 0x0000108C (4236)
    First Help ID: 0x00001081 (4225)
    Last Help ID: 0x0000108D (4237)

    etc

    If it says (Disabled) next to a provider, you can enable it with
    lodctr /e:<provider name>. Use for <provider name> the string between the [ ] at the beginning of the entry.

    Succes


    Arpita
    • Marked as answer by alanashton Friday, September 16, 2011 8:24 PM
    Tuesday, September 13, 2011 11:58 PM

All replies

  • >>Are you logged in as domain admin on SSRS where you are installing data connector

    >>Also the user should have permissions(read/write) for the following Active Directory group:

    PrivReportingGroup

    >>http://social.msdn.microsoft.com/Forums/en-US/vstswebtest/thread/c54247d9-6035-4d77-9293-e9986517e310/

    ClickStart, typecmd right clickcmd.exe, and selectRun as administrator.
    At the prompt, type
    lodctr /r and press ENTER. This will repair the pointers (those are stored in the registry).


    C:\Windows\system32>lodctr /r

    Info: Successfully rebuilt performance counter setting from system backup store


    After this action it is possible that some providers are disabled. You can check the status with
    lodctr /q.

    C:\Windows\system32>lodctr /q
    Performance Counter ID Queries [PERFLIB]:
    Base Index: 0x00000737 (1847)
    Last Counter Text ID: 0x00001560 (5472)
    Last Help Text ID: 0x00001561 (5473)

    [.NET CLR Data] Performance Counters (Enabled)
    DLL Name: netfxperf.dll
    Open Procedure: OpenPerformanceData
    Collect Procedure: CollectPerformanceData
    Close Procedure: ClosePerformanceData
    First Counter ID: 0x00001080 (4224)
    Last Counter ID: 0x0000108C (4236)
    First Help ID: 0x00001081 (4225)
    Last Help ID: 0x0000108D (4237)

    etc

    If it says (Disabled) next to a provider, you can enable it with
    lodctr /e:<provider name>. Use for <provider name> the string between the [ ] at the beginning of the entry.

    Succes


    Arpita
    • Marked as answer by alanashton Friday, September 16, 2011 8:24 PM
    Tuesday, September 13, 2011 11:58 PM
  • Hi Alan,

    It would appear that either there was a problem with the deployment of the reports initially on your reporting server or they have subsequently been deleted.

    Verify that your reportserver is running by browing to http://servername/reportserver
    You should get a page that returns a heading like this 

    servername/ReportServer - /

    Once you have confirmed that that is running run the publishreports tool from the CRM folder.

    C:\Program Files\Microsoft Dynamics CRM\Tools\Publishreports.exe ORGANIZATION_NAME where ORGANIZATION_NAME is the name of your CRM organisation. This will recreate the reporting structure in Reporting Services

    Use Command prompt to Publish the reports.

    Regards,


    Khaja Mohiddin|||||http://www.dynamicsexchange.com/
    Wednesday, September 14, 2011 12:06 PM