VSP pages can declare handlers for errors using the normal
handler declaration or whenever ... goto construct. Any unhandled
error causes the procedure to be terminated and the error message
to be sent to the HTTP client instead of the output. Because
terminating the page output at an arbitrary point would probably
result in not well formed output all the output up to the point of
the error is discarded.
If the SQL state signalled with the error is VSPRT the output
generated up to the point where the error was signalled is sent as
such to the user agent. This special SQL state is useful together
with the http_rewrite function for things like sending a redirect
based on a condition detected in the middle of page processing. The
http_rewrite function will clear all output buffered so far and
signaling VSPRT will make sure that whatever output is generated
after http_rewrite goes unmodified to the user agent.