Onstat -g Options

The onstat -g command structure is completely new with IDS. There is no analogue in the OnLine system to these commands. Since Informix had used up most of the available alpha characters with OnLine, they decided to use onstat -g as a gateway into most of the additional features of IDS such as, parallelism, multithreading, parallel data query, and memory management. To do this, they added a third parameter to the onstat command. The generic term for the information presented with this command subfamily is "MT," for "multithreading."

To expedite reference to the onstat -g commands, here is a summary of the multithreading commands:

   MT COMMANDS:
   onstat -g
   all   Print all MT information
   ath   Print all threads
   wai   Print waiting threads
   act   Print active threads
   rea   Print ready threads
   sle   Print all sleeping threads
   spi   Print spin locks with long spins
   sch   Print VP scheduler statistics
   lmx   Print all locked mutexes
   wmx   Print all mutexes with waiters
   con   Print conditions with waiters
   stk <tid> Dump the stack of a specified thread
   glo   Print MT global information
   mem [<pool name>|<session id>] Print pool statistics.
   seg   Print memory segment statistics
   rbm   Print block map for resident segment
   nbm   Print block map for non-resident segments
   afr <pool name|session id> Print allocated pool fragments
   ffr <pool name|session id> Print free pool fragments
   ufr <pool name|session id> Print pool usage breakdown
   iov   Print disk IO statistics by vp
   iof   Print disk IO statistics by chunk/file
   iog   Print AIO global information
   iob   Print big buffer usage by IO VP class
   ppf [<partition number> | 0] Print partition profiles
   tpf [<tid> | 0] Print thread profiles
   ntu   Print net user thread profile information
   ntt   Print net user thread access times
   ntm   Print net message information
   ntd   Print net dispatch information
   nss [<session id>) Print net shared memory status
   nsc [<client id>] Print net shared memory status
   nsd   Print net shared memory data
   sts   Print max and current stack sizes
   dic   Print dictionary cache information
   opn [<tid>] Print open tables
   qst   Print queue statistics
   wst   Print thread wait statistics
   ses [<session id>] Print session information
   sql [<session id>] Print SQL information
   stq [<session id>] Print stream queue information
   dri   Print data replication information
   pos   Print /INFORMIXDIR/etc/.infos.DBSERVERNAME file
   mgm   Print Memory Grant Manager information
   lap   Print light append information
   ddr   Print DDR log post processing information
   dmp <address> <length> Dump <length> bytes of memory starting at <address>
   src <pattern> <mask> Search memory for <pattern>, <pattern>==(memory&<mask>)

Not All Onstat -g Options are Documented

Informix has not documented many of the onstat -g subcommands. The official line is that onstat -g is for "support and debugging purposes" only. Although this section has drawn information from multiple sources, in many instances what you are seeing is the "unofficial" definitions of terms and fields used in the commands. Some of the commands are so oblique that I didn't even include them in this chapter, since I'm convinced that nobody knows what they do. In many cases, the options have changed or been dropped from one version of IDS to the next. In view of the unsupported nature of much of this material, use caution in interpreting what these commands tell you. Luckily, you cannot do any harm simply by running the commands, so experiment away.

One of the useful sources of information about some of the meanings of the flags and fields has come from the sysmaster.sql command script that is used by the engine when it initializes the sysmaster database. If you ever want to do a little interesting, not-so-light reading, take a look at this SQL file. The fields are fairly well documented and understandable, although it has its share of cryptic definitions. Also of use is the flags_text table in the sysmaster database. This is useful in decoding the meanings of some of the more esoteric flags.

As part of the research for this book, I requested that Informix provide detail about these onstat -g options. Even with the assistance of Informix Press and insiders within the company, I could not pry the information loose from Informix. This is a totally unacceptable attitude and I hope that someone at Informix will see fit to document these utilities and to share this important monitoring and tuning information with the customers who have spent so much time and money acquiring and learning their products. Such arrogance and refusal to share information are not what users expect from an open systems company.

Onstat -g all Print All MT Information

The onstat -g all command presents all of the multithreading information with one command. This is usually more information than you will ever need to know at one time. It may be useful if you are writing scripts to gather and then process the information with grep, sed, awk, perl, or other utilities.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset