The range of tables and indices monitored is defined by the database server startup parameters:
- Tables: -basetable n -tablerangesize n
- Indices: -baseindex n -indexrangesize n
The
basetable and
baseindex can be changed at run-time by updating the
_StatBase VST.
The ranges cannot be changed at run-time because the backing shared memory needs to be pre-allocated at startup.
The shared memory cost is based on the size of the table and index ranges specified at startup:
+ 32 bytes per table per user (-n)
+ 40 bytes per index per user (-n).
Example: 100 (-n value) users monitoring 100 tables (tablerangesize) and 100 indexes (indexrangesize):
100 (users) * 100 (tables) * 32 (bytes per table) + 100 (users) * 100 (indexes) * 40 (bytes per index) = 720,000 bytes (about 0.5 MB of shared memory)