MDStatus corruption causes status to fail

  • 7009706
  • 07-Nov-2011
  • 27-Apr-2012

Environment

Novell ZENworks 10 Configuration Management with Support Pack 3 - 10.3

Situation

After mdstatus crash, the status no longer rolls up to primary. 
 
ERROR (from zmd-messages.log):
 
 [DEBUG] [11/07/2011 17:11:21.820] [3612] [ZenworksWindowsService] [15] [] [RegistrationModule] [] [Unexpected exception when trying to set refresh status. msg=The type initializer for 'Novell.Zenworks.MDStatus.StatusLibrary' threw an exception.] [] []
 
[DEBUG] [11/07/2011 17:11:21.914] [3612] [ZenworksWindowsService] [5] [] [ZenThreadPool] [] [Unhandled exception: System.TypeInitializationException: The type initializer for 'Novell.Zenworks.MDStatus.StatusLibrary' threw an exception. ---> Novell.Zenworks.Cache.Sqlite.SqliteException: Sqlite Error: 14
   at Novell.Zenworks.MDStatus.StatusLibrary.ValidateDB()
   at Novell.Zenworks.MDStatus.StatusLibrary..cctor()
   --- End of inner exception stack trace ---
   at Novell.Zenworks.MDStatus.StatusLibrary.SetStatus(Status statusObject)
   at Novell.Zenworks.AppModule.AppActionItem.UpdateEffectivenessStatus()
   at Novell.Zenworks.AppModule.AppRefreshHandler.UpdateStatusAndUninstallsThread.UpdateEffectivenessAndUninstall()
   at Novell.Zenworks.Zmd.ZenThread.WorkerLoop()] [] []

Resolution

Try stopping the ZENworks agent service, then rename or delete mdstatus.db and restart the agent service.

Additional Information

The mdstatus had crashed, corrupting the local sqlite database. 
 
Note also, in the case of version, 10.3.3, the fix for TID  https://www.novell.com/support/search.do?usemicrosite=true&searchString=7008374 for mdstatus is applied.