Adaptive Server gathers the information for the monitoring tables from:
Global monitor counters (for example. monSysWaits, which has a limited number of rows).
Resource-specific monitor counters (for example, monCachedProcedures, for which the number of result rows depends on a snapshot of cached, compiled objects in procedure cache) associated with a single server resource, such as engines or the procedure or data cache.
Active process status structures (for example, monProcessWaits and monProcessSQLText). The number of result rows for monProcessWaits or monProcessSQLText depends on the number of active user connections or the number of active process status structures, respectively.
Circular buffers (for example, monSysStatement and monDeadLock). The number of result rows for monSysStatement or monDeadLock relate to configuration parameter settings and how much data the fast data pipes contain. This buffer is used by all of the historical monitoring tables.
For some large production servers, materializing some monitoring tables may require resources and time.