cancel
Showing results for 
Search instead for 
Did you mean: 

Sybase Central - Statistics- Uncompleted file I/Os

Former Member
4,575

Hi folks,

I see in Sybase Central, on Overview panel, the following information on Statistics frame:

"The current number of uncompleted I/Os issued by the server: 38 The number of requests waiting to be fulfilled: 1"

What does this information mean???? I did not find any explanation on documentatio.

Thanks!

Accepted Solutions (0)

Answers (3)

Answers (3)

Breck_Carter
Participant

The CurrIO property (current number of file I/Os that were issued by the server but haven't yet completed) is not reliable due to a known problem.

At least, it was an acknowledged problem as of Tue, Nov 8, 2011 (in a private email) and I've heard nothing since.

For that reason, CurrIO property, displayed under the title "Active I/O", was removed from Version 2 of Foxhound; there's no point displaying a statistic that has little relationship with reality.

At some point, the problem will surely be fixed, and subsequent releases of Foxhound will start displaying it for target databases running on servers built on or after the fix was made.

For the record, here are a couple of ancient trouble reports...


Sun, Jun 1, 2008 at 8:44 AM

For some time I have noticed wildly high values of CurrIO... it grows by leaps and bounds, stays high for hours and hours even when there's no activity, and remains unaffected by checkpoints.

None of which bothers me per se, other than shouting out "I am a meaningless statistic!"... or am I missing something?

SELECT @@VERSION, DB_PROPERTY ( 'CurrIO' ) AS CurrIO, DB_PROPERTY ( 'DiskRead' ) AS DiskRead, DB_PROPERTY ( 'DiskWrite' ) AS DiskWrite; @@VERSION,CurrIO,DiskRead,DiskWrite '11.0.0.1083 Panorama Beta','219007','17166','296'


11/07/2011 06:24 AM

As of 12.0.1.3298 the CurrIO statistic still regularly reports bogus values
like 40, 80, 101, 120 (growing) for an idle server.

As such, it is pretty much useless.

Sadly, the Help still talks about watching CurrIO as if it's going to tell you something meaningful:

When hardware resources are a limiting factor

Hi Roger,

The value beside "The current number of uncompleted I/Os issued by the server" is the database property 'CurrIO' which is the sum of the read and write requests sent to the OS (usually hard drive access requests) that have not yet completed.

The value beside "The number of requests waiting to be fulfilled" is the 'UnschReq' server property which describes the number of requests that are currently queued waiting for a server worker thread.

Information on accessing other server properties can be found here

Information on accessing other database properties can be found here

Former Member
0 Kudos

Thank you guys!

I understood the CurrIO statistic is not reliable. Ok.

About the "The number of requests waiting to be fulfilled", can I do anything to solve the problem of queue of server worker thread?

Thanks! Roger

0 Kudos

Roger -

Which version of SQL Anywhere are you using? Newer versions should automatically increase the number of workers to handle a higher volume of requests. It's important to note that if system resources are scarce SQL Anywhere will not increase the number of workers, to prevent them from competing over resources with each other. The command:

"SELECT value FROM sa_eng_properties() WHERE PropName='MultiProgrammingLevel';"

will show the current number of workers. The default value at startup is 20, the default max is 80. Here are instructions for changing these values:

http://dcx.sybase.com/index.html#sa160/en/dbadmin/running-s-3713576.html

Although if SQL Anywhere is not creating new workers, it's probably for a good reason, you may not have sufficient RAM or CPU time