Browse FAQs

PME Web Applications give error "Source Measurement list did not load" when trying to add sources or measurements

Published date: 30 December 2019

Issue
PME Web Applications gives error "Source Measurement list did not load" when trying to add sources or measurements onto Dashboards, Diagrams, Trends.  However, Reports will work.  The error message states:

There was an error attempting to load the Source Measurement list from the server.  The application is usable, but no selections can be added or edited.  If this problem persists contact your system administrator.  


The System Log will show errors with the Software Data Processing Service targeting the Active Configuration Host:
Problem creating processor configurations for Rule 'Configuration Rule': System.ArgumentNullException: Value cannot be null. Parameter name: id at System.TimeZoneInfo.FindSystemTimeZoneById(String id) at SE.IONServices.DataProcessor.DataProcessorHostScheduleManager.ConfigurationShouldBeActiveNow(IProcessingConfiguration configuration) at SE.IONServices.DataProcessor.DataProcessorHost.ActivateConfiguration(IProcessingConfiguration configuration) at SE.IONServices.DataProcessor.ActiveConfigurationHost.ActivateRule(ProcessingRule rule)

When looking into the Web Application Diagnostics Log Event, you will find the following errors:
"Could not initialize data source driver. Initialization has failed 1365 time(s). The last exception was: Error initializing cross reference cache."
"A problem occurred on page 'https://emsprod01/SystemDataService/Hierarchy/2015-07/View/AllWithTopics': An error occurred while accessing a system resource or another service. Please try again later."

Product Line
Power Monitoring Expert

Environment
Web Applications - Diagrams, Dashboards, Trends

Cause
This occurs if there are sources defined multiple times in table [ApplicationModules].[DataSourceBus].[DataSourceDevice] and this is causing issue when source/measurement list is loaded in web application.  This error becomes clarified in the Log Extended Information in Application Modules:

LogClientException: Framework.Common.Exceptions.ModuleException: Error initializing cross reference cache. ---> Framework.Common.Exceptions.ModuleException: Data Source Device [1-354.E-SSZ2-354-01-002-BMSB-01-MAIN] is defined multiple times.
   at DataSourceDrivers.CrossReferenceCache`2.HandleDataSourceDeviceUpdate(String deviceRepresentation, DsdDevice existingDevice)
   at System.Collections.Concurrent.ConcurrentDictionary`2.AddOrUpdate(TKey key, TValue addValue, Func`3 updateValueFactory)
   at DataSourceDrivers.CrossReferenceCache`2.AddDsdDeviceToMap(DsdDevice device)
   at DataSourceDrivers.CrossReferenceCache`2.InitializeDeviceMappings(IEnumerable`1 devices)
   at DataSourceDrivers.CrossReferenceCache`2.Initialize(DsdInitializationData initializationData)
   at DataSourceDrivers.CrossReferenceCache`2..ctor(DataSourceIdentity identity, DsdInitializationData initializationData)
   at DataSourceDrivers.DataSourceInitializer`2.GetCacheFromDataSourceBus()
   --- End of inner exception stack trace ---
   at DataSourceDrivers.DataSourceInitializer`2.GetCacheFromDataSourceBus()
   at DataSourceDrivers.DataSourceInitializer`2.UpdateCache()
   at DataSourceDrivers.DataSourceInitializer`2.PerformInitialization()
   at DataSourceDrivers.DataSourceInitializer`2.Initialize(Int32 dataSourceId, IDataSourceConfiguration configuration, IDataSourceBus dataSourceBus)
   at DataSourceDrivers.DataSourceDriverStateManager.Initialize(IDataSourceBus dataSourceBus, CancellationToken cancellationToken)
   at DataSourceDrivers.DataSourceDriverStateManager.AttemptInitialize(CancellationToken cancellationToken)
   at DataSourceDrivers.DataSourceDriverStateManager.AttemptInitializeTemplate(CancellationToken cancellationToken)
LogClient: DataSourceDrivers::DataSourceDrivers.DataSourceInitializationLogger::LogWarningMessage

Resolution
*Warning: Irreparable database damage can occur. This procedure should only be performed by users familiar with SQL Server Management Studio. Databases should be backed up prior to performing this procedure.*

To Fix this issue apply below given steps - 
  1. Take ApplicationModules DB backup.
  2. Shut down the ApplicationModules windows services.
  3. Run the attached SQL script named 'ApplicationModules-DeleteAllDeviceMetadata.sql' in SQL Server Management Studio (SSMS).
  4. In SSMS, locate the table [ApplicationModules].[DataSourceBus].[DataSourceDevice].  Identify the DataSourceDeviceID's that are duplicates.  
  5. Run below query to delete duplicate devices in SSMS.  In this example, Data Source Device ID 10351 related to the previously mentioned source 1-354.E-SSZ2-354-01-002-BMSB-01-MAIN.
    USE [ApplicationModules]
    Delete from DataSourceBus.datasourcedevice where DatasourcedeviceID in (10351)
    Delete from DataSourceBus.logicaldevice where logicaldeviceID in (10351)
  6. Start the ApplicationModules services
Launch web app and try to create new dashboard, now you can able to select source/measurements lists.

Was this helpful?

What can we do to improve the information ?

Can't find what you are looking for?

Reach out to our customer care team to receive information on technical support, assistance for complaints and more.