If an error that the server fault monitor ignores affects more than one session, action by the server fault monitor might be required to prevent a loss of service.
For example, see the following error message:
Illegal attempt to change contents of buffer: %S_BUF. |
No action is preset for Sybase error 835, Illegal attempt to change contents of buffer: %S_BUF. However, this Sybase error indicates that the when a client process completes, Adaptive Server performs some cleanup tasks such as closing the buffers and releasing the resources taken up by the buffers. If the client process terminates abnormally, however (for example if the process is killed during execution), Adaptive Server might be unable to carry out the appropriate cleanup, buffers are left open, and Error 835 is raised. If this error affects only a single session, ignoring the error might be appropriate. However, if this error affects more than one session, consider specifying that the server fault monitor restart the database.
The following example shows an entry in a custom action file for changing the response to a DBMS error to restart.
{ ERROR_TYPE=DBMS_ERROR; ERROR=835; ACTION=restart; CONNECTION_STATE=*; NEW_STATE=*; MESSAGE="Illegal attempt to change contents of buffer: %S_BUF."; }
This example shows an entry in a custom action file that overrides the preset action for DBMS error 835. This entry specifies the following behavior:
In response to DBMS error 835, the server fault monitor performs a restart.
This entry applies regardless of the state of the connection between the database and the server fault monitor when the error is detected.
The state of the connection between the database and the server fault monitor must remain unchanged after the error is detected.
The following message is printed to the resource's log file when this error is detected:
"Illegal attempt to change contents of buffer: %S_BUF." |