The following code example will show a positive number of blocks still available in the
Alternate Buffer Pool or will state that the alternate buffer pool is exhausted:
DEFINE VARIABLE numbuffs AS INT64 NO-UNDO.
FIND FIRST _startup NO-LOCK.
ASSIGN numbuffs=_startup-Alternate_buffs.
FIND FIRST _actbuffer WHERE _buffer-id = 3.
IF _actbuffer._buffer-osrds < numbuffs THEN
MESSAGE "Alternate buffers remaining: " + STRING(numbuffs - _actbuffer._buffer-osrds) VIEW-AS ALERT-BOX.
ELSE
MESSAGE "Alternate buffer pool exhausted." VIEW-AS ALERT-BOX.
Starting in OpenEdge Release 11.5:
The
_DbParams VST can be used.
_DbParams replaces the
_Startup VST from previous versions. The _Startup VST will be removed from the OpenEdge Database in OpenEdge 12.
Also use _actbuffer._buffer-active instead of _buffer-osrdr.
DEFINE VARIABLE dbbuffs AS CHAR NO-UNDO.
DEFINE VARIABLE numbuffs AS INT64 NO-UNDO.
FIND FIRST _DbParams WHERE _DbParams._DbParams-Name = "-B2".
ASSIGN numbuffs = INTEGER(_DbParams-Value).
FIND FIRST _actbuffer WHERE _buffer-id = 3.
IF _actbuffer._buffer-active < numbuffs THEN
MESSAGE "Alternate buffers remaining: " + STRING(numbuffs - _actbuffer._buffer-active) VIEW-AS ALERT-BOX.
ELSE
MESSAGE "Alternate buffer pool exhausted." VIEW-AS ALERT-BOX.