None—These messages are presented to
the application user and written to the
server log. |
Memory critical (FILE:LINE) |
An out of memory condition occurred.
MX_MEMORY_SYSTEM_LIMIT was
exceeded when FILE:LINE was attempted,
and so KEEP memory was released. The
retry was successful, but memory is LOW! |
System memory limit exceeded
(FILE:LINE) |
An out of memory condition occurred.
MX_MEMORY_SYSTEM_LIMIT was
exceeded when FILE:LINE was attempted,
and so KEEP memory was released. The
retry failed. |
Missing header (FILE:LINE) |
An attempt was made to free memory with a
bad (malformed) header when FILE:LINE
was attempted, but the free operation was
SKIPPED (probable memory leak). |
Out of memory (FILE:LINE) |
A non-recoverable out-of-memory condition
has occurred when FILE:LINE was
attempted and a system abort/core dump is
pending. The panic reserve is being used to
write diagnostic information to the server
log. |
MX_MEMORY_TRACE—These
messages are sent to stdout or the filename
specified. |
Memory used changed by
NUM |
This shows change in thread memory usage
while executing a command. When you
consistently get positive numbers it indicates
a potential memory leak. |
NUM bytes of memory
allocated in NUM blocks, high
water=NUM bytes |
This shows the byte and block count while
executing a command relative to
MX_MEMORY_KEEP_LIMIT setting.
Includes high water mark to provide an
accurate time-stamped indication of spikes
to allow diagnosis of excessive memory
consumption. Allocations are reported in
chunks of 16k bytes, so when an application
allocates 128 bytes, the allocated bytes
NUM would increase by 16k. When the
application allocates another 128 bytes, it
would stay the same. In fact, the application
could allocate 128 bytes 127 times before
the stats would change. (On the 128th
allocation, another 16k would be reported). The 'allocated byte' stat includes 256k-384k
for each thread that is running. As threads
exit, this additional memory will either be
returned to the keep pool (and increase the
'reserved bytes' stat), or returned to the
operating system (and decrease the
'allocated bytes' stat).
|
NUM bytes of memory
reserved in NUM blocks |
This shows the byte and block count while
executing a command relative to
MX_MEMORY_SYSTEM_LIMIT setting.
The reserved pool is used for other purposes,
particularly in saving blocks that contain
'global' allocations (blocks allocated but not
freed by the owning thread). Thus, the keep
size may exceed
MX_MEMORY_KEEP_LIMIT by any
amount. This is a normal operating
characteristic of the system. Note the keep
size will not grow in an unbounded fashion;
it will level off after the system has been
running for a while. |