Enterprise Console: error message after upgrade to version 3 or above
After upgrading to Sophos Enterprise Console version 3 or above, the following error messages are encountered:
- When deploying to computers from the console:
An internal error has occurred.
Computer does not exist.
Sophos Enterprise Console is unable to recover from this error. - When editing your Updating policies:
Failed to get the list of known central installation directories when getting the updating policy for [Policy_name].
An EM Library computer no longer exists.Shut down and restart the Sophos Enterprise Console. If the problem persists, contact Sophos Technical Support.
This happens if a computer running a 'managed' EM Library is deleted from Enterprise Console, and then the console is upgraded from version 2 to version 3 or above.
What to do
You must delete any orphaned records in the EMLibraryServers table.
To do this, run the following command on the computer with the Enterprise Console version 3 database:
osql -E -S .\sophos -d sophos3 -Q "DELETE FROM EMLibraryServers WHERE ComputerID IN (SELECT ID FROM ComputersAndDeletedComputers WHERE Deleted = 1)"
The above command should be on one line.
Note: You can check which records need to be deleted first by running:
osql -E -S .\sophos -d sophos3 -Q "select ComputersAndDeletedComputers.Name, ComputersAndDeletedComputers.ID from EMLibraryServers left outer join ComputersAndDeletedComputers ON EMLibraryServers.ComputerID = Computersanddeletedcomputers.id where computersanddeletedcomputers.deleted = 1"
This command will return the name and ID of any orphaned records. It should be on one line.
You can then delete those records either using a tool such as SQL Enterprise Manager, or using the above command.
Technical details
The problem happens because a table in Enterprise Console version 2, that holds information about which computers are running EM Library, is not updated when one of those computers is deleted.
During the upgrade to Enterprise Console version 3, this incorrect information is transferred, and causes problems.
There are two tables in the Enterprise Console database:
- ComputersAndDeletedComputers
- EMLibraryServers
These tables are linked. The problem happens as follows:
- EMLibraryServers contains the configuration of each library which has reported back to Enterprise Console. This includes the packages and CID locations. (Effectively this is the contents of EM.xml as exported by the EMLibUpdateAgent.)
- When you delete a computer in Enterprise Console version 2, the computer status is set as 'Deleted' in the column in the ComputersAndDeletedComputers table.
- At this point, Enterprise Console version 2 should also remove the entry for that computer in the EMLibraryServers table, but it doesn't.
- The data is then migrated to the SOPHOS3 database. When performing tasks which require a procedure to get a list of CID locations, it displays the above errors.
To avoid these errors you can delete the orphaned records from the EMLibraryServers table before performing the upgrade.
On the computer with the Enterprise Console version 2 database, run the following command:
osql -E -S .\sophos -d sophos2 -Q "DELETE FROM EMLibraryServers WHERE ComputerID IN (SELECT ID FROM ComputersAndDeletedComputers WHERE Deleted = 1)"
The above command should be on one line.
If you need more information or guidance, then please contact technical support.
- Article ID: 27103
- Created: 4 Jul 2007
- Last updated: 6 Oct 2008
