Simon Coulter wrote:
If they wrote both the caller and the receiver then it is their
problem. It's a programming defect.
They wrote both.
The vendors previous release ran on V5R1 and then on V5R3. When the
current release was installed on V5R3 the problems appeared.
Unfortunately the vendor (JDA) has a very very stong 'damn the
torpedoes' approach to error handling. They trap virtually every error,
erase all the traces and simply fail the job. We get almost no
opportunity to take a dump or get a joblog.
Interesting too that their previous
release did not exibit this issue but the current one does. We seem to
remember the programs were CL before and CLLE now. Shouldn't matter of
course but it does seem to matter.
CL programs and CLLE programs are created via different compilers so it
is reasonable to expect that they handle storage differently. It is
also possible that the behavioural difference is due simply to
different releases of OS/400. For example; I had one problem where my
code was walking off the end of a variable and writing data over
unallocated storage. On 440 this worked without a problem but crashed
on 510. All this means is that the storage I trashed was unused on 440.
In both cases I still had a programming defect to correct. It could be
that the previous program just happened to have blanks in storage after
the 1 byte value but on 530 it has other variable data.