KBI 310171 ODBC Error in Application Event Log

Version

All Products

Date

14 September 2009

Summary

The following ODBC error appears in the “Application” event log at a regular interval.

Event Type: Error
Event Source: ODBC
Event Category: None
Event ID: 0

The description for Event ID 0) in Source (ODBC) cannot be found; the local computer typically does not have the necessary registry information or message DLL files to display messages from a remote computer.

The following information is part of the event:

Error in d:\mdac28rtm\odbc\core\dm\perf.c(000), The system cannot find the file specified.

Failed to query

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ODBC\Performance\First Counter.

(The path will vary.)

Technical Background

This is not an Argent related issue but a side effect of how Microsoft Windows deals with ODBC performance counter access – when a software product attempts to access the target machine for eligible ODBC performance counters, this error will be generated if the target range for counters is disabled, or the counters are not available or the registry is otherwise disabled for access to these counters.

The first step to debug this Microsoft error is to check the registry –see if the counters exist:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ ODBC\Performance\counters_to_check_for

Resolution

From the monitored machine (the machine hosting the ODBC database, with performance counters for ODBC disabled), go to:

START -> PROGRAMS -> ADMINISTRATIVE TOOLS -> Data Sources (ODBC)

Select the appropriate ODBC driver

Click on the “Connection Pooling” tab at the top.


In the upper right hand of the dialog box there is an item that says “PerfMon” with a radio button to enable or disable. Set it to “enable”.

This will set the correct registry entries and cause the counters to load.