The database discovery scripts (DiscoverSQL200*DB.vbs) fail on SQL servers with DBs larger than 32GB in the 6.0.6441.0 version of the SQL MP
Published Feb 14 2019 08:37 PM 313 Views
First published on TECHNET on Nov 13, 2008

12/3 (Final) Update: The fixed management pack (build 6.0.6460.0) is now available on the MP Catalog !!!  I've removed the attachment from this post so if you want to download the MP feel free to grab it from the catalog.

12/1 Update: Due to recent changes in our tools for getting MPs posted to the web we've been delayed in getting the fixed version of the SQL MP released.  In order to workaround this for the time being I've attached the updated MP pacakge to this blog post.  Once the MP is available in the MP Catalog I'll remove the attachment from this post and redirect folks to the catalog.

Issue: We've recently become aware of an issue with the recently released version of the SQL MPs that results in the database discovery scripts failing on any system that has a DB which is larger than ~32GB.  The error message generated in the “Operations Manager” log on the agents is shown below.  No data is lost as a result of this error, but after importing the MPs the error messages shown below will be generated, and no new discovery will occur.

Next Step: We are testing a fix for the discovery which includes the changes listed below.  When are working to release the fixed MP to the MP Catalog within the next few days.  We will provide an update to this blog when that is done:

·         The DB discovery script no longer casts the values that correspond to “Database Size (MB) (Numeric)” and “Log Size (MB) (Numeric)” as INT, to avoid overflows exceptions within the script itself.

·         The DB discovery script now checks for possible overflow on the “Database Size (MB) (Numeric)” and “Log Size (MB) (Numeric)” values and prevents those overflows from occurring.

·         For the numeric properties on the database class we are limited to 2147483647 MB (~2047 TB).  In the event that a DB or log file exceeds that size then the value will be set to the maximum possible value of 2147483647 to prevent overflows.  In these instances the ”Database Size (MB) (String)” and “Log Size (MB) (String)” will support larger values.

Sample Error Message:

Log Name:      Operations Manager
Source:        Health Service Modules
Event ID:      21406
Level:         Warning
Description:
The process started at 2:17:19 PM failed to create System.Discovery.Data. Errors found in output:

C:Program FilesSystem Center Operations Manager 2007Health Service StateMonitoring Host Temporary Files 92804DiscoverSQL2008DB.vbs(167, 15) Microsoft VBScript runtime error: Overflow: 'CInt'

Command executed:     "C:Windowssystem32cscript.exe" /nologo "DiscoverSQL2008DB.vbs" …
One or more workflows were affected by this.
Workflow name: Microsoft.SQLServer.2008.DatabaseDiscoveryRule

Version history
Last update:
‎Mar 11 2019 08:05 AM
Updated by: