Ex_Continue

This return value resumes execution from the next expression following the expression that caused the exception. Apart from any effect arising from execution of code in the exception handler, the execution stack will be as it was before the exception occurred.

In order to use Ex_Continue as the return value, the exception must be continuable; otherwise another exception 1238 (Exception handler invalid return code) is raised. For SystemExceptions and user exceptions, this property is false by default. For exceptions that you raise yourself, you should set the value of continuable to meet your application requirements. However, this does not apply to the LockException class, where continuable is automatically set to true when your exception handler successfully retries the lock operation. If you return Ex_Continue from a lock exception handler when you do not have the lock, JADE raises exception 1225 (Lock cannot be continued) or 1224 (Automatic lock ignored) if it was an implicit or internal lock.

System exceptions 1146 (The object was updated before the lock upgrade completed) is also continuable. This exception is related to the use of update locks.

Continuable exceptions assume that the cause of the problem has been fixed and the operation retried, so that the net effect of the exception and exception handling is as if the exception never occurred. For example, a lock exception that successfully retries the lock is transparent to the user code that requested the lock. Similarly, continuable user exceptions and their handlers should have the same kind of provision to avoid skipping the execution of important code. Such skipping could result in erratic behavior of the application.