eG Monitoring
 

Measures reported by MsSqlAppLCursorTest

Cursor is a database object used by applications to manipulate data in a set on a row-by-row basis, instead of the typical SQL commands that operate on all the rows in the set at one time.

If cursors executing on an Microsoft SQL server take too long a time to execute, it could drain critical server resources, and could severely hamper server performance. With the help of this test, you can easily track the number of cursors that each application is executing on the Microsoft SQL server and the time they take to execute, so that resource-intensive cursors and the applications executing them can be isolated.

The measures reported by this test are as follows:

Measurement Description Measurement Unit Interpretation
No_of_cursor Indicates the total number of cursors that this application is currently executing on the server. Number Compare the value of this measure across applications to know which application is executing the maximum number of cursors on the server.

Use the detailed diagnosis of this measure to know the details of the cursors. This includes the name of each cursor, which user created the cursor, when, how long has it been since the cursor was created, the number of disk reads and writes performed by the cursor, and the worker time of the cursor. Long running cursors and I/O intensive cursors can thus be isolated.

Avg_cursor_opentime The average time for which this application was executing cursors on the server. Secs Ideally, the value of this measure should be low. A high value indicates that the cursors executed by this application have been running for too long a time on the server; besides eroding server resources, this phenomenon can greatly degrade server performance. Compare the value of this measure across applications to identify which application is executing long running cursors.
Max_cursor_opentime Indicates the maximum time for which cursors executed by this application have remained open. Secs