On 26-Sep-2016 09:32 -0500, Chris Bipes wrote:
I have a CLP that runs a java process. The java process will fail -
out of memory - (ok I am searching for the memory leak) but I want
to trap the error and loop back to run the process again. (Yes a band
aid).

The message is CPF9999:
"Message . . . . : Function check. JVA0122 unmonitored by
BBCSTART at statement 0000002900, instruction X'0000'. "

I tried to put a monmsg after the JAVA command but you cannot
monitor for that

What would "that" be? The JVA0122, the CPF9999, or perhaps an inquiry message such as CPA0701? Another followup reply had already noted that, to prevent the CPF9999 [aka *FC] from appearing, monitor for the error message shown in the message text of the msg CPF9999.

The only other conspicuous value for "that" would seem to be the only other message shown quoted above, and that is the CPF9999. But that message *can be monitored*; and there are advantages in allowing for the *FC to occur, in that the extra features Default Program To Call (DFTPGM) and Data To Be Dumped (DMPLST) of Message Handler (MH) as attributes defined in the Message Description (MSGD) [in this case, of the msg JVA0122] would be activated.

So apparently what was not shown in the OP, i.e. the inquiry logged in response to the *FC, is what /that/ "cannot monitor for".? And indeed, only /exception/ type messages [i.e. *STATUS, *NOTIFY, and *ESCAPE] can be monitored with the Monitor Message (MONMSG). Such an inquiry would be the side effect of having failed to monitor for a condition for which the effect was the Function Check (*FC); i.e. the effect being that the /default exception handler/ of the HLL would have been invoked, per lack of the user-code having included a monitor [and optional handler].

so I added a global CPF0000 at the top of the CLP and it still went
to message wait. How can I monitor for JAVA errors within the CL that
starts the BCI?


Ah... that reference to a "Message Wait" (MSGW) status implies the effect for what was not included in the OP; i.e. that there was a wait on a reply from an inquiry.

However, the global monitor for CPF0000 *should have prevented* the *FC from invoking the language's default handler. I would be concerned if what is expressed just above is accurate; i.e. that the failed request "still went to message wait" implies an apparent defect. Or implies that the MONMSG was not really coded as the first /statement/ of the CLP. Noting however, the CPF9999 would *still appear* [and the MH would still invoke the /unmonitored exception/ capabilities], but there should have been no inquiry message [because the default handler should not have been invoked].

If the global handler is indeed verified to be non-functional, then at what release\cumulative, and could the program source be shared for review and test by someone at the same release to test for the same improper effect?


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.