When updating LiteSpeed 4.0.x to 4.5 or higher, it may update only parts of the engine and the product dll may not get updated. The easy solution would be restarting the host, however sometimes this is not possible in a production environment.
Sometimes when installing an upgrade on Windows, it will be required to restart the server to update the dlls and registry information, when it is not possible, we may need to attempt a manual refresh and update the installation.
This situation happens when the xpSLS.dll is cached in memory, then the physical dll file is updated, but the memory does not release and still holds the old version of the xpSLS.dll.
Subsequent calls to the xpSLS.dll call the cached copy in memory instead of loading the new version from the newer version xpSLS.dll file.
This results in the discrepancy of the Product Version and Engine Version when running 'exec xp_sqllitespeed_version' like below:
"Product Version" = "4.0.7.3"
"Engine Version" = "4.5.0.00103"
This solution applies when the update install does not update the xpSLS.dll and the server cannot be restarted, when the product version does not match with the engine version after the update install. This solution does NOT work in all cases, but we have seen it resolve the problem a few times.
Please disable and stop all jobs, scripts and maintenance plans that use LiteSpeed. This will increase the chances of a successful upgrade.
If the server cannot be restarted, it is necessary to run the following command in SQL Query Analyzer to ensure that the system has been fully updated:
xp_sqllitespeed_version
Output when the system has not been update will look like this:
"Product Name" = "LiteSpeed 2005",
"Product Version" = "4.0.7.3"
"Engine Version" = "4.5.0.00103"
The correct output when running the update install to LiteSpeed 2005 v 4.5 should be like this:
"Product Name" = "LiteSpeed 2005",
"Product Version" = 4.5.0.00103
"Engine Version" = "4.5.0.00103"
If the output has different versions of the product as the example above, run either one or a combination of the following procedures:
1- The xpSLS.dll file may not have been updated properly during the install. Please locate this file in %\Program Files\Microsoft SQL Server\MSSQL\Binn, right click on the file and select Properties, go to the Version tab, and highlight Product Version. If this shows 4.0.7.3, then overwrite this dll with another one provided by Technical Support or from another LiteSpeed 2005 4.5 server that is available. The updated xpSLS.dll version should be 5.0.0.1.
2- If the Product Version of xpSLS.dll is updated, then this means that the old dll is still stored in cache, and this is where xp_sqllitespeed_version is reading from. To fix this you will need to clear out SQL Server's cache. Run the following command from Query Analyzer:
DBCC DROPCLEANBUFFERS
3- Verify that jobs are not running. Stop and restart the SQL Service Agent.
© ALL RIGHTS RESERVED. Terms of Use Privacy Cookie Preference Center