Submit a ticketCall us

Webinar: Web Help Desk for HR, Facilities and Accounting Departments
This webinar will focus on use cases for HR, Facilities and Accounting.

Having a unified ticketing and asset management system for all the departments in your company can provide end-users with a seamless experience and make things easier for your IT team. Yet, with different business tasks and objectives, many departments don’t fully understand the capabilities of Web Help Desk and how the software can be customized for effective use in their departments.
Register Now.

Home > Success Center > Network Performance Monitor (NPM) > Module does not work after applying hotfix

Module does not work after applying hotfix

Created by Matthew Lamb, last modified by Aileen de Lara_ret on Jun 27, 2016

Views: 98 Votes: 0 Revisions: 5

Overview

This article applies to all modules contained within the Orion and when the hotfix applied is a replacement of files rather than a .msp or .exe installer.

 

In such instances, a module or the web console itself may not load proplerly after the hotfix is applied. The errors being seen can range from being unable to talk to a selected engine, resources failing to render, the website failing to load, etc. However, the businesslayer related logs will typically show examples of the following (gathered from the BusinessLayerHost.log):

 

2016-04-25 12:50:08,832 [7] ERROR SolarWinds.BusinessLayerHost.PluginManager - Plugin "SolarWinds.UDT.BusinessLayer, Version=3.2.3.4012, Culture=neutral, PublicKeyToken=null" creation failed.
System.IO.FileNotFoundException: Could not load file or assembly 'SolarWinds.BusinessLayerHost.Contract, Version=2015.1.35100.9209, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
File name: 'SolarWinds.BusinessLayerHost.Contract, Version=2015.1.35100.9209, Culture=neutral, PublicKeyToken=null'

 

2016-04-25 12:50:08,824 [7] ERROR SolarWinds.BusinessLayerHost.PluginManager - Plugin "D:\Program Files (x86)\SolarWinds\Orion\Toolset\SolarWinds.Toolset.BusinessLayer.dll_SSL" could not be loaded correctly
System.IO.FileNotFoundException: Could not load file or assembly 'file:///D:\Program Files (x86)\SolarWinds\Orion\Toolset\SolarWinds.Toolset.BusinessLayer.dll_SSL' or one of its dependencies. The system cannot find the file specified.
File name: 'file:///D:\Program Files (x86)\SolarWinds\Orion\Toolset\SolarWinds.Toolset.BusinessLayer.dll_SSL'

As per the 2 examples above, the Module Engine Service is attempting to load the module plugins, but it cannot find or load files necessary to load. The files in question may be specifically called out or may be given a broader definition, but the same issue remains: the file could not be found or loaded.

Environment

  • All Orion Core  products
  • This article applies to all modules contained within the Orion and when the hotfix applied is a replacement of files rather than a .msp or .exe installer.

 

Cause 

The reason for the errors and problems such is this is because of the way the hotfix was applied. In the case of non .msp or .exe installs and where the .config and\ or .dll files have to be manually replaced, what is done with the OLD files will determine how the system loads.

 

Each plugin goes into its respective install directory to start up by loading the .dlls it has and the configurations for those. If the replaced files still exist in some form or other, then 1 or more of the 4 possible causes will cause the issue:

 

1. The file was replaced and renamed into an improper format. Example: A hotfix calls for the file solarwinds.orion.core.businesslayer.dll to be replaced. The existing file is renamed to have the extension of .dll.old rather than .old. When the plugin loads, it finds the file and still see's that the .dll exists and attempts to load it, but cannot do so.

 

2. The new .dll file placed on the server is Blocked by the operating system and will not be allowed to load because it is not trusted.

 

3. The replaced files are stored in a custom created directory in the same directory as the original file or created in a directory above it. When such an action occurs, the loading Module Engine service will find the backed up files first and load them in that directory incorrectly. Example would be taking the replaced .dlls and adding them to a custom directory like so Program Files (x86)\SolarWinds\Orion\Backup Files.

 

4. The file is actually missing from the installed directory.

 

Resolution

General recommendation for the above causes is to take the replaced files, rename the extension to .OLD and move them all to a directory outside of Program Files (x86). Doing so will prevent any instances where the files may have been loaded in the incorrect order.

 

For any Blocked .dlls, you have the following 2 options to resolve the issue:

  1. Righ-click the .dll file being blocked.
  2. Select Properties.
  3. Under the General tab, there will be a notification at the bottom of the tab specifying that the file is being blocked.
  4. Click the Unblock button just next to that notice.
  5. Click on Apply, then OK.

 

To unblock multiple dlls at once, you can conduct the following steps as well:

  1. Extract the .zip directory to the server.
  2. Find the recently extracted directly.
  3. Right-click on it and Select 'Send to...'.
  4. Select Compress to .zip.
  5. Run through the options to create a new zip for that directory.
  6. Extract that new zip to another location.
  7. Use the files contained within.

 

The above steps is a way to unblock all the files by having Windows trust them automatically. When the Windows operating system compresses content on the drive, whether it is trusted or not, it automatically unblocks all the content. Once it is extracted back out, the .dlls will all be trusted by the OS as it was the one that conducted the compression.

 

 

Last modified
20:33, 26 Jun 2016

Tags

Classifications

Public